diff --git a/openspec/changes/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/tasks.md b/openspec/changes/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/tasks.md index 169cf0e..6bd5fcd 100644 --- a/openspec/changes/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/tasks.md +++ b/openspec/changes/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/tasks.md @@ -20,19 +20,19 @@ This change is complete only when **all** of the following are true: - [x] 2.1 Create an execution-ready plan workspace under `openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/`. - [x] 2.2 Replace generic role task scaffolds with concrete lanes for planner, architect, critic, executor, writer, and verifier. -- [ ] 2.3 Fold any later architect/critic review back into the plan before code edits start. +- [x] 2.3 Fold the architecture/critique conclusions back into the implementation lane: keep mirrored sources, bundle `icon.png`, and skip runtime rewrites because the requested state-group/change/lock behavior already ships. ## 3. Implementation -- [ ] 3.1 Package a branded extension icon using the existing repo `logo.png` and wire it into the installed extension manifest. -- [ ] 3.2 Audit the current Active Agents code/specs against the requested runtime brief and only land still-missing deltas. -- [ ] 3.3 Keep `vscode/guardex-active-agents/*`, `templates/vscode/guardex-active-agents/*`, docs, and focused tests aligned. +- [x] 3.1 Package a branded extension icon using the existing repo `logo.png` and wire it into the installed extension manifest. +- [x] 3.2 Audit the current Active Agents code/specs against the requested runtime brief and land only the still-missing delta. Result: no `extension.js` or `session-schema.js` changes were needed. +- [x] 3.3 Keep `vscode/guardex-active-agents/*`, `templates/vscode/guardex-active-agents/*`, docs, and focused tests aligned. ## 4. Verification -- [ ] 4.1 Run focused extension/install coverage, including `node --test test/vscode-active-agents-session-state.test.js`. -- [ ] 4.2 Run `openspec validate agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05 --type change --strict`. -- [ ] 4.3 Run `openspec validate --specs`. +- [x] 4.1 Run focused extension/install coverage, including `node --test test/vscode-active-agents-session-state.test.js`. +- [x] 4.2 Run `openspec validate agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05 --type change --strict`. +- [x] 4.3 Run `openspec validate --specs` (`No items found to validate`) and a manual install smoke check proving `icon.png` lands in the installed extension payload. ## 5. Cleanup (mandatory; run before claiming completion) diff --git a/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/architect/tasks.md b/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/architect/tasks.md index 591a7ad..20618de 100644 --- a/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/architect/tasks.md +++ b/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/architect/tasks.md @@ -2,28 +2,28 @@ ## 1. Spec -- [ ] 1.1 Decide whether this lane keeps `vscode/guardex-active-agents/` and `templates/vscode/guardex-active-agents/` mirrored or intentionally collapses them to one canonical source. -- [ ] 1.2 Lock the packaged-icon strategy: committed asset copy inside the extension tree versus any generated/install-time alternative. +- [x] 1.1 Keep `vscode/guardex-active-agents/` and `templates/vscode/guardex-active-agents/` mirrored for this lane; do not widen scope into source-tree canonicalization. +- [x] 1.2 Lock the packaged-icon strategy to a committed `icon.png` inside each extension tree, derived from the existing repo `logo.png`. ## 2. Tests -- [ ] 2.1 Define compatibility checks for VS Code manifest `icon` metadata, installer payload copying, and mirrored-source parity. -- [ ] 2.2 Validate that any runtime follow-up preserves grouped `ACTIVE AGENTS` / `CHANGES`, lock-aware rows, and `AGENT.lock` fallback behavior. +- [x] 2.1 Define compatibility checks for VS Code manifest `icon` metadata, installer payload copying, and mirrored-source parity. +- [x] 2.2 Validate that the runtime follow-up preserves grouped `ACTIVE AGENTS` / `CHANGES`, lock-aware rows, and `AGENT.lock` fallback behavior by leaving `extension.js` and `session-schema.js` untouched. ## 3. Implementation -- [ ] 3.1 Compare the viable options: in-place patch, source-tree canonicalization, or installer-time asset injection. -- [ ] 3.2 Record the chosen architecture and guardrails in `planner/plan.md`. -- [ ] 3.3 Publish architecture sign-off notes for downstream execution. +- [x] 3.1 Compare the viable options: in-place patch, source-tree canonicalization, or installer-time asset injection. +- [x] 3.2 Record the chosen architecture and guardrails in `planner/plan.md`. +- [x] 3.3 Publish architecture sign-off notes through the phase board and implementation notes. ## 4. Checkpoints -- [ ] [A1] READY - Architecture review checkpoint +- [x] [A1] READY - Architecture review checkpoint ## 5. Collaboration -- [ ] 5.1 Owner recorded this lane before edits. -- [ ] 5.2 Record joined agents / handoffs, or mark `N/A` when solo. +- [x] 5.1 Owner recorded this lane before edits. +- [x] 5.2 N/A - solo lane. ## 6. Cleanup diff --git a/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/critic/tasks.md b/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/critic/tasks.md index 1be34a7..8d12254 100644 --- a/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/critic/tasks.md +++ b/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/critic/tasks.md @@ -2,28 +2,28 @@ ## 1. Spec -- [ ] 1.1 Validate that the plan stays delta-based and does not reopen already-landed Active Agents features without evidence. -- [ ] 1.2 Validate that risks, consequences, and mitigations are explicit for asset packaging, mirrored sources, and finish-flow cleanup. +- [x] 1.1 Validate that the plan stays delta-based and does not reopen already-landed Active Agents features without evidence. +- [x] 1.2 Validate that risks, consequences, and mitigations are explicit for asset packaging, mirrored sources, and finish-flow cleanup. ## 2. Tests -- [ ] 2.1 Validate that every acceptance criterion maps to a concrete proof surface: installed asset, focused tests, OpenSpec validation, or merge evidence. -- [ ] 2.2 Validate that the verification steps are concrete and reproducible from the sandbox worktree. +- [x] 2.1 Validate that every acceptance criterion maps to a concrete proof surface: installed asset, focused tests, OpenSpec validation, or merge evidence. +- [x] 2.2 Validate that the verification steps are concrete and reproducible from the sandbox worktree. ## 3. Implementation -- [ ] 3.1 Produce a verdict (`APPROVE`, `ITERATE`, or `REJECT`) on the plan and call out any unnecessary runtime work. -- [ ] 3.2 Confirm revised drafts resolve prior findings before approval. -- [ ] 3.3 Publish final quality/risk sign-off notes. +- [x] 3.1 Produce a verdict (`APPROVE`) on the plan and call out unnecessary runtime work: no provider/session rewrite was needed. +- [x] 3.2 Confirm revised drafts resolve prior findings before approval. +- [x] 3.3 Publish final quality/risk sign-off notes through the phase board and implementation notes. ## 4. Checkpoints -- [ ] [C1] READY - Quality gate checkpoint +- [x] [C1] READY - Quality gate checkpoint ## 5. Collaboration -- [ ] 5.1 Owner recorded this lane before edits. -- [ ] 5.2 Record joined agents / handoffs, or mark `N/A` when solo. +- [x] 5.1 Owner recorded this lane before edits. +- [x] 5.2 N/A - solo lane. ## 6. Cleanup diff --git a/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/executor/tasks.md b/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/executor/tasks.md index 149858a..8c48a7f 100644 --- a/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/executor/tasks.md +++ b/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/executor/tasks.md @@ -2,28 +2,28 @@ ## 1. Spec -- [ ] 1.1 Audit the current extension against the requested brief and mark which behaviors already ship before editing code. -- [ ] 1.2 Freeze the touched-file list before coding starts: `logo.png`, extension asset path(s), `package.json`, installer/tests/docs, and only the runtime files that remain missing after audit. +- [x] 1.1 Audit the current extension against the requested brief and mark which behaviors already ship before editing code. +- [x] 1.2 Freeze the touched-file list before coding starts: derived `icon.png`, `package.json`, mirrored READMEs, focused tests, and OpenSpec task boards. ## 2. Tests -- [ ] 2.1 Add or update focused tests for the packaged icon asset and any runtime delta that survives the audit. -- [ ] 2.2 Define the smoke path: local install, installed payload inspection, and focused Node test execution. +- [x] 2.1 Add or update focused tests for the packaged icon asset and any runtime delta that survives the audit. +- [x] 2.2 Define the smoke path: local install, installed payload inspection, and focused Node test execution. ## 3. Implementation -- [ ] 3.1 Ship the branded icon lane first. -- [ ] 3.2 Apply runtime/provider changes only for missing deltas proven by the audit. -- [ ] 3.3 Sync mirrored sources, docs, and focused verification evidence before handoff. +- [x] 3.1 Ship the branded icon lane first. +- [x] 3.2 Apply runtime/provider changes only for missing deltas proven by the audit. Result: no runtime/provider code changes were necessary. +- [x] 3.3 Sync mirrored sources, docs, and focused verification evidence before handoff. ## 4. Checkpoints -- [ ] [E1] READY - Execution start checkpoint +- [x] [E1] READY - Execution start checkpoint ## 5. Collaboration -- [ ] 5.1 Owner recorded this lane before edits. -- [ ] 5.2 Record joined agents / handoffs, or mark `N/A` when solo. +- [x] 5.1 Owner recorded this lane before edits. +- [x] 5.2 N/A - solo lane. ## 6. Cleanup diff --git a/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/phases.md b/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/phases.md index 636fe2a..ed50b03 100644 --- a/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/phases.md +++ b/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/phases.md @@ -14,22 +14,22 @@ One phase is intended to fit into a single Codex or Claude session task. - checkpoints: P1 - summary: Confirm the real gap list: root `logo.png` exists, installer copies only extension folders, and grouped state/lock fallback behavior already ships. -- [ ] [PH02] Decide icon packaging and source-of-truth rules +- [x] [PH02] Decide icon packaging and source-of-truth rules - session: codex - checkpoints: A1, C1 - - summary: Choose whether to keep mirrored `vscode/` + `templates/` sources or collapse them, and lock the icon-asset strategy. + - summary: Keep mirrored `vscode/` + `templates/` sources for now and ship a bundled `icon.png` inside each installable extension tree. -- [ ] [PH03] Ship branding plus only the missing runtime delta +- [x] [PH03] Ship branding plus only the missing runtime delta - session: codex - checkpoints: E1 - - summary: Add the branded icon first, then touch `extension.js` or `session-schema.js` only if the audit proves a requested runtime behavior is still absent. + - summary: Added the branded icon and manifest wiring; the runtime audit found no missing `extension.js` or `session-schema.js` behavior to patch. -- [ ] [PH04] Refresh docs and focused regression coverage +- [x] [PH04] Refresh docs and focused regression coverage - session: codex - checkpoints: W1, V1 - - summary: Update install/docs language, add payload/runtime tests, and collect operator-facing evidence. + - summary: Synced README copy, extended the install payload test, and verified the bundled icon via both focused tests and a manual install smoke check. -- [ ] [PH05] Validate and finish the lane +- [>] [PH05] Validate and finish the lane - session: codex - checkpoints: E1, V1 - summary: Run focused verification, validate OpenSpec artifacts, then finish with `gx branch finish --via-pr --wait-for-merge --cleanup`. diff --git a/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/verifier/tasks.md b/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/verifier/tasks.md index ebaedb0..5d1c8e8 100644 --- a/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/verifier/tasks.md +++ b/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/verifier/tasks.md @@ -2,28 +2,28 @@ ## 1. Spec -- [ ] 1.1 Define the validation matrix for icon packaging, installed payload contents, preserved tree behavior, and finish evidence. -- [ ] 1.2 Validate success/failure conditions and evidence requirements before merge. +- [x] 1.1 Define the validation matrix for icon packaging, installed payload contents, preserved tree behavior, and finish evidence. +- [x] 1.2 Validate success/failure conditions and evidence requirements before merge. ## 2. Tests -- [ ] 2.1 Execute focused verification commands and collect outputs, including `node --test test/vscode-active-agents-session-state.test.js`. -- [ ] 2.2 Validate idempotency/re-run behavior for install and cleanup flows plus any runtime error-path handling touched by the change. +- [x] 2.1 Execute focused verification commands and collect outputs, including `node --test test/vscode-active-agents-session-state.test.js`. +- [x] 2.2 Validate idempotency/re-run behavior for install and cleanup flows plus any runtime error-path handling touched by the change. ## 3. Implementation -- [ ] 3.1 Verify completed work against the acceptance criteria in `specs/vscode-active-agents-extension/spec.md`. -- [ ] 3.2 Produce pass/fail findings with concrete evidence links. -- [ ] 3.3 Publish final verification sign-off or a blocker report. +- [x] 3.1 Verify completed work against the acceptance criteria in `specs/vscode-active-agents-extension/spec.md`. +- [x] 3.2 Produce pass/fail findings with concrete evidence links. +- [x] 3.3 Publish final verification sign-off through the completion handoff. ## 4. Checkpoints -- [ ] [V1] READY - Verification checkpoint +- [x] [V1] READY - Verification checkpoint ## 5. Collaboration -- [ ] 5.1 Owner recorded this lane before edits. -- [ ] 5.2 Record joined agents / handoffs, or mark `N/A` when solo. +- [x] 5.1 Owner recorded this lane before edits. +- [x] 5.2 N/A - solo lane. ## 6. Cleanup diff --git a/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/writer/tasks.md b/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/writer/tasks.md index 64a8248..a48d877 100644 --- a/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/writer/tasks.md +++ b/openspec/plan/agent-codex-vscode-active-agents-logo-and-runtime-pl-2026-04-22-16-05/writer/tasks.md @@ -2,28 +2,28 @@ ## 1. Spec -- [ ] 1.1 Validate the docs audience: operators installing the local VS Code companion and developers maintaining the duplicated extension sources. -- [ ] 1.2 Keep terminology consistent across plan artifacts, extension README copy, and any root README changes. +- [x] 1.1 Validate the docs audience: operators installing the local VS Code companion and developers maintaining the duplicated extension sources. +- [x] 1.2 Keep terminology consistent across plan artifacts, extension README copy, and any root README changes. ## 2. Tests -- [ ] 2.1 Define a docs verification checklist covering icon packaging, install commands, reload guidance, and scope notes about runtime deltas. -- [ ] 2.2 Validate command/help text examples against the actual installer and finish flow. +- [x] 2.1 Define a docs verification checklist covering icon packaging, install commands, reload guidance, and scope notes about runtime deltas. +- [x] 2.2 Validate command/help text examples against the actual installer and finish flow. ## 3. Implementation -- [ ] 3.1 Update `vscode/guardex-active-agents/README.md` and any root README/install guidance touched by the branding or runtime delta. -- [ ] 3.2 Add or refine operator examples for install, reload, and expected branded result. -- [ ] 3.3 Publish a final docs change summary with references. +- [x] 3.1 Update `vscode/guardex-active-agents/README.md` and mirrored template README for the branding change. +- [x] 3.2 Add or refine operator expectations for install, reload, and branded extension metadata. +- [x] 3.3 Publish a final docs change summary with references through the completion handoff. ## 4. Checkpoints -- [ ] [W1] READY - Docs update checkpoint +- [x] [W1] READY - Docs update checkpoint ## 5. Collaboration -- [ ] 5.1 Owner recorded this lane before edits. -- [ ] 5.2 Record joined agents / handoffs, or mark `N/A` when solo. +- [x] 5.1 Owner recorded this lane before edits. +- [x] 5.2 N/A - solo lane. ## 6. Cleanup diff --git a/templates/vscode/guardex-active-agents/README.md b/templates/vscode/guardex-active-agents/README.md index 6cfcf84..e18d22c 100644 --- a/templates/vscode/guardex-active-agents/README.md +++ b/templates/vscode/guardex-active-agents/README.md @@ -17,6 +17,7 @@ node scripts/install-vscode-active-agents-extension.js What it does: +- Bundles a local GitGuardex icon so repo installs show branded extension metadata inside VS Code. - Adds an `Active Agents` view to the Source Control container. - Renders one repo node per live Guardex workspace with grouped `ACTIVE AGENTS` and `CHANGES` sections. - Splits live sessions inside `ACTIVE AGENTS` into `BLOCKED`, `WORKING NOW`, `IDLE`, `STALLED`, and `DEAD` groups so stuck, active, and inactive lanes stand out immediately. diff --git a/templates/vscode/guardex-active-agents/icon.png b/templates/vscode/guardex-active-agents/icon.png new file mode 100644 index 0000000..f647f9c Binary files /dev/null and b/templates/vscode/guardex-active-agents/icon.png differ diff --git a/templates/vscode/guardex-active-agents/package.json b/templates/vscode/guardex-active-agents/package.json index 3b5fa18..56c3698 100644 --- a/templates/vscode/guardex-active-agents/package.json +++ b/templates/vscode/guardex-active-agents/package.json @@ -5,6 +5,7 @@ "publisher": "recodeee", "version": "0.0.1", "license": "MIT", + "icon": "icon.png", "engines": { "vscode": "^1.88.0" }, diff --git a/test/vscode-active-agents-session-state.test.js b/test/vscode-active-agents-session-state.test.js index d4258e1..6dd0077 100644 --- a/test/vscode-active-agents-session-state.test.js +++ b/test/vscode-active-agents-session-state.test.js @@ -738,9 +738,14 @@ test('install-vscode-active-agents-extension installs the current extension vers assert.equal(result.status, 0, result.stderr); const installedDir = path.join(tempExtensionsDir, 'recodeee.gitguardex-active-agents-0.0.1'); + const installedManifest = JSON.parse( + fs.readFileSync(path.join(installedDir, 'package.json'), 'utf8'), + ); assert.equal(fs.existsSync(installedDir), true); assert.equal(fs.existsSync(path.join(installedDir, 'extension.js')), true); assert.equal(fs.existsSync(path.join(installedDir, 'session-schema.js')), true); + assert.equal(installedManifest.icon, 'icon.png'); + assert.equal(fs.existsSync(path.join(installedDir, 'icon.png')), true); assert.equal(fs.existsSync(staleDir), false); assert.match(result.stdout, /Reload the VS Code window/); }); diff --git a/vscode/guardex-active-agents/README.md b/vscode/guardex-active-agents/README.md index 9d74245..df5e83c 100644 --- a/vscode/guardex-active-agents/README.md +++ b/vscode/guardex-active-agents/README.md @@ -17,6 +17,7 @@ node scripts/install-vscode-active-agents-extension.js What it does: +- Bundles a local GitGuardex icon so repo installs show branded extension metadata inside VS Code. - Adds an `Active Agents` view to the Source Control container. - Renders one repo node per live Guardex workspace with grouped `ACTIVE AGENTS` and `CHANGES` sections. - Splits live sessions inside `ACTIVE AGENTS` into `BLOCKED`, `WORKING NOW`, `IDLE`, `STALLED`, and `DEAD` groups so stuck, active, and inactive lanes stand out immediately. diff --git a/vscode/guardex-active-agents/icon.png b/vscode/guardex-active-agents/icon.png new file mode 100644 index 0000000..f647f9c Binary files /dev/null and b/vscode/guardex-active-agents/icon.png differ diff --git a/vscode/guardex-active-agents/package.json b/vscode/guardex-active-agents/package.json index 3b5fa18..56c3698 100644 --- a/vscode/guardex-active-agents/package.json +++ b/vscode/guardex-active-agents/package.json @@ -5,6 +5,7 @@ "publisher": "recodeee", "version": "0.0.1", "license": "MIT", + "icon": "icon.png", "engines": { "vscode": "^1.88.0" },