Skip to content

feat(cicd): codify persistent self-hosted runner fleets - #29

Merged
daniellam258 merged 1 commit into
mainfrom
feature/dopan-1635-platform-codify-persistent-self-hosted-runner-fleets-in
Sep 1, 2026
Merged

daniellam258 merged 1 commit into
mainfrom
feature/dopan-1635-platform-codify-persistent-self-hosted-runner-fleets-in

Conversation

@daniellam258

Copy link
Copy Markdown
Contributor

Summary

  • expand cmk:cicd trigger metadata for runner pools, capacity/concurrency, shared-host multi-project isolation, lifecycle, and cleanup
  • add a progressively disclosed persistent-fleet reference covering one-agent-per-slot capacity, project-owned pools, GitHub access boundaries, ~/actions-runners/<project> layout, slot-scoped state, trusted bootstrap, lifecycle transactions, exact Docker ownership, and staged migration
  • add behavioral evals for max-parallel semantics, shared-host isolation, and fail-closed systemd lifecycle; update the AI navigation doc

Core contract

A persistent runner agent accepts one job at a time. Capacity N therefore requires N separately configured agents/services; matrix strategy.max-parallel only caps workflow fan-out. Each pool has one project owner and exact filesystem, cache, service, routing, and cleanup boundaries. A shared Unix account/Docker daemon is explicitly operational isolation, not hostile-tenant security.

Verification

  • bash scripts/skill-lint.sh
  • git diff --cached --check
  • npm run lint
  • npm run type-check
  • npm run build

Tracking

  • DOPAN-1635
  • distilled from the implementation and operational findings in DOPAN-1620

@daniellam258
daniellam258 merged commit 85d2c6d into main Sep 1, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant