Repository navigation
v2.3.0 — The Update Era: self-updating installs + the complete GitHub-native work lifecycle
v2.3.0 — The Update Era
Installed copies of mcp-agentic-context now keep themselves current, and the GitHub-native work lifecycle is complete. Fittingly, every feature in this release was built through that lifecycle: filed as form-issues, checked out with the atomic label CAS, landed through auto-merged pull requests behind the required CI checks (issues #1, #3, #6 → PRs #4, #5, #7).
Self-update system
mcp update— one command: downloads the latest release, backs up the install, overlays the payload (manifest-tracked upstream deletions), and requires the new engine to pass its own selftest in a throwaway store — failures roll back automatically and preserve the broken payload for diagnosis.mcp update --check/--status— cached 24h,ghCLI or anonymous API, always silent offline.- Automatic notification: session-start commands (
state,autocontext,doctor) and thecollab_statusMCP tool print a one-line[UPDATE]notice — agents see new releases where they already look. - Auto-update enabled by default (
update --disable-autoto opt out): the notice authorizes agents to apply updates unprompted; when disabled, it tells them to ask first (--yesto proceed). - Junction/symlink installs update the canonical target; MCP git hooks are refreshed; the two newest backups are retained.
GitHub-native lifecycle, completed
- Atomic cross-machine claims:
work startremoves the issue'sstate:availablelabel — GitHub's one-winner primitive — so exactly one machine wins a checkout on a shared login.work verifyself-drops lost checkouts. - PR landing path:
work submitopens/adopts THE pull request (Closes #N) and arms auto-merge behind required checks;work landfinalizes — with a content-based merge-race guard born from a real lost-commit incident in production use. - Fleet self-organization:
work next [--start]picks the best non-conflicting ready issue (impact-closure overlap vs active checkouts, priority, blast radius, per-agent decorrelation). - Machine-parsable issues: the agent-task form (auto-labels
state:available) + a shared parser whose template↔parser contract is pinned by CI; openBlocked bydependencies refuse checkout. - Shared gh transport: team issue list from a 45s-TTL cache (one lease-elected refresher) + a shared rate-limit penalty gate — a 403/429 backs the whole fleet off with jitter.
collab github-setup [--apply]also enablesallow_auto_mergenow.
Hardening (every item found by the gates in real use)
- Engine-grade retry budgets for transient Windows denials, sized for loaded 100-agent machines.
- Branch creation tolerates slow/failing post-checkout hooks; gated pushes get multi-minute budgets.
- The issue-impact workflow queues instead of cancelling itself (one label batch emits two events).
- Race-smoke barrier sized for saturated machines.
Selftest: 60 checks. Suite: 150 tests. Full details in CHANGELOG.md.