• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

nogoo9 / no-crd / 28807596799
66%

Build:
DEFAULT BRANCH: main
Ran 06 Jul 2026 04:40PM UTC
Jobs 1
Files 42
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

06 Jul 2026 04:40PM UTC coverage: 66.061% (-10.1%) from 76.138%
28807596799

push

github

web-flow
feat(spawner): non-blocking upgrades & version bump to v0.12.0 (#34)

* feat(spawner): non-blocking upgrades & version bump to v0.12.0

- Implemented background asynchronous processing for running workspace upgrades (ADR-024).
- Added fallback recreate flow for RWO PVC volumes to avoid lock conflicts.
- Stored detailed failure diagnostics on old pods via `nogoo9/last-upgrade-error` annotation.
- Refactored spawner package structure, moving handlers and tests into `src/mcp/spawner/`.
- Hardened package safety by overriding vulnerable sub-dependencies (`dompurify`, `form-data`, `undici`).
- Documented the upgrade design and updated development rules.

* fix(auth): restrict raw pod writes and make E2E scripts robust

- Restricted raw pod write actions ("write") to admin and write roles in verifyAccessOrThrow.
- Restored create_pod, delete_pod, and patch_pod tools to check "write" action.
- Configured test-e2e-auth.ts cookie path verification to dynamically match the BASE_URL prefix.
- Handled race conditions in e2e-peer-discovery.sh when replica pods terminate concurrently during rollout.

* feat(ui): prevent workspace ID regeneration and prefix with user sub

- Used a React ref in SpawnWorkspaceModal to initialize the workspace ID only once, avoiding regeneration during background polling updates.
- Prefixed generated workspace IDs with the active user's username/sub to ensure uniqueness across users.
- Added client-side duplicate validation warning on form submission.

* refactor(tests): use execFileSync in upgrade E2E script

- Switched from execSync to execFileSync for runKubectl execution to avoid subshell parsing.
- Refactored ConfigMap template apply to pipe input securely using execFileSync.

* fix(spawner): resolve user variable interpolation in non-auth mode

- Allowed verifyAuthAndGetContext to attempt user identity extraction when auth is disabled.
- Updated templateUser fallback logic to preserve extracted user identity if provided in non-au... (continued)

376 of 1864 new or added lines in 13 files covered. (20.17%)

17 existing lines in 1 file now uncovered.

6762 of 10236 relevant lines covered (66.06%)

18.47 hits per line

Uncovered Changes

Lines Coverage ∆ File
621
3.12
src/mcp/spawner/handlers.ts
509
5.04
src/mcp/spawner/upgrade.ts
345
2.54
src/mcp/spawner/helpers.ts
6
80.82
-1.15% src/server/index.ts
3
84.98
-0.28% src/server/auth.ts
3
59.76
-0.04% src/server/ws-proxy.ts
1
49.44
0.0% src/mcp/pods.ts

Coverage Regressions

Lines Coverage ∆ File
17
54.32
-20.99% src/k8s/annotations.ts
Jobs
ID Job ID Ran Files Coverage
1 28807596799.1 06 Jul 2026 04:40PM UTC 42
66.06
GitHub Action Run
Source Files on build 28807596799
  • Tree
  • List 42
  • Changed 9
  • Source Changed 8
  • Coverage Changed 5
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #28807596799
  • e11acdb6 on github
  • Prev Build on main (#27473230951)
  • Next Build on main (#28876467060)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc