Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .agents/skills/atlas/assets/seed/catalog.json

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"citations":[{"path":"tests/new-sdd-workspace/knowledge-retained-upgrade-public.py","repository":"FS-GG/.github","revision":"65a71ad2eff64c0b70c97dbbc04e685a2daac2d3","sha256":"3269ebd7a8dde638184973f0bee5c3e93db66fcd58de80f639d0f937fcaa160f"},{"path":"docs/roadmaps/tsdd-knowledge-wizard.md","repository":"FS-GG/.github","revision":"65a71ad2eff64c0b70c97dbbc04e685a2daac2d3","sha256":"53fe83c3d9dd37e274e54a96d1f83525c53120d263f465598cc334f28728fbb5"},{"path":"src/FS.GG.SDD.Commands/CommandWorkflow/Drift.fs","repository":"FS-GG/FS.GG.SDD","revision":"c1fee66a34ec8d222586eb708ddff4973ad5594e","sha256":"600940003dd130de416dbd99693ee8efd7c4dd02a58bc0e412d3bcfbdd46261b"},{"path":"src/FS.GG.SDD.Commands/CommandWorkflow/HandlersUpgrade.fs","repository":"FS-GG/FS.GG.SDD","revision":"c1fee66a34ec8d222586eb708ddff4973ad5594e","sha256":"86c111d8be40d68b10e034c4c9965a9ca399545e7c5c2d4af596bef23c60d016"},{"path":"src/FS.GG.SDD.Cli/Knowledge.fs","repository":"FS-GG/FS.GG.SDD","revision":"c1fee66a34ec8d222586eb708ddff4973ad5594e","sha256":"5d46fc5c531177549689c31ca7662fdd14e098c004e9e5f87f562b66c5312cee"},{"path":"providers/console.providers.yml","repository":"FS-GG/FS.GG.Templates","revision":"908da309c9a52490cf914c3f2d5ce1eaf1188b2e","sha256":"b6ee8c9a3c79c60cbc9f99df970a9bf7beaf8ab6869ee492dee66697800a3cf8"},{"path":"tests/new-sdd-workspace/knowledge-retained-adoption-public.py","repository":"FS-GG/.github","revision":"8eb86bf60fb8123e560d0e8c73089ba615ed8959","sha256":"86bce9ae5227d18f81cc28a2e70a08da814b33474964e4c3b4f8430a69406503"}],"conflictsWith":[],"id":"github/retained-knowledge-upgrade","kind":"lesson","recordedAt":"2026-10-23T11:07:20Z","repository":"FS-GG/.github","schema":"fsgg.atlas/1","status":"recorded","summary":"Accepted R3 (#4822, PR #4828, hosted run 39926328205): a knowledge-bearing typed console workspace created on public SDD.Cli 2.2.0 / Workspace.Template 0.19.0 upgrades in place to 2.4.0 / 0.19.3 through owner actions. The owner runs a global and a local dotnet tool update (the SDK may add rollForward:false) and copies the drop-in descriptor. SDD's own templateRePin step is inert by design (HandlersUpgrade), and doctor/upgrade leave the tool manifest and providers.yml to the owner. Knowledge search/get/history output is byte-identical between 2.2.0 and 2.4.0, and get-version recovers pre-upgrade versions. History spans the upgrade, and the 10,485,760-byte write-path and checker boundaries hold. Doctor skillDriftPaths reports divergence between the mirrored .agents and .claude copies, not edits against provenance. An owner edit applied identically to both mirrors is not drift; editing one copy flags both paths. A deleted seeded skill is reported as missing and as drift; upgrade --yes re-seeds only that skill and never overwrites owner edits (residualDrift stays true). The console and fs-gg-project-knowledge payloads are byte-identical in 0.19.0 and 0.19.3, so the template half moves identity only. Re-applying the overlay without --force refuses with exit 73. Accepted R4 (#4822, PR #4832, hosted run 39931369727, fdev acceptance 2026-10-23) covers pre-knowledge adoption. SDD.Cli 2.0.3 with the Templates 908da309 descriptor (0.13.0) scaffolds typed-sdd with no store, guide or knowledge CI. 2.0.3 refuses knowledge as unknownCommand (report on stderr, exit 1). Steps: the 0.19.3 overlay adds two CI files, and its checker refuses until initialization because the guide is missing. Global and local tool updates move to 2.4.0. The drop-in descriptor is copied; whether adoption needs that copy was not isolated. knowledge initialize then creates the guide, schema and seed, appends the ignore block after the owner .gitignore, and is idempotent. Known limits of an adopted workspace, filed as FS.GG.SDD#1123: CLAUDE.md/AGENTS.md never gain the 2.4.0 knowledge pointer (no-clobber), and doctor does not report a deleted guide, because 2.0.3 provenance omits it. Scope: console only, one Linux host, Coord stays at 0.94.0, tied to these exact public packages.","supersedes":["b83f5334b85422ac110a24286d5af7003f2fb5b0d783efe257b38a2281656422"],"tags":["tsdd-knowledge","retained-upgrade","sdd","doctor","skill-drift","workspace-template","project-knowledge","4822"],"title":"Retained Typed SDD workspaces: in-place knowledge upgrade and pre-knowledge adoption"}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"citations":[{"path":"tests/new-sdd-workspace/knowledge-rendering-routes-public.py","repository":"FS-GG/.github","revision":"3d45db23fec76d877c49b9c4f3ac24308b6d0693","sha256":"f4eb352ed9ee0fc9c4f701089a767fe22a94bb0bbfd0989e4c37882de26663c9"},{"path":"docs/roadmaps/tsdd-knowledge-wizard.md","repository":"FS-GG/.github","revision":"3d45db23fec76d877c49b9c4f3ac24308b6d0693","sha256":"82aceb0f1711f68d41ca12ee10293b09126751aedfa2d27e320292568a6b8797"},{"path":"providers/rendering.providers.yml","repository":"FS-GG/FS.GG.Templates","revision":"24f3c30790b401d4bc435a1b1c07c07ecfd30d76","sha256":"ff49732aa5baa4e1b507784c3135ea092b0973c4c4cb3a75197dae0a7a417fc2"},{"path":"docs/roadmaps/tsdd-knowledge-receivers.md","repository":"FS-GG/FS.GG.Templates","revision":"24f3c30790b401d4bc435a1b1c07c07ecfd30d76","sha256":"206789558f60b6a9b8a623c92ff465c94cfd77603d1c549f0ba3ea6834b10805"}],"conflictsWith":[],"id":"github/rendering-knowledge-routes","kind":"contract","recordedAt":"2026-10-23T11:07:20Z","repository":"FS-GG/.github","schema":"fsgg.atlas/1","status":"recorded","summary":"Accepted (#4822, PR #4836, hosted run 39942183045, fdev acceptance 2026-10-23) on public SDD.Cli 2.4.0, original FS.GG.UI.Template 0.32.3 (Rendering descriptor at Templates 24f3c307) and the Workspace.Template 0.19.3 fs-gg-project-knowledge overlay, for app and game profiles. Provider typed: fsgg-sdd scaffold --provider rendering --param lifecycle=typed-sdd records typed-sdd and creates the canonical store and capture guide but no knowledge CI, because the original Rendering payload carries none. The caller must compose dotnet new fs-gg-project-knowledge --lifecycle typed-sdd --output . without --force; it adds exactly .github/workflows/project-knowledge.yml and scripts/check-project-knowledge.py. With an owner-authored knowledge workflow present it refuses with exit 73 and changes nothing. Provider-only typed creation therefore leaves no knowledge CI; the gap is filed as a Templates follow-up. Raw typed: dotnet new fs-gg-ui --lifecycle typed-sdd creates no .fsgg/ or .config/ and no knowledge. The caller adds the overlay, then a local tool manifest under .config/ pinning SDD 2.4.0 (`dotnet new tool-manifest --output .config`; newer SDKs otherwise write it at the root). Until knowledge is initialized, the checker refuses with 'Missing .fsgg/knowledge-guide.md'. Explicit knowledge initialize is idempotent. The result is standalone knowledge readiness, not a Typed SDD workspace: lifecycle-scaffolding-pending.md remains. Omitted lifecycle gives the sdd lane on both routes: the descriptor default for provider, the packed template default for raw. There is no store and no knowledge CI, and the overlay emits nothing without --lifecycle or with --lifecycle sdd. Provider sdd rows still contain .fsgg/knowledge-guide.md, which SDD init seeds for every lifecycle; the guide alone does not make a project knowledge-ready. The effective lane is readable from the created product's lifecycle-scaffolding-pending.md heading: '# Typed SDD lifecycle scaffolding pending' or '# Lifecycle scaffolding pending (sdd lane)'. A flag or packed default is not evidence of it. Typed rows pass the full knowledge contract and the 10,485,760-byte checker boundary while preserving product bytes. Limits: one Linux host; Coord stays at 0.94.0; the run has no retry, and a transient dotnet tool restore hang can fail it.","supersedes":[],"tags":["tsdd-knowledge","rendering","ui-template","provider","raw-template","project-knowledge","overlay","4822"],"title":"External Rendering raw and provider routes to project knowledge"}
2 changes: 1 addition & 1 deletion .claude/skills/atlas/assets/seed/catalog.json

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"citations":[{"path":"tests/new-sdd-workspace/knowledge-retained-upgrade-public.py","repository":"FS-GG/.github","revision":"65a71ad2eff64c0b70c97dbbc04e685a2daac2d3","sha256":"3269ebd7a8dde638184973f0bee5c3e93db66fcd58de80f639d0f937fcaa160f"},{"path":"docs/roadmaps/tsdd-knowledge-wizard.md","repository":"FS-GG/.github","revision":"65a71ad2eff64c0b70c97dbbc04e685a2daac2d3","sha256":"53fe83c3d9dd37e274e54a96d1f83525c53120d263f465598cc334f28728fbb5"},{"path":"src/FS.GG.SDD.Commands/CommandWorkflow/Drift.fs","repository":"FS-GG/FS.GG.SDD","revision":"c1fee66a34ec8d222586eb708ddff4973ad5594e","sha256":"600940003dd130de416dbd99693ee8efd7c4dd02a58bc0e412d3bcfbdd46261b"},{"path":"src/FS.GG.SDD.Commands/CommandWorkflow/HandlersUpgrade.fs","repository":"FS-GG/FS.GG.SDD","revision":"c1fee66a34ec8d222586eb708ddff4973ad5594e","sha256":"86c111d8be40d68b10e034c4c9965a9ca399545e7c5c2d4af596bef23c60d016"},{"path":"src/FS.GG.SDD.Cli/Knowledge.fs","repository":"FS-GG/FS.GG.SDD","revision":"c1fee66a34ec8d222586eb708ddff4973ad5594e","sha256":"5d46fc5c531177549689c31ca7662fdd14e098c004e9e5f87f562b66c5312cee"},{"path":"providers/console.providers.yml","repository":"FS-GG/FS.GG.Templates","revision":"908da309c9a52490cf914c3f2d5ce1eaf1188b2e","sha256":"b6ee8c9a3c79c60cbc9f99df970a9bf7beaf8ab6869ee492dee66697800a3cf8"},{"path":"tests/new-sdd-workspace/knowledge-retained-adoption-public.py","repository":"FS-GG/.github","revision":"8eb86bf60fb8123e560d0e8c73089ba615ed8959","sha256":"86bce9ae5227d18f81cc28a2e70a08da814b33474964e4c3b4f8430a69406503"}],"conflictsWith":[],"id":"github/retained-knowledge-upgrade","kind":"lesson","recordedAt":"2026-10-23T11:07:20Z","repository":"FS-GG/.github","schema":"fsgg.atlas/1","status":"recorded","summary":"Accepted R3 (#4822, PR #4828, hosted run 39926328205): a knowledge-bearing typed console workspace created on public SDD.Cli 2.2.0 / Workspace.Template 0.19.0 upgrades in place to 2.4.0 / 0.19.3 through owner actions. The owner runs a global and a local dotnet tool update (the SDK may add rollForward:false) and copies the drop-in descriptor. SDD's own templateRePin step is inert by design (HandlersUpgrade), and doctor/upgrade leave the tool manifest and providers.yml to the owner. Knowledge search/get/history output is byte-identical between 2.2.0 and 2.4.0, and get-version recovers pre-upgrade versions. History spans the upgrade, and the 10,485,760-byte write-path and checker boundaries hold. Doctor skillDriftPaths reports divergence between the mirrored .agents and .claude copies, not edits against provenance. An owner edit applied identically to both mirrors is not drift; editing one copy flags both paths. A deleted seeded skill is reported as missing and as drift; upgrade --yes re-seeds only that skill and never overwrites owner edits (residualDrift stays true). The console and fs-gg-project-knowledge payloads are byte-identical in 0.19.0 and 0.19.3, so the template half moves identity only. Re-applying the overlay without --force refuses with exit 73. Accepted R4 (#4822, PR #4832, hosted run 39931369727, fdev acceptance 2026-10-23) covers pre-knowledge adoption. SDD.Cli 2.0.3 with the Templates 908da309 descriptor (0.13.0) scaffolds typed-sdd with no store, guide or knowledge CI. 2.0.3 refuses knowledge as unknownCommand (report on stderr, exit 1). Steps: the 0.19.3 overlay adds two CI files, and its checker refuses until initialization because the guide is missing. Global and local tool updates move to 2.4.0. The drop-in descriptor is copied; whether adoption needs that copy was not isolated. knowledge initialize then creates the guide, schema and seed, appends the ignore block after the owner .gitignore, and is idempotent. Known limits of an adopted workspace, filed as FS.GG.SDD#1123: CLAUDE.md/AGENTS.md never gain the 2.4.0 knowledge pointer (no-clobber), and doctor does not report a deleted guide, because 2.0.3 provenance omits it. Scope: console only, one Linux host, Coord stays at 0.94.0, tied to these exact public packages.","supersedes":["b83f5334b85422ac110a24286d5af7003f2fb5b0d783efe257b38a2281656422"],"tags":["tsdd-knowledge","retained-upgrade","sdd","doctor","skill-drift","workspace-template","project-knowledge","4822"],"title":"Retained Typed SDD workspaces: in-place knowledge upgrade and pre-knowledge adoption"}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"citations":[{"path":"tests/new-sdd-workspace/knowledge-rendering-routes-public.py","repository":"FS-GG/.github","revision":"3d45db23fec76d877c49b9c4f3ac24308b6d0693","sha256":"f4eb352ed9ee0fc9c4f701089a767fe22a94bb0bbfd0989e4c37882de26663c9"},{"path":"docs/roadmaps/tsdd-knowledge-wizard.md","repository":"FS-GG/.github","revision":"3d45db23fec76d877c49b9c4f3ac24308b6d0693","sha256":"82aceb0f1711f68d41ca12ee10293b09126751aedfa2d27e320292568a6b8797"},{"path":"providers/rendering.providers.yml","repository":"FS-GG/FS.GG.Templates","revision":"24f3c30790b401d4bc435a1b1c07c07ecfd30d76","sha256":"ff49732aa5baa4e1b507784c3135ea092b0973c4c4cb3a75197dae0a7a417fc2"},{"path":"docs/roadmaps/tsdd-knowledge-receivers.md","repository":"FS-GG/FS.GG.Templates","revision":"24f3c30790b401d4bc435a1b1c07c07ecfd30d76","sha256":"206789558f60b6a9b8a623c92ff465c94cfd77603d1c549f0ba3ea6834b10805"}],"conflictsWith":[],"id":"github/rendering-knowledge-routes","kind":"contract","recordedAt":"2026-10-23T11:07:20Z","repository":"FS-GG/.github","schema":"fsgg.atlas/1","status":"recorded","summary":"Accepted (#4822, PR #4836, hosted run 39942183045, fdev acceptance 2026-10-23) on public SDD.Cli 2.4.0, original FS.GG.UI.Template 0.32.3 (Rendering descriptor at Templates 24f3c307) and the Workspace.Template 0.19.3 fs-gg-project-knowledge overlay, for app and game profiles. Provider typed: fsgg-sdd scaffold --provider rendering --param lifecycle=typed-sdd records typed-sdd and creates the canonical store and capture guide but no knowledge CI, because the original Rendering payload carries none. The caller must compose dotnet new fs-gg-project-knowledge --lifecycle typed-sdd --output . without --force; it adds exactly .github/workflows/project-knowledge.yml and scripts/check-project-knowledge.py. With an owner-authored knowledge workflow present it refuses with exit 73 and changes nothing. Provider-only typed creation therefore leaves no knowledge CI; the gap is filed as a Templates follow-up. Raw typed: dotnet new fs-gg-ui --lifecycle typed-sdd creates no .fsgg/ or .config/ and no knowledge. The caller adds the overlay, then a local tool manifest under .config/ pinning SDD 2.4.0 (`dotnet new tool-manifest --output .config`; newer SDKs otherwise write it at the root). Until knowledge is initialized, the checker refuses with 'Missing .fsgg/knowledge-guide.md'. Explicit knowledge initialize is idempotent. The result is standalone knowledge readiness, not a Typed SDD workspace: lifecycle-scaffolding-pending.md remains. Omitted lifecycle gives the sdd lane on both routes: the descriptor default for provider, the packed template default for raw. There is no store and no knowledge CI, and the overlay emits nothing without --lifecycle or with --lifecycle sdd. Provider sdd rows still contain .fsgg/knowledge-guide.md, which SDD init seeds for every lifecycle; the guide alone does not make a project knowledge-ready. The effective lane is readable from the created product's lifecycle-scaffolding-pending.md heading: '# Typed SDD lifecycle scaffolding pending' or '# Lifecycle scaffolding pending (sdd lane)'. A flag or packed default is not evidence of it. Typed rows pass the full knowledge contract and the 10,485,760-byte checker boundary while preserving product bytes. Limits: one Linux host; Coord stays at 0.94.0; the run has no retry, and a transient dotnet tool restore hang can fail it.","supersedes":[],"tags":["tsdd-knowledge","rendering","ui-template","provider","raw-template","project-knowledge","overlay","4822"],"title":"External Rendering raw and provider routes to project knowledge"}
2 changes: 1 addition & 1 deletion docs/atlas/catalog.json

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"citations":[{"path":"tests/new-sdd-workspace/knowledge-retained-upgrade-public.py","repository":"FS-GG/.github","revision":"65a71ad2eff64c0b70c97dbbc04e685a2daac2d3","sha256":"3269ebd7a8dde638184973f0bee5c3e93db66fcd58de80f639d0f937fcaa160f"},{"path":"docs/roadmaps/tsdd-knowledge-wizard.md","repository":"FS-GG/.github","revision":"65a71ad2eff64c0b70c97dbbc04e685a2daac2d3","sha256":"53fe83c3d9dd37e274e54a96d1f83525c53120d263f465598cc334f28728fbb5"},{"path":"src/FS.GG.SDD.Commands/CommandWorkflow/Drift.fs","repository":"FS-GG/FS.GG.SDD","revision":"c1fee66a34ec8d222586eb708ddff4973ad5594e","sha256":"600940003dd130de416dbd99693ee8efd7c4dd02a58bc0e412d3bcfbdd46261b"},{"path":"src/FS.GG.SDD.Commands/CommandWorkflow/HandlersUpgrade.fs","repository":"FS-GG/FS.GG.SDD","revision":"c1fee66a34ec8d222586eb708ddff4973ad5594e","sha256":"86c111d8be40d68b10e034c4c9965a9ca399545e7c5c2d4af596bef23c60d016"},{"path":"src/FS.GG.SDD.Cli/Knowledge.fs","repository":"FS-GG/FS.GG.SDD","revision":"c1fee66a34ec8d222586eb708ddff4973ad5594e","sha256":"5d46fc5c531177549689c31ca7662fdd14e098c004e9e5f87f562b66c5312cee"},{"path":"providers/console.providers.yml","repository":"FS-GG/FS.GG.Templates","revision":"908da309c9a52490cf914c3f2d5ce1eaf1188b2e","sha256":"b6ee8c9a3c79c60cbc9f99df970a9bf7beaf8ab6869ee492dee66697800a3cf8"},{"path":"tests/new-sdd-workspace/knowledge-retained-adoption-public.py","repository":"FS-GG/.github","revision":"8eb86bf60fb8123e560d0e8c73089ba615ed8959","sha256":"86bce9ae5227d18f81cc28a2e70a08da814b33474964e4c3b4f8430a69406503"}],"conflictsWith":[],"id":"github/retained-knowledge-upgrade","kind":"lesson","recordedAt":"2026-10-23T11:07:20Z","repository":"FS-GG/.github","schema":"fsgg.atlas/1","status":"recorded","summary":"Accepted R3 (#4822, PR #4828, hosted run 39926328205): a knowledge-bearing typed console workspace created on public SDD.Cli 2.2.0 / Workspace.Template 0.19.0 upgrades in place to 2.4.0 / 0.19.3 through owner actions. The owner runs a global and a local dotnet tool update (the SDK may add rollForward:false) and copies the drop-in descriptor. SDD's own templateRePin step is inert by design (HandlersUpgrade), and doctor/upgrade leave the tool manifest and providers.yml to the owner. Knowledge search/get/history output is byte-identical between 2.2.0 and 2.4.0, and get-version recovers pre-upgrade versions. History spans the upgrade, and the 10,485,760-byte write-path and checker boundaries hold. Doctor skillDriftPaths reports divergence between the mirrored .agents and .claude copies, not edits against provenance. An owner edit applied identically to both mirrors is not drift; editing one copy flags both paths. A deleted seeded skill is reported as missing and as drift; upgrade --yes re-seeds only that skill and never overwrites owner edits (residualDrift stays true). The console and fs-gg-project-knowledge payloads are byte-identical in 0.19.0 and 0.19.3, so the template half moves identity only. Re-applying the overlay without --force refuses with exit 73. Accepted R4 (#4822, PR #4832, hosted run 39931369727, fdev acceptance 2026-10-23) covers pre-knowledge adoption. SDD.Cli 2.0.3 with the Templates 908da309 descriptor (0.13.0) scaffolds typed-sdd with no store, guide or knowledge CI. 2.0.3 refuses knowledge as unknownCommand (report on stderr, exit 1). Steps: the 0.19.3 overlay adds two CI files, and its checker refuses until initialization because the guide is missing. Global and local tool updates move to 2.4.0. The drop-in descriptor is copied; whether adoption needs that copy was not isolated. knowledge initialize then creates the guide, schema and seed, appends the ignore block after the owner .gitignore, and is idempotent. Known limits of an adopted workspace, filed as FS.GG.SDD#1123: CLAUDE.md/AGENTS.md never gain the 2.4.0 knowledge pointer (no-clobber), and doctor does not report a deleted guide, because 2.0.3 provenance omits it. Scope: console only, one Linux host, Coord stays at 0.94.0, tied to these exact public packages.","supersedes":["b83f5334b85422ac110a24286d5af7003f2fb5b0d783efe257b38a2281656422"],"tags":["tsdd-knowledge","retained-upgrade","sdd","doctor","skill-drift","workspace-template","project-knowledge","4822"],"title":"Retained Typed SDD workspaces: in-place knowledge upgrade and pre-knowledge adoption"}
Loading
Loading