Part of #239.
Goal
Port phronesis/editors/vscode/src/extension.ts (54 lines) to extension.affine, validating the AS→VSCode-extension build pipeline end-to-end.
Why first
- Smallest VSCode extension in backlog.
- All required surface confirmed bound:
Vscode::getConfiguration, workspaceConfigGetString, createFileSystemWatcher, VscodeLanguageClient::newLanguageClient/Start/Stop.
- Precedent exists:
affinescript/editors/vscode/src/extension.affine (dogfood) + standards/.../rsr-certifier/extensions/vscode/ (rsr-certifier port).
- Validates host-shim (
packages/affine-vscode/mod.js) integration.
Acceptance
extension.affine compiles via AS toolchain
extension.ts removed once .affine builds the same artefact path the VSCode extension manifest points to
- README + deno.json + package.json updated for AS toolchain
- Per-PR ownership gate passes:
gh repo view hyperpolymath/phronesis --json owner,isFork,parent → owner=hyperpolymath, isFork=false (verified 2026-05-28)
Sequencing
Blocks: nothing downstream depends on this directly, but it's the canonical proof-of-concept that step 2 leans on for confidence.
Part of #239.
Goal
Port
phronesis/editors/vscode/src/extension.ts(54 lines) toextension.affine, validating the AS→VSCode-extension build pipeline end-to-end.Why first
Vscode::getConfiguration,workspaceConfigGetString,createFileSystemWatcher,VscodeLanguageClient::newLanguageClient/Start/Stop.affinescript/editors/vscode/src/extension.affine(dogfood) +standards/.../rsr-certifier/extensions/vscode/(rsr-certifier port).packages/affine-vscode/mod.js) integration.Acceptance
extension.affinecompiles via AS toolchainextension.tsremoved once.affinebuilds the same artefact path the VSCode extension manifest points togh repo view hyperpolymath/phronesis --json owner,isFork,parent→owner=hyperpolymath, isFork=false(verified 2026-05-28)Sequencing
Blocks: nothing downstream depends on this directly, but it's the canonical proof-of-concept that step 2 leans on for confidence.