feat: add session-scoped artifact lifecycle across CLI and VS Code - #826
feat: add session-scoped artifact lifecycle across CLI and VS Code#8262409324124 wants to merge 12 commits into
Conversation
|
Hey @2409324124 - thanks for this - really solid work. Atomic writes at 0600, session-ID path validation, and DI on every new module so the tests use real temp dirs is exactly the standard I want to see. The A few things I'd want resolved before merge: 1. The walkthrough nudge is too eager. Related: 2. 3. Artifact dirs leak for non-persisted sessions. Smaller ones:
Also: the three new |
|
@will-lamerton Thanks again for the detailed review. I’ve pushed the final follow-up in The original review items have been addressed. During real local-model E2E testing, I also found one related session-title issue: autosave could derive the title first from the internal walkthrough fallback and then from the synthetic Validation completed:
Model compatibility note: during repeated runs, |
|
Hey @2409324124, could you please resolve the merge conflicts when you get a chance? |
|
Hi @2409324124, thanks for this PR! It looks like a codeowner has left feedback Whenever you get a chance, could you take a look at the open comments? |
|
@akramcodez Thanks for the reminder! I’ve merged the latest A few of them involved overlapping ACP / VS Code cancellation and queued-tool changes, so I reconciled the behavior from both sides and added regression coverage rather than just choosing one version. The PR is mergeable again, and the latest CI run has been triggered. Thanks! |
Description
Adds a complete session-scoped artifact lifecycle across the CLI and VS Code extension, following the planning, task tracking, and completion flow requested in #805.
The implementation:
implementation_plan.md,task.md, andwalkthrough.mdin isolated session artifact directoriestasks.jsonwhile exposing only the three user-facing lifecycle artifactswrite_walkthrough, with structured files-changed, truthful test results (or an explicit untested reason), and verification steps.nanocoder/tasks.jsonin the target projectCloses #805.
Type of Change
Changeset
pnpm changeset) describing this change for the changelogTesting
Automated Tests
.spec.ts/tsxfilespnpm test:allcompletes successfully)Validated successfully with:
pnpm run test:typespnpm run format:checkpnpm run test:lintpnpm run test:knippnpm run test:auditpnpm run buildpnpm --dir plugins/vscode run buildnode --check plugins/vscode/media/chat-panel.jspnpm exec tsc -p plugins/vscode/tsconfig.json --noEmitpnpm changeset status --since=origin/mainThe complete AVA command was also run. Its assertions, including the CLI integration group, passed, but the repository's existing long-lived handle issue still makes the command time out while exiting
client-factory.spec.tsandai-sdk-client.spec.ts; the focused changed-area suites above exit cleanly.Manual Testing
Real Ollama CLI validation was completed locally:
qwen3-coder:30b(30.5B, Q4_K_M), using a 32K context and fully GPU-offloaded (49/49 layers) on an RTX 3090/exitautosave →--continuelifecycle run preserved all 22 messages, including the approved-plan and internal-walkthrough protocol messages, plus both artifacts, while retaining the original user request as the persisted and resumed session titleReal CLI and VS Code Extension Host flows were tested with an inherited API-key environment (no credentials added to the repository):
.nanocoderstatenpm test, and generated a Walkthrough0600permissionsPrompt failed, a missing tool result, or an Internal errorChecklist
Screenshots
CLI artifact lifecycle
VS Code artifact lifecycle
VS Code walkthrough