# Project status Updated: 2026-10-14 (2.5 orchestration run PASS — quality gate + end-to-end run both green) ## Current phase Phase 1 done AND 2.5 done: plugin installs, loads in OpenCode v2.0.29, skills inject, package builds, `@haylan/opencode-pocock@0.1.0` published to the Gitea registry (release run 5684), install-from-registry verified, nightly workflow proven (dispatch run 5685: github.com reachable, no-change early exit), and a full manual orchestration run of the `pocock` orchestrator against a 3-ticket fixture (omniroute/qwen3.8-27b) is **PASS** — all 3 tickets built by parallel workers, reviewed, fixed, merged, clean exit, no product bugs. Remaining: 2.7 (observe a week of nightlies). ## Done - Phase 0 analysis complete: architecture, 38-skill classification matrix, decisions D1–D8, verified V2 API surface (docs + `@opencode/plugin@2.0.29` typings + live runtime). - Package scaffolded: `@haylan/opencode-pocock` (name confirmed by owner), TS ESM, prettier, `node --test` on .ts, MIT + NOTICE attributions (Matt Pocock, Dex Horthy, mcdays94, fastcrw). - `scripts/sync-upstream.ts`: pristine snapshot vendoring @49dd158 (v1.3.1, 38 skills), early exit on no-change, needs-review classification entries for new skills, previous_commit/last_diff in state for the changelog generator. - `scripts/generate.ts`: skills/ tree (verbatim, minus agents/openai.yaml), manifest.json (31 skills, autoinvoke from upstream DMI), docs/skill-mapping.md matrix between markers. - Plugin `src/index.ts` (id `haylan.pocock`): injects all manifest skills (frontmatter-stripped content, absolute package paths), opt-in `guardrails` tool hook (upstream pattern list ported), agent missing/stale warning via `.pocock-version` stamp. Fails loudly on bad options. - `src/init.ts` bin: copies agents to project/global agents dir, never clobbers modified files without --force, stamps version. - Agents (V2-native frontmatter only): `pocock` (primary orchestrator, worktree dispatch loop), `pocock-worker` (subagent, skill allow-list tdd/codebase-design/diagnosing-bugs, git/gh denies, no subagents), `pocock-reviewer` (subagent, read-only code-review axis executor). - Release pipeline: `scripts/version.ts` (changelog-driven minor bump, idempotent per upstream SHA) + `scripts/release.ts` (Gitea npm registry publish via HTTP, tag, package link; adapted from fastcrw) + CHANGELOG.md with 0.1.0 prepared. - Workflows: check.yml (PR+push), nightly.yml (sync→generate→format/check/test/build→version→ commit-back→publish+tag+link, secrets-only), smoke.yml (dispatch-only, installs opencode). - `scripts/smoke.ts` — PASS on opencode v2.0.29: plugin active, 31 skills registered (16 hidden), agents decoded with full permission arrays. Findings: docs/runtime-checks.md. - Test suite: 32 unit/integration tests green (parser, generator+real-snapshot regression, sync diff, plugin fake-ctx, init, drift gates, release/version helpers). ## Known gaps / risks - 2.5 DONE (2026-10-14): full orchestration run PASS on omniroute/qwen3.8-27b — see docs/runtime-checks.md § "2.5 orchestration run". Noted env-only quirks: skill id collision resolves `code-review` to the user's global `~/.agents/skills` copy (documented, not a plugin bug); user's codebase-memory "graph-first" rule rejected one orchestrator `glob` (recovered via `find`). Local 27b took ~63 min; reviewer subagents stream output only on completion (looked stalled, was not). No product bugs found. - 2.7: nightlies need a week of green runs before "stable" is declared; first scheduled run 2026-10-15 03:30 UTC. - Background subagents in V2 (env-gated in V1) not verified; orchestrator text works either way. - Windows-only smoke quirk: fixture temp dir deletion can lag (EPERM warning, harmless); CI is Linux. - `request.body` overlays accepted but not sent by the V2 runner — agents avoid them. - Skill id collisions with pre-existing file-based installs resolve to the file copy (silent). ## Next steps (exact) 1. ~~2.5: manual orchestration run~~ DONE 2026-10-14 (PASS, see docs/runtime-checks.md). 2. Watch nightly runs for a week (2.7); on upstream release (17 pending changesets), verify the full sync→generate→publish→commit-back cycle end-to-end. 3. Then declare stable and announce; keep classification.json current when upstream promotes in-progress skills. 4. (Optional, owner) Decide whether to fold the 2.5 agent-improvement suggestions (truncated-skill note, non-ff resume reminder) into agents/*.md — they are in the runtime-checks.md report.