@principal-ai/subsystems-react 0.26.0 → 0.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/pierre/PierreWalkthroughCodeView.d.ts +2 -1
- package/dist/pierre/PierreWalkthroughCodeView.d.ts.map +1 -1
- package/dist/pierre/PierreWalkthroughCodeView.js +8 -8
- package/dist/pierre/PierreWalkthroughCodeView.js.map +1 -1
- package/dist/stories/Subsystem/ComponentGraph/fixtures.d.ts.map +1 -1
- package/dist/stories/Subsystem/ComponentGraph/fixtures.js +2 -0
- package/dist/stories/Subsystem/ComponentGraph/fixtures.js.map +1 -1
- package/dist/subsystem/SubsystemAggregateGraph.d.ts.map +1 -1
- package/dist/subsystem/SubsystemAggregateGraph.js +3 -2
- package/dist/subsystem/SubsystemAggregateGraph.js.map +1 -1
- package/dist/subsystem/SubsystemComponentGraph.d.ts +8 -0
- package/dist/subsystem/SubsystemComponentGraph.d.ts.map +1 -1
- package/dist/subsystem/SubsystemComponentGraph.js +25 -4
- package/dist/subsystem/SubsystemComponentGraph.js.map +1 -1
- package/dist/subsystem/SubsystemFileTree.d.ts +5 -1
- package/dist/subsystem/SubsystemFileTree.d.ts.map +1 -1
- package/dist/subsystem/SubsystemFileTree.js +41 -1
- package/dist/subsystem/SubsystemFileTree.js.map +1 -1
- package/dist/subsystem/graphChrome.d.ts +27 -0
- package/dist/subsystem/graphChrome.d.ts.map +1 -0
- package/dist/subsystem/graphChrome.js +30 -0
- package/dist/subsystem/graphChrome.js.map +1 -0
- package/dist/subsystem/model.d.ts +7 -0
- package/dist/subsystem/model.d.ts.map +1 -1
- package/dist/subsystem/model.js.map +1 -1
- package/package.json +1 -1
- package/src/pierre/PierreWalkthroughCodeView.tsx +10 -9
- package/src/stories/Subsystem/ComponentGraph/fixtures.ts +2 -0
- package/src/subsystem/SubsystemAggregateGraph.tsx +5 -2
- package/src/subsystem/SubsystemComponentGraph.tsx +29 -18
- package/src/subsystem/SubsystemFileTree.tsx +42 -1
- package/src/subsystem/graphChrome.tsx +41 -0
- package/src/subsystem/model.ts +7 -0
- package/dist/stories/Subsystem/ComponentGraph/aggregateFixture.d.ts +0 -5
- package/dist/stories/Subsystem/ComponentGraph/aggregateFixture.d.ts.map +0 -1
- package/dist/stories/Subsystem/ComponentGraph/aggregateFixture.js +0 -4
- package/dist/stories/Subsystem/ComponentGraph/aggregateFixture.js.map +0 -1
- package/dist/stories/Subsystem/ComponentGraph/composedFixture.d.ts +0 -5
- package/dist/stories/Subsystem/ComponentGraph/composedFixture.d.ts.map +0 -1
- package/dist/stories/Subsystem/ComponentGraph/composedFixture.js +0 -4
- package/dist/stories/Subsystem/ComponentGraph/composedFixture.js.map +0 -1
- package/src/stories/Subsystem/ComponentGraph/AggregateGraph.stories.tsx +0 -61
- package/src/stories/Subsystem/ComponentGraph/ComposedGraph.stories.tsx +0 -73
- package/src/stories/Subsystem/ComponentGraph/aggregateFixture.ts +0 -8
- package/src/stories/Subsystem/ComponentGraph/composedFixture.ts +0 -9
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export const aggregateComponents = JSON.parse("[{\"alias\":\"process:site/web\",\"name\":\"site/web\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"3 members · 1 model\"},{\"alias\":\"process:subsystems-core/types\",\"name\":\"subsystems-core/types\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"3 members · 1 model\"},{\"alias\":\"process:external/github\",\"name\":\"external/github\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"1 member · 1 model\"},{\"alias\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"name\":\"SubsystemComponentGraph.tsx\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"1 member · 8 models\"},{\"alias\":\"process:principal-studio-cli\",\"name\":\"principal-studio-cli\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"1 member · 1 model\"},{\"alias\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"name\":\"subsystem-model-store.ts\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"6 members · 7 models\"},{\"alias\":\"process:subsystems-studio/host\",\"name\":\"subsystems-studio/host\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"44 members · 12 models\"},{\"alias\":\"process:local/disk\",\"name\":\"local/disk\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"1 member · 1 model\"},{\"alias\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelsView.tsx\",\"name\":\"SubsystemModelsView.tsx\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"2 members · 5 models\"},{\"alias\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"name\":\"SubsystemModelView.tsx\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"2 members · 6 models\"},{\"alias\":\"process:proposed/studio-gist\",\"name\":\"proposed/studio-gist\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"2 members · 1 model\"},{\"alias\":\"module:packages/subsystems-studio/src/bun/http-server.ts\",\"name\":\"http-server.ts\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"2 members · 3 models\"},{\"alias\":\"process:subsystems-studio/renderer\",\"name\":\"subsystems-studio/renderer\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"19 members · 8 models\"},{\"alias\":\"process:subsystems-react\",\"name\":\"subsystems-react\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"11 members · 3 models\"},{\"alias\":\"module:packages/subsystems-react/src/subsystem/model.ts\",\"name\":\"model.ts\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"9 members · 4 models\"},{\"alias\":\"process:subsystems-core\",\"name\":\"subsystems-core\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"4 members · 4 models\"},{\"alias\":\"process:opencode\",\"name\":\"opencode\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"2 members · 1 model\"},{\"alias\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"name\":\"verify-subsystem-component.ts\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"3 members · 4 models\"},{\"alias\":\"module:packages/subsystems-studio/src/bun/regular-audit.ts\",\"name\":\"regular-audit.ts\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"1 member · 1 model\"},{\"alias\":\"module:packages/subsystems-studio/src/bun/index.ts\",\"name\":\"index.ts\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"7 members · 4 models\"},{\"alias\":\"module:packages/subsystems-studio/src/mainview/rpc.ts\",\"name\":\"rpc.ts\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"3 members · 2 models\"},{\"alias\":\"module:packages/subsystems-react/src/utils/elkLayout.ts\",\"name\":\"elkLayout.ts\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"2 members · 3 models\"},{\"alias\":\"module:packages/subsystems-studio/src/mainview/App.tsx\",\"name\":\"App.tsx\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"1 member · 2 models\"},{\"alias\":\"process:opencode/v2\",\"name\":\"opencode/v2\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"3 members · 1 model\"},{\"alias\":\"module:packages/subsystems-studio/src/bun/proposal-store.ts\",\"name\":\"proposal-store.ts\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"2 members · 2 models\"},{\"alias\":\"process:opencode2/service\",\"name\":\"opencode2/service\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"1 member · 1 model\"},{\"alias\":\"process:opencode/sqlite\",\"name\":\"opencode/sqlite\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"4 members · 1 model\"},{\"alias\":\"module:packages/subsystems-react/src/subsystem/nodes.tsx\",\"name\":\"nodes.tsx\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"1 member · 2 models\"},{\"alias\":\"process:principal-studio/renderer\",\"name\":\"principal-studio/renderer\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"7 members · 2 models\"},{\"alias\":\"process:principal-studio/host\",\"name\":\"principal-studio/host\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"2 members · 1 model\"},{\"alias\":\"ungrouped\",\"name\":\"ungrouped\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"1 member · 1 model\"},{\"alias\":\"module:packages/subsystems-studio/src/mainview/components/TabStrip.tsx\",\"name\":\"TabStrip.tsx\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"1 member · 1 model\"},{\"alias\":\"module:packages/subsystems-studio/src/shared/contract.ts\",\"name\":\"contract.ts\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"3 members · 2 models\"},{\"alias\":\"module:packages/subsystems-studio/src/bun/alexandria.ts\",\"name\":\"alexandria.ts\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"2 members · 1 model\"},{\"alias\":\"module:packages/subsystems-studio/src/bun/graphify-store.ts\",\"name\":\"graphify-store.ts\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"2 members · 1 model\"},{\"alias\":\"process:alexandria\",\"name\":\"alexandria\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"1 member · 1 model\"},{\"alias\":\"module:packages/subsystems-studio/src/mainview/excalidraw/subsystemToExcalidraw.ts\",\"name\":\"subsystemToExcalidraw.ts\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"1 member · 1 model\"},{\"alias\":\"module:packages/subsystems-studio/src/mainview/excalidraw/excalidrawToSubsystem.ts\",\"name\":\"excalidrawToSubsystem.ts\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"1 member · 1 model\"},{\"alias\":\"module:packages/subsystems-studio/src/bun/merge-submodel-models.ts\",\"name\":\"merge-submodel-models.ts\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"1 member · 1 model\"},{\"alias\":\"module:packages/subsystems-react/src/subsystem/paths.ts\",\"name\":\"paths.ts\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"1 member · 1 model\"},{\"alias\":\"module:packages/subsystems-react/src/subsystem/SubsystemFileTree.tsx\",\"name\":\"SubsystemFileTree.tsx\",\"construct\":\"external\",\"file\":\"\",\"purl\":\"external\",\"purpose\":\"1 member · 1 model\"}]");
|
|
2
|
-
export const aggregateRelations = JSON.parse("[{\"id\":\"ref-extends-host\",\"from\":\"process:proposed/studio-gist\",\"to\":\"process:subsystems-core/types\",\"relationType\":\"extends\",\"refs\":[\"external:proposed\"]},{\"id\":\"schema-vs-react-parallel\",\"from\":\"process:subsystems-core\",\"to\":\"process:subsystems-react\",\"relationType\":\"references\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-core/src/types/subsystem-model.ts\"]},{\"id\":\"declaration-mirrors-detail\",\"from\":\"process:subsystems-core\",\"to\":\"process:subsystems-react\",\"relationType\":\"references\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-react/src/graphify/consolidated.ts\"]},{\"id\":\"declaration-not-read\",\"from\":\"process:subsystems-react\",\"to\":\"process:subsystems-core\",\"relationType\":\"references\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-react/src/subsystem/formatDeclaration.ts\"]},{\"id\":\"graph-imports-build\",\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"to\":\"module:packages/subsystems-react/src/subsystem/model.ts\",\"relationType\":\"imports\"},{\"id\":\"graph-imports-group-node\",\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"to\":\"module:packages/subsystems-react/src/subsystem/nodes.tsx\",\"relationType\":\"imports\"},{\"id\":\"build-imports-elk\",\"from\":\"module:packages/subsystems-react/src/subsystem/model.ts\",\"to\":\"module:packages/subsystems-react/src/utils/elkLayout.ts\",\"relationType\":\"imports\"},{\"id\":\"graph-imports-build__dup1\",\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"to\":\"module:packages/subsystems-react/src/subsystem/model.ts\",\"relationType\":\"imports\"},{\"id\":\"graph-imports-group\",\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"to\":\"module:packages/subsystems-react/src/subsystem/nodes.tsx\",\"relationType\":\"imports\"},{\"id\":\"build-imports-elk__dup1\",\"from\":\"module:packages/subsystems-react/src/subsystem/model.ts\",\"to\":\"module:packages/subsystems-react/src/utils/elkLayout.ts\",\"relationType\":\"imports\"},{\"id\":\"r-view-graph\",\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"relationType\":\"imports\"},{\"id\":\"r-view-issues\",\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"process:subsystems-studio/renderer\",\"relationType\":\"imports\"},{\"id\":\"r-view-verification\",\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"process:subsystems-studio/renderer\",\"relationType\":\"imports\"},{\"id\":\"r-view-flow\",\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"process:subsystems-studio/renderer\",\"relationType\":\"imports\"},{\"id\":\"r-graph-node\",\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"to\":\"process:subsystems-studio/renderer\",\"relationType\":\"imports\"},{\"id\":\"r-graph-chip\",\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"to\":\"process:subsystems-studio/renderer\",\"relationType\":\"imports\"},{\"id\":\"r-graph-list\",\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"to\":\"process:subsystems-studio/renderer\",\"relationType\":\"imports\"},{\"id\":\"r-audit-save\",\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"process:subsystems-studio/host\",\"relationType\":\"imports\"},{\"id\":\"r-component-anchor\",\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"process:subsystems-studio/host\",\"relationType\":\"imports\"},{\"id\":\"r-audit-topology\",\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"process:subsystems-studio/host\",\"relationType\":\"imports\"},{\"id\":\"r-audit-boundary\",\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"process:subsystems-studio/host\",\"relationType\":\"imports\"},{\"id\":\"r-comp-infer\",\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"process:subsystems-studio/host\",\"relationType\":\"imports\"},{\"id\":\"r-comp-constructs\",\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"process:subsystems-studio/host\",\"relationType\":\"imports\"},{\"id\":\"r-comp-signatures\",\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"process:subsystems-studio/host\",\"relationType\":\"imports\"},{\"id\":\"smv-imports-graph\",\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"relationType\":\"imports\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\"]},{\"id\":\"smv-imports-file-view\",\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"process:principal-studio/renderer\",\"relationType\":\"imports\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-react/src/pierre/PierreFileView.tsx\"]},{\"id\":\"smv-imports-snippet-view\",\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"process:principal-studio/renderer\",\"relationType\":\"imports\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-react/src/pierre/PierreSnippetView.tsx\"]},{\"id\":\"graph-imports-drawer\",\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"to\":\"process:principal-studio/renderer\",\"relationType\":\"imports\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\"]},{\"id\":\"get-model-imports-fs\",\"from\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"to\":\"process:principal-studio/host\",\"relationType\":\"imports\"},{\"id\":\"app-renders-strip\",\"from\":\"module:packages/subsystems-studio/src/mainview/App.tsx\",\"to\":\"module:packages/subsystems-studio/src/mainview/components/TabStrip.tsx\",\"relationType\":\"references\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-studio/src/mainview/App.tsx\"]},{\"id\":\"app-uses-requests\",\"from\":\"module:packages/subsystems-studio/src/mainview/App.tsx\",\"to\":\"module:packages/subsystems-studio/src/shared/contract.ts\",\"relationType\":\"references\"},{\"id\":\"bridge-uses-requests\",\"from\":\"module:packages/subsystems-studio/src/mainview/rpc.ts\",\"to\":\"module:packages/subsystems-studio/src/shared/contract.ts\",\"relationType\":\"references\"},{\"id\":\"bridge-uses-messages\",\"from\":\"module:packages/subsystems-studio/src/mainview/rpc.ts\",\"to\":\"module:packages/subsystems-studio/src/shared/contract.ts\",\"relationType\":\"references\"},{\"id\":\"broadcast-uses-messages\",\"from\":\"module:packages/subsystems-studio/src/bun/index.ts\",\"to\":\"module:packages/subsystems-studio/src/shared/contract.ts\",\"relationType\":\"references\"},{\"id\":\"route-to-validation\",\"from\":\"module:packages/subsystems-studio/src/bun/http-server.ts\",\"to\":\"process:subsystems-studio/host\",\"relationType\":\"imports\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-studio/src/bun/http-server.ts\"]},{\"id\":\"route-to-store-create\",\"from\":\"module:packages/subsystems-studio/src/bun/http-server.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"relationType\":\"imports\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-studio/src/bun/http-server.ts\"]},{\"id\":\"route-to-alexandria-register\",\"from\":\"module:packages/subsystems-studio/src/bun/http-server.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/alexandria.ts\",\"relationType\":\"imports\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-studio/src/bun/http-server.ts\"]},{\"id\":\"validation-to-cross-field\",\"from\":\"process:subsystems-studio/host\",\"to\":\"process:subsystems-core\",\"relationType\":\"imports\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-studio/src/bun/subsystem-model-validation.ts\"]},{\"id\":\"register-roots-to-alexandria\",\"from\":\"module:packages/subsystems-studio/src/bun/http-server.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/alexandria.ts\",\"relationType\":\"imports\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-studio/src/bun/http-server.ts\"]},{\"id\":\"resolve-root-to-alexandria\",\"from\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/alexandria.ts\",\"relationType\":\"imports\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-studio/src/bun/subsystem-model-store.ts\"]},{\"id\":\"resolve-purl-root-to-alexandria\",\"from\":\"module:packages/subsystems-studio/src/bun/graphify-store.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/alexandria.ts\",\"relationType\":\"imports\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-studio/src/bun/graphify-store.ts\"]},{\"id\":\"listing-to-derivation\",\"from\":\"process:principal-studio/renderer\",\"to\":\"process:subsystems-studio/host\",\"relationType\":\"references\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-studio/src/mainview/views/SubsystemModelsView.tsx\"]},{\"id\":\"merge-reads-store\",\"from\":\"module:packages/subsystems-studio/src/bun/merge-submodel-models.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"relationType\":\"references\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-studio/src/bun/merge-submodel-models.ts\"]},{\"id\":\"rebuild-imports-meta\",\"from\":\"module:packages/subsystems-studio/src/mainview/excalidraw/excalidrawToSubsystem.ts\",\"to\":\"module:packages/subsystems-studio/src/mainview/excalidraw/subsystemToExcalidraw.ts\",\"relationType\":\"imports\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-studio/src/mainview/excalidraw/excalidrawToSubsystem.ts\"]},{\"id\":\"fix-adopt-reads-store\",\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"relationType\":\"imports\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-studio/src/bun/verify-subsystem-component.ts\"]},{\"id\":\"proposal-create-reads-store\",\"from\":\"module:packages/subsystems-studio/src/bun/proposal-store.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"relationType\":\"imports\",\"refs\":[\"pkg:github/principal-ai/subsystem-modeling#packages/subsystems-studio/src/bun/proposal-store.ts\"]},{\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"id\":\"detail-uses-repos\",\"relationType\":\"references\",\"to\":\"module:packages/subsystems-react/src/subsystem/paths.ts\"},{\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"id\":\"detail-uses-tree\",\"relationType\":\"references\",\"to\":\"module:packages/subsystems-react/src/subsystem/SubsystemFileTree.tsx\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelsView.tsx\",\"id\":\"panel-uses-repos\",\"relationType\":\"references\",\"to\":\"module:packages/subsystems-react/src/subsystem/paths.ts\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelsView.tsx\",\"id\":\"panel-uses-tree\",\"relationType\":\"references\",\"to\":\"module:packages/subsystems-react/src/subsystem/SubsystemFileTree.tsx\"},{\"from\":\"module:packages/subsystems-studio/src/bun/index.ts\",\"id\":\"rpc-reads-index\",\"relationType\":\"references\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelsView.tsx\",\"id\":\"view-renders-summary\",\"relationType\":\"references\",\"to\":\"module:packages/subsystems-studio/src/shared/contract.ts\"}]");
|
|
3
|
-
export const aggregateWalkthroughs = JSON.parse("[{\"id\":\"tl-site-view-gist\",\"title\":\"Someone opens the shared gist on the site\",\"steps\":[{\"from\":\"process:site/web\",\"to\":\"process:external/github\",\"mechanism\":\"calls\",\"file\":\"site/src/lib/gist.ts\",\"line\":94,\"symbol\":\"loadSubsystemModelFromGist\",\"annotation\":\"Read the public gist JSON (no Studio disk involved).\"},{\"from\":\"process:site/web\",\"to\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"mechanism\":\"uses\",\"file\":\"site/src/pages/Gist.tsx\",\"line\":184,\"symbol\":\"Gist\",\"annotation\":\"Render the shared model in the browser.\"}]},{\"id\":\"tl-persist-local-store\",\"title\":\"Persist a local model to ~/.principal/subsystem-models\",\"steps\":[{\"from\":\"process:principal-studio-cli\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"mechanism\":\"calls\",\"file\":\"packages/principal-studio-cli/src/commands/subsystem-model.ts\",\"line\":186,\"symbol\":\"createAction\",\"annotation\":\"CLI/agent create path — always a new local sg- id today.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"to\":\"process:local/disk\",\"mechanism\":\"writes\",\"file\":\"packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"line\":929,\"symbol\":\"createSubsystemModel\",\"annotation\":\"Host create writes a record into the shared ~/.principal/subsystem-models directory (CLI can write the same store).\"},{\"from\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"writes\",\"file\":\"packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"line\":951,\"symbol\":\"createSubsystemModel\",\"annotation\":\"Mirror listing fields into _index.json.\"},{\"from\":\"process:principal-studio-cli\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/principal-studio-cli/src/commands/subsystem-model.ts\",\"line\":205,\"symbol\":\"createAction\",\"annotation\":\"Open the local model in Studio.\"}]},{\"id\":\"tl-proposed-share-gist\",\"title\":\"Proposed: share local model as gist (create or update)\",\"steps\":[{\"from\":\"process:proposed/studio-gist\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"line\":919,\"symbol\":\"getSubsystemModel\",\"annotation\":\"Load the hydrated local record from the disk store.\"},{\"from\":\"process:proposed/studio-gist\",\"to\":\"process:site/web\",\"mechanism\":\"calls\",\"file\":\"site/src/lib/gist.ts\",\"line\":161,\"symbol\":\"toPortableDocument\",\"annotation\":\"Strip host fields so the gist file is portable-only.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:proposed/studio-gist\",\"mechanism\":\"reads\",\"file\":\"packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"line\":849,\"symbol\":\"indexEntryFor\",\"annotation\":\"Index/host gist ref decides PATCH existing gist vs POST a new one.\"},{\"from\":\"process:proposed/studio-gist\",\"to\":\"process:external/github\",\"mechanism\":\"calls\",\"file\":\"site/src/lib/gist.ts\",\"line\":94,\"symbol\":\"loadSubsystemModelFromGist\",\"annotation\":\"POST /gists (first share) or PATCH /gists/{id} (subsequent) — token required.\"},{\"from\":\"process:proposed/studio-gist\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"line\":957,\"symbol\":\"updateSubsystemModel\",\"annotation\":\"Stamp gist.id on the local record + index so the next share updates in place.\"}]},{\"id\":\"tl-first-open-ok\",\"title\":\"First open — cover lifts\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"process:subsystems-react\",\"mechanism\":\"uses\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"line\":258,\"symbol\":\"SubsystemModelView\",\"annotation\":\"Mount SubsystemComponentGraph for a freshly loaded graph.\"},{\"from\":\"process:subsystems-react\",\"to\":\"module:packages/subsystems-react/src/subsystem/model.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"line\":407,\"symbol\":\"Inner\",\"annotation\":\"Pass 1: buildSubsystemGraph without measured sizes.\"},{\"from\":\"process:subsystems-react\",\"to\":\"module:packages/subsystems-react/src/subsystem/model.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"line\":454,\"symbol\":\"triggerPass2\",\"annotation\":\"Pass 2 re-runs buildSubsystemGraph with measured widths.\"}]},{\"id\":\"tl-update-stuck\",\"title\":\"Bug (before fix) — update stuck on cover\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/bun/http-server.ts\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/http-server.ts\",\"line\":324,\"symbol\":\"handleSubsystemModelRequest\",\"annotation\":\"Agent PUT patches the open graph.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:subsystems-studio/renderer\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":2007,\"symbol\":\"broadcastSubsystemModelChanged\",\"annotation\":\"Send subsystemModelChanged into the renderer.\"},{\"from\":\"process:subsystems-studio/renderer\",\"to\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/mainview/rpc.ts\",\"line\":95,\"symbol\":\"subsystemModelChangeSubscribers\",\"annotation\":\"Fan the push out to every subscribed tab.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"process:subsystems-react\",\"mechanism\":\"uses\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"line\":258,\"symbol\":\"SubsystemModelView\",\"annotation\":\"Same Inner instance gets new components/edges props.\"},{\"from\":\"process:subsystems-react\",\"to\":\"module:packages/subsystems-react/src/subsystem/model.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"line\":407,\"symbol\":\"Inner\",\"annotation\":\"Pass 1 rebuilds then setLayoutReady(false) drops the cover.\"}]},{\"id\":\"tl-proposed-fix\",\"title\":\"Fix — reuse dims + kick Pass 2\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/bun/http-server.ts\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/http-server.ts\",\"line\":324,\"symbol\":\"handleSubsystemModelRequest\",\"annotation\":\"Same live PUT into an open tab.\"},{\"from\":\"process:subsystems-studio/renderer\",\"to\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"line\":69,\"symbol\":\"SubsystemModelView\",\"annotation\":\"Tab reloads; Inner stays mounted.\"},{\"from\":\"process:subsystems-react\",\"to\":\"module:packages/subsystems-react/src/subsystem/model.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"line\":407,\"symbol\":\"Inner\",\"annotation\":\"Pass 1 still estimates; cover drops via setLayoutReady(false).\"},{\"from\":\"process:subsystems-react\",\"to\":\"module:packages/subsystems-react/src/subsystem/model.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"line\":454,\"symbol\":\"triggerPass2\",\"annotation\":\"Measured ELK; .catch reveals on error.\"}]},{\"id\":\"tl-probe-status\",\"title\":\"Probe OpenCode server status\",\"steps\":[{\"from\":\"process:subsystems-studio/renderer\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":1406,\"symbol\":\"probeOpencodeServer\",\"annotation\":\"RPC getOpencodeServerStatus delegates to probeOpencodeServer.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:opencode\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/server-sessions.ts\",\"line\":108,\"symbol\":\"probeOpencodeServer\",\"annotation\":\"Basic-auth GET /api/health against the live OpenCode server.\"}]},{\"id\":\"tl-watch-live-sessions\",\"title\":\"Watch live OpenCode sessions\",\"steps\":[{\"from\":\"process:subsystems-studio/renderer\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/components/ServerSessionsModal.tsx\",\"line\":102,\"symbol\":\"ServerSessionsModal\",\"annotation\":\"Enable the host SSE watch when the modal mounts.\"},{\"from\":\"process:subsystems-studio/renderer\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":1407,\"symbol\":\"listRecentServerSessions\",\"annotation\":\"RPC getServerSessions delegates to listRecentServerSessions.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:opencode\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/server-sessions.ts\",\"line\":182,\"symbol\":\"listRecentServerSessions\",\"annotation\":\"Build Basic-auth headers before fetching session list and active set.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:opencode\",\"mechanism\":\"watches\",\"file\":\"packages/subsystems-studio/src/bun/server-sessions.ts\",\"line\":302,\"symbol\":\"startWatch\",\"annotation\":\"Open the /api/event SSE stream with the same Basic-auth headers.\"}]},{\"id\":\"tl-load-historical\",\"title\":\"Load historical OpenCode session events\",\"steps\":[{\"from\":\"process:subsystems-studio/renderer\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":1286,\"symbol\":\"buildSessionIndex\",\"annotation\":\"listSessions RPC builds the recent-window index from opencode.db.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:opencode\",\"mechanism\":\"reads\",\"file\":\"packages/subsystems-studio/src/bun/session-pipeline.ts\",\"line\":801,\"symbol\":\"buildSessionIndex\",\"annotation\":\"Resolve the OpenCode data-dir sqlite path for the index scan.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:opencode\",\"mechanism\":\"reads\",\"file\":\"packages/subsystems-studio/src/bun/session-pipeline.ts\",\"line\":1270,\"symbol\":\"processSessionEvents\",\"annotation\":\"Cache-key the OpenCode session before reading its sqlite event rows.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:subsystems-core\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/session-pipeline.ts\",\"line\":1310,\"symbol\":\"processSessionEvents\",\"annotation\":\"Convert raw OpenCode rows into universal events before normalize/accumulate.\"}]},{\"id\":\"tl-extract-concepts\",\"title\":\"Extract concepts via opencode run\",\"steps\":[{\"from\":\"process:subsystems-studio/renderer\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":1961,\"symbol\":\"analyzeSessionInBackground\",\"annotation\":\"analyzeSession RPC starts background extraction for a new analysis id.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:opencode\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/extraction.ts\",\"line\":263,\"symbol\":\"runOpenCodeExtraction\",\"annotation\":\"Spawn OPENCODE_BIN run --agent concept-extractor and parse the JSON stream.\"}]},{\"id\":\"tl-run-audit\",\"title\":\"Run a dry-run audit from the Audit button\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"process:subsystems-studio/renderer\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"line\":347,\"symbol\":\"SubsystemModelView\",\"annotation\":\"Collect unique component purls that need a graphify cache, skipping externals.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"process:subsystems-studio/renderer\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"line\":364,\"symbol\":\"SubsystemModelView\",\"annotation\":\"Subscribe to graphifyChanged pushes while a background build runs.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"line\":374,\"symbol\":\"SubsystemModelView\",\"annotation\":\"Ensure the graphify cache over RPC and wait when the status is building.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"line\":443,\"symbol\":\"SubsystemModelView\",\"annotation\":\"Invoke the host dry-run audit once caches are ready.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"process:subsystems-studio/renderer\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"line\":452,\"symbol\":\"SubsystemModelView\",\"annotation\":\"Deliver the report into the modal done phase without mutating the graph.\"}]},{\"id\":\"tl-host-checks\",\"title\":\"Deterministic checks inside the host audit\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"line\":598,\"symbol\":\"auditSubsystemModel\",\"annotation\":\"Check every file exists and every claimed symbol is declared.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"line\":227,\"symbol\":\"verifySubsystemComponent\",\"annotation\":\"Test the claimed symbol declaration against file contents.\"}]},{\"id\":\"wt-regular-audit\",\"title\":\"Background regular audit pass\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/bun/regular-audit.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/index.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":2683,\"symbol\":\"auditOne\",\"annotation\":\"Hand the next stored model to the quiet re-audit once the timer fires.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/index.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":2662,\"symbol\":\"reauditSubsystemModelQuietly\",\"annotation\":\"Re-run the deterministic dry-run audit for the model.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/index.ts\",\"mechanism\":\"produces\",\"file\":\"packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"line\":871,\"symbol\":\"auditSubsystemModel\",\"annotation\":\"Produce the fresh report the quiet pass persists.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/regular-audit.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/index.ts\",\"mechanism\":\"produces\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":2686,\"symbol\":\"broadcastRegularAuditChanged\",\"annotation\":\"Emit scheduler status on every enable, tick and pass finish.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/index.ts\",\"to\":\"module:packages/subsystems-studio/src/mainview/rpc.ts\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/mainview/rpc.ts\",\"line\":151,\"symbol\":\"broadcastRegularAuditChanged\",\"annotation\":\"Fan the pushed status out to every registered renderer callback.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/rpc.ts\",\"to\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelsView.tsx\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelsView.tsx\",\"line\":645,\"symbol\":\"regularAuditChangeSubscribers\",\"annotation\":\"Re-render the model list countdown and running badge.\"}]},{\"id\":\"tl-click-load\",\"title\":\"Click subsystem, tab already open (fast path)\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelsView.tsx\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelsView.tsx\",\"line\":981,\"symbol\":\"onOpen\",\"annotation\":\"Row click fires openSubsystemModel RPC; host takes the zero-IO focus path.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":1018,\"symbol\":\"openSubsystemModelTab\",\"annotation\":\"Host broadcasts focus before any disk IO so the tab switches instantly.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"line\":829,\"symbol\":\"touchSubsystemModelOpened\",\"annotation\":\"Stamp path re-reads the graph file, then writes record plus index.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"line\":79,\"symbol\":\"SubsystemModelView\",\"annotation\":\"Remount fetches the full graph over the bridge.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"mechanism\":\"uses\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"line\":377,\"symbol\":\"SubsystemModelView\",\"annotation\":\"Detail mounts the React Flow graph with full components and edges.\"},{\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"to\":\"module:packages/subsystems-react/src/subsystem/model.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"line\":537,\"symbol\":\"SubsystemComponentGraph\",\"annotation\":\"Graph runs pass 1 ELK layout with estimated node sizes.\"},{\"from\":\"module:packages/subsystems-react/src/subsystem/model.ts\",\"to\":\"module:packages/subsystems-react/src/utils/elkLayout.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-react/src/subsystem/model.ts\",\"line\":1408,\"symbol\":\"buildSubsystemGraph\",\"annotation\":\"Builder runs orthogonal ELK on the main thread.\"},{\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"to\":\"process:subsystems-react\",\"mechanism\":\"uses\",\"file\":\"packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"line\":2122,\"symbol\":\"SubsystemComponentGraph\",\"annotation\":\"Cover stays opaque 650ms after layout ready plus 200ms fade.\"}]},{\"id\":\"tl-optimistic-open\",\"title\":\"First open with empty state (implemented)\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelsView.tsx\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelsView.tsx\",\"line\":981,\"symbol\":\"onOpen\",\"annotation\":\"Row click fires RPC; host resolves title from the small index file.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"module:packages/subsystems-studio/src/bun/index.ts\",\"mechanism\":\"writes\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":1051,\"symbol\":\"openSubsystemModelTab\",\"annotation\":\"Host creates tab from index title, no full graph read.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"module:packages/subsystems-studio/src/mainview/App.tsx\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":1054,\"symbol\":\"openSubsystemModelTab\",\"annotation\":\"Host broadcasts focus immediately; stamp moves to background.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/App.tsx\",\"to\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"mechanism\":\"uses\",\"file\":\"packages/subsystems-studio/src/mainview/App.tsx\",\"line\":303,\"symbol\":\"App\",\"annotation\":\"Renderer switches tab and mounts detail view without waiting.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"process:subsystems-studio/renderer\",\"mechanism\":\"uses\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"line\":361,\"symbol\":\"SubsystemModelView\",\"annotation\":\"Detail shows Loading placeholder while graph fetches.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"line\":79,\"symbol\":\"SubsystemModelView\",\"annotation\":\"Detail fetches full graph in background and fills in on arrival.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"mechanism\":\"uses\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"line\":377,\"symbol\":\"SubsystemModelView\",\"annotation\":\"Once loaded, detail mounts graph canvas; tab already visible.\"}]},{\"id\":\"tl-debug-install\",\"title\":\"Debug tab detects and installs OpenCode V2\",\"steps\":[{\"from\":\"process:subsystems-studio/renderer\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/views/OpencodeV2DebugView.tsx\",\"line\":22,\"symbol\":\"OpencodeV2DebugView\",\"annotation\":\"Tab loads status over RPC getOpencodeV2Status.\"},{\"from\":\"process:subsystems-studio/renderer\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/views/OpencodeV2DebugView.tsx\",\"line\":66,\"symbol\":\"OpencodeV2DebugView\",\"annotation\":\"Install button kicks installOpencodeV2 in the background.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:opencode/v2\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/opencode-v2.ts\",\"line\":147,\"symbol\":\"installOpencodeV2\",\"annotation\":\"Runs npm install -g @opencode-ai/cli@beta when the binary is missing.\"}]},{\"id\":\"tl-ensure-opencode-v2\",\"title\":\"Studio ensures OpenCode V2 runtime\",\"steps\":[{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:opencode/v2\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/opencode-v2.ts\",\"line\":24,\"symbol\":\"resolveOpencode2Bin\",\"annotation\":\"If missing or behind, Studio installs/updates @opencode-ai/cli@beta (mirrors studio-version detect+update).\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:opencode/v2\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/maintain-model.ts\",\"line\":650,\"symbol\":\"runMaintainAgent\",\"annotation\":\"Service.ensure([opencode2, serve, --service]) starts or reuses the shared V2 background server.\"}]},{\"id\":\"tl-start-maintain-via-v2\",\"title\":\"Start Maintain via OpenCode V2\",\"steps\":[{\"from\":\"process:subsystems-studio/renderer\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/components/MaintainModelPickerModal.tsx\",\"line\":89,\"symbol\":\"MaintainModelPickerModal\",\"annotation\":\"RPC maintainSubsystemModel kicks the host; UI returns as soon as the run is accepted.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:opencode/v2\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/opencode-v2.ts\",\"line\":24,\"symbol\":\"resolveOpencode2Bin\",\"annotation\":\"If missing or behind beta, Studio installs/updates @opencode-ai/cli@beta (same idea as studio-version update).\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:opencode/v2\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/maintain-model.ts\",\"line\":650,\"symbol\":\"runMaintainAgent\",\"annotation\":\"Service.ensure([opencode2, serve, --service]) starts or reuses the shared V2 background server.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:opencode/v2\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/maintain-model.ts\",\"line\":651,\"symbol\":\"runMaintainAgent\",\"annotation\":\"Create session + prompt on the ensured V2 service (replaces Bun.spawn opencode run).\"}]},{\"id\":\"tl-live-progress-sse\",\"title\":\"Live progress over V2 SSE\",\"steps\":[{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:opencode/v2\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/maintain-model.ts\",\"line\":651,\"symbol\":\"runMaintainAgent\",\"annotation\":\"Same seam also opens client.event.subscribe() scoped to the Maintain session.\"},{\"from\":\"process:opencode/v2\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"produces\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":2319,\"symbol\":\"maintainSubsystemModelInBackground\",\"annotation\":\"Proposed: forward message/part/tool events into Maintain broadcasts instead of waiting for process exit.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:subsystems-studio/renderer\",\"mechanism\":\"produces\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":2325,\"symbol\":\"maintainSubsystemModelInBackground\",\"annotation\":\"Host pushes subsystemModelMaintainChanged. StudioMessageSubscriber now types the payload; renderer subscription sites are the fan-out.\"}]},{\"id\":\"tl-agent-proposes\",\"title\":\"Agent proposes via Studio HTTP\",\"steps\":[{\"from\":\"process:opencode/v2\",\"to\":\"module:packages/subsystems-studio/src/bun/http-server.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/http-server.ts\",\"line\":354,\"symbol\":\"handleSubsystemModelRequest\",\"annotation\":\"Agent curls POST /api/subsystem-model/:id/proposals using Access commands from the brief.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/http-server.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/proposal-store.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/http-server.ts\",\"line\":354,\"symbol\":\"handleSubsystemModelRequest\",\"annotation\":\"HTTP handler validates body and creates a pending proposal in the proposal store.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/http-server.ts\",\"to\":\"process:subsystems-studio/renderer\",\"mechanism\":\"produces\",\"file\":\"packages/subsystems-studio/src/mainview/rpc.ts\",\"line\":71,\"symbol\":\"subsystemModelProposalsChangeSubscribers\",\"annotation\":\"HTTP onProposalsChanged dispatch lands on the contract type node — the fan-out bag is plumbing under the refactor.\"}]},{\"id\":\"tl-list-maintain\",\"title\":\"List Maintenance Sessions\",\"steps\":[{\"from\":\"process:subsystems-studio/renderer\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/views/AgentSessions.tsx\",\"line\":360,\"symbol\":\"AgentSessionsOverviewView\",\"annotation\":\"Renderer RPC listMaintainSessions for the day window.\"}]},{\"id\":\"tl-load-timeline-gap\",\"title\":\"Load timeline (empty for V2 Maintain)\",\"steps\":[{\"from\":\"process:subsystems-studio/renderer\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/views/AgentSessions.tsx\",\"line\":411,\"symbol\":\"AgentSessionsOverviewView\",\"annotation\":\"Seed the panel via getAgentSessionsOverview({ scope: maintain }).\"}]},{\"id\":\"tl-create-maintain\",\"title\":\"Create a Maintain run\",\"steps\":[{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:opencode2/service\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/opencode-v2-live.ts\",\"line\":291,\"symbol\":\"runOpencodeV2AgentSession\",\"annotation\":\"Create+prompt against the running opencode2 HTTP service.\"}]},{\"id\":\"tl-maintain-list\",\"title\":\"List Maintenance Sessions\",\"steps\":[{\"from\":\"process:subsystems-studio/renderer\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/views/AgentSessions.tsx\",\"line\":360,\"symbol\":\"AgentSessionsOverviewView\",\"annotation\":\"scope=maintain calls listMaintainSessions for the day window.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:opencode/sqlite\",\"mechanism\":\"reads\",\"file\":\"packages/subsystems-studio/src/bun/maintain-sessions.ts\",\"line\":161,\"symbol\":\"listMaintainSessions\",\"annotation\":\"SELECT from session_v2 where agent is issue-fixer/gap-filler or title is Maintain — …\"}]},{\"id\":\"tl-v1-timeline\",\"title\":\"V1 timeline (event table)\",\"steps\":[{\"from\":\"process:subsystems-studio/renderer\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/views/AgentSessions.tsx\",\"line\":411,\"symbol\":\"AgentSessionsOverviewView\",\"annotation\":\"Overview loads processed timelines via getAgentSessionsOverview → processSessionEvents.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:opencode/sqlite\",\"mechanism\":\"reads\",\"file\":\"packages/subsystems-studio/src/bun/session-pipeline.ts\",\"line\":1200,\"symbol\":\"processSessionEvents\",\"annotation\":\"V1 identity: row exists in session (e.g. version 1.18.30).\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:opencode/sqlite\",\"mechanism\":\"reads\",\"file\":\"packages/subsystems-studio/src/bun/session-pipeline.ts\",\"line\":1292,\"symbol\":\"processSessionEvents\",\"annotation\":\"SELECT FROM event WHERE aggregate_id = ? — today's OpenCode path.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:subsystems-core\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/session-pipeline.ts\",\"line\":1318,\"symbol\":\"opencodeRowsToUniversalEvents\",\"annotation\":\"Map event rows to UniversalAgentSessionEvent.\"},{\"from\":\"process:subsystems-core\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/bun/session-pipeline.ts\",\"line\":1336,\"symbol\":\"accumulateEvents\",\"annotation\":\"Accumulate into SessionEventRow for the panel.\"}]},{\"id\":\"tl-v2-timeline\",\"title\":\"V2 timeline (session_message)\",\"steps\":[{\"from\":\"process:subsystems-studio/renderer\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/views/AgentSessions.tsx\",\"line\":411,\"symbol\":\"AgentSessionsOverviewView\",\"annotation\":\"Same overview load path; kind routing chooses the V2 reader.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:opencode/sqlite\",\"mechanism\":\"reads\",\"file\":\"packages/subsystems-studio/src/bun/maintain-sessions.ts\",\"line\":161,\"symbol\":\"listMaintainSessions\",\"annotation\":\"V2 identity signal is the session_v2 metadata row (same table listing uses).\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:opencode/sqlite\",\"mechanism\":\"reads\",\"file\":\"packages/subsystems-studio/src/bun/session-pipeline.ts\",\"line\":1200,\"symbol\":\"processSessionEvents\",\"annotation\":\"Planned: read session_message instead of event for v2 ids.\"}]},{\"id\":\"tl-authored-renders-unknown\",\"title\":\"Authored declaration → panel shows = unknown\",\"steps\":[{\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"to\":\"process:subsystems-react\",\"mechanism\":\"uses\",\"file\":\"packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"line\":1776,\"symbol\":\"SubsystemComponentGraph\",\"annotation\":\"Selected node opens ComponentDeclaration with the raw component.\"}]},{\"id\":\"tl-verified-detail-works\",\"title\":\"Verified graphify capture → detail → panel\",\"steps\":[{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:subsystems-react\",\"mechanism\":\"writes\",\"file\":\"packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"line\":1428,\"symbol\":\"buildDetailFromAdoptedSignature\",\"annotation\":\"Audit adopt-signature writes verified detail onto the component.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:subsystems-react\",\"mechanism\":\"writes\",\"file\":\"packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"line\":486,\"symbol\":\"normalizeDetailProvenance\",\"annotation\":\"Store defaults provenance and backfills required detail arrays.\"}]},{\"id\":\"tl-proposed-single-source\",\"title\":\"Proposed: panel reads schema declaration\",\"steps\":[{\"from\":\"process:subsystems-react\",\"to\":\"process:subsystems-core\",\"mechanism\":\"reads\",\"file\":\"packages/subsystems-core/src/types/subsystem-model.ts\",\"line\":224,\"symbol\":\"SubsystemConstructDeclaration\",\"annotation\":\"Repoint generateDeclarationString at this union (and migrate capture into it).\"}]},{\"id\":\"wt-frame-today\",\"title\":\"Frame a document (today)\",\"steps\":[{\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"to\":\"module:packages/subsystems-react/src/subsystem/model.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"line\":424,\"symbol\":\"SubsystemComponentGraph\",\"annotation\":\"Document change triggers buildSubsystemGraph.\"},{\"from\":\"module:packages/subsystems-react/src/subsystem/model.ts\",\"to\":\"module:packages/subsystems-react/src/utils/elkLayout.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-react/src/subsystem/model.ts\",\"line\":1009,\"symbol\":\"buildSubsystemGraph\",\"annotation\":\"computeElkLayout gets a flat groups[] — one parent level only.\"},{\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"to\":\"module:packages/subsystems-react/src/subsystem/nodes.tsx\",\"mechanism\":\"uses\",\"file\":\"packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"line\":178,\"symbol\":\"SubsystemComponentGraph\",\"annotation\":\"RF registers SubsystemGroupNode for type subsystem-group.\"}]},{\"id\":\"wt-nest\",\"title\":\"Nest process → module → export\",\"steps\":[{\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"to\":\"module:packages/subsystems-react/src/subsystem/model.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"line\":424,\"symbol\":\"SubsystemComponentGraph\",\"annotation\":\"Document change triggers buildSubsystemGraph.\"},{\"from\":\"module:packages/subsystems-react/src/subsystem/model.ts\",\"to\":\"module:packages/subsystems-react/src/utils/elkLayout.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-react/src/subsystem/model.ts\",\"line\":1081,\"symbol\":\"buildSubsystemGraph\",\"annotation\":\"computeElkLayout gets nested groups[] with parentId.\"},{\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"to\":\"module:packages/subsystems-react/src/subsystem/nodes.tsx\",\"mechanism\":\"uses\",\"file\":\"packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"line\":178,\"symbol\":\"SubsystemComponentGraph\",\"annotation\":\"RF registers SubsystemGroupNode for type subsystem-group.\"}]},{\"id\":\"wt-paint\",\"title\":\"Paint the diagnostics\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":2030,\"symbol\":\"loadSubsystemModelAudit\",\"annotation\":\"The getSubsystemModelAudit RPC is served here by reading the saved report.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"process:subsystems-studio/renderer\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"line\":318,\"symbol\":\"auditReportToIssues\",\"annotation\":\"Map the report's findings to presentation issues.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"line\":377,\"symbol\":\"SubsystemComponentGraph\",\"annotation\":\"Pass issues, diagnostic status, and (planned) verification into the graph.\"},{\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"to\":\"process:subsystems-studio/renderer\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"line\":226,\"symbol\":\"nodeTypes\",\"annotation\":\"Each node's data carries the verification ladder and hover issue.\"},{\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"to\":\"process:subsystems-studio/renderer\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"line\":1547,\"symbol\":\"SubsystemDiagnosticToggle\",\"annotation\":\"The title row renders the status chip.\"},{\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"to\":\"process:subsystems-studio/renderer\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"line\":1614,\"symbol\":\"SubsystemIssueList\",\"annotation\":\"The sidebar bottom panel renders the grouped issue list.\"}]},{\"id\":\"wt-run\",\"title\":\"Run the audit\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"process:subsystems-studio/renderer\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"line\":294,\"symbol\":\"runSubsystemModelAuditFlow\",\"annotation\":\"Chip click with no or stale report runs the audit flow.\"},{\"from\":\"process:subsystems-studio/renderer\",\"to\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/auditSubsystemModelFlow.ts\",\"line\":271,\"symbol\":\"auditSubsystemModel\",\"annotation\":\"Run the host audit over the RPC bridge.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"writes\",\"file\":\"packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"line\":1333,\"symbol\":\"saveSubsystemModelAudit\",\"annotation\":\"Persist the fresh report so the view can fetch it.\"}]},{\"id\":\"wt-audit\",\"title\":\"Audit (dry-run, graphify-backed)\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"line\":429,\"symbol\":\"resolveComponentAnchor\",\"annotation\":\"Anchor file+symbol onto a graphify definition node before construct/signature checks.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"line\":1233,\"symbol\":\"auditTopologyRelations\",\"annotation\":\"Layer 2: relations[] endpoints + soft corroboration.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"line\":1263,\"symbol\":\"auditBoundaryFields\",\"annotation\":\"Layer 3: module/file membership + process nesting.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"line\":530,\"symbol\":\"inferConstructFromGraphify\",\"annotation\":\"Infer the construct kind from the anchored node (heuristic hint).\"},{\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"line\":581,\"symbol\":\"constructsMatch\",\"annotation\":\"Compare the claimed construct against the inferred one.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"line\":649,\"symbol\":\"compareSignatures\",\"annotation\":\"Compare authored named types against graphify signature edges.\"}]},{\"id\":\"wt-open-file\",\"title\":\"Open a file in the graph\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"line\":377,\"symbol\":\"SubsystemModelView\",\"annotation\":\"Host injects the path-keyed file viewer and readFile closure into the graph.\"},{\"from\":\"module:packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"to\":\"process:principal-studio/renderer\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-react/src/subsystem/SubsystemComponentGraph.tsx\",\"line\":2049,\"symbol\":\"SubsystemComponentGraph\",\"annotation\":\"A click sets the drawer target, opens the bottom drawer, and re-tags every node for file spotlight.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"process:principal-studio/renderer\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"line\":149,\"symbol\":\"renderFileViewer\",\"annotation\":\"renderFileViewer mounts the full-file viewer, or PierreSnippetView for a declaration line.\"}]},{\"id\":\"wt-read-file\",\"title\":\"Read the file and paint it\",\"steps\":[{\"from\":\"process:principal-studio/renderer\",\"to\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-react/src/pierre/PierreFileView.tsx\",\"line\":60,\"symbol\":\"PierreFileView\",\"annotation\":\"Viewer calls the host readFile closure for this path.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":1460,\"symbol\":\"readFile\",\"annotation\":\"Each open re-reads and JSON-parses the entire graph record because the host caches nothing.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"process:principal-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":1467,\"symbol\":\"readFile\",\"annotation\":\"Handler resolves the repo-relative path under the graph's root and rejects traversal.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelView.tsx\",\"to\":\"process:principal-studio/host\",\"mechanism\":\"reads\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":1468,\"symbol\":\"readFile\",\"annotation\":\"Reads the target file content and returns it over IPC as one string.\"}]},{\"id\":\"wt-close-cmd-w\",\"title\":\"Close the active tab with ⌘W\",\"steps\":[{\"from\":\"ungrouped\",\"to\":\"module:packages/subsystems-studio/src/bun/index.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":3299,\"symbol\":\"ApplicationMenu\",\"annotation\":\"The File > Close Tab accelerator fires closeActiveTab; the host closes its *suggested* tab, which setActiveTab keeps in sync with the renderer's active tab.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/index.ts\",\"to\":\"module:packages/subsystems-studio/src/mainview/rpc.ts\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/mainview/rpc.ts\",\"line\":111,\"symbol\":\"tabsChanged\",\"annotation\":\"Host pushes tabsChanged across the RPC bridge; the renderer handler fans it out to every subscriber.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/rpc.ts\",\"to\":\"module:packages/subsystems-studio/src/mainview/App.tsx\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/rpc.ts\",\"line\":111,\"symbol\":\"tabsChanged\",\"annotation\":\"App's registered refresh callback runs, dropping the closed tab from local state.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/App.tsx\",\"to\":\"module:packages/subsystems-studio/src/mainview/rpc.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/App.tsx\",\"line\":340,\"symbol\":\"refresh\",\"annotation\":\"The shell asks the host for the current tab list.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/rpc.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/index.ts\",\"mechanism\":\"reads\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":1425,\"symbol\":\"listTabs\",\"annotation\":\"listTabs serializes the registry plus the resume suggestion; the shell re-derives its active tab from the result.\"}]},{\"id\":\"wt-close-strip-x\",\"title\":\"Close a tab from the strip's × button\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/mainview/App.tsx\",\"to\":\"module:packages/subsystems-studio/src/mainview/components/TabStrip.tsx\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/mainview/App.tsx\",\"line\":415,\"symbol\":\"App\",\"annotation\":\"App wires its onClose callback into the strip — the × affordance invokes it.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/App.tsx\",\"to\":\"module:packages/subsystems-studio/src/mainview/rpc.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/App.tsx\",\"line\":381,\"symbol\":\"onClose\",\"annotation\":\"onClose asks the host to close that specific tab id (the click path closes the tab you clicked, not the suggestion).\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/rpc.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/index.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":1450,\"symbol\":\"closeTab\",\"annotation\":\"The host's closeTab handler funnels into the same closeTabById choke point ⌘W uses.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/index.ts\",\"to\":\"module:packages/subsystems-studio/src/mainview/rpc.ts\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/mainview/rpc.ts\",\"line\":111,\"symbol\":\"tabsChanged\",\"annotation\":\"Same host notification, same renderer fan-out.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/rpc.ts\",\"to\":\"module:packages/subsystems-studio/src/mainview/App.tsx\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/rpc.ts\",\"line\":111,\"symbol\":\"tabsChanged\",\"annotation\":\"The shell refreshes and falls back to a remaining tab.\"}]},{\"id\":\"wt-create\",\"title\":\"Create or update a model\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/bun/http-server.ts\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/http-server.ts\",\"line\":328,\"symbol\":\"handleSubsystemModelRequest\",\"annotation\":\"Reject an invalid document before anything is persisted.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/http-server.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/alexandria.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/http-server.ts\",\"line\":134,\"symbol\":\"registerSuppliedRoots\",\"annotation\":\"Learn the roots into Alexandria, not the record.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/http-server.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/http-server.ts\",\"line\":334,\"symbol\":\"handleSubsystemModelRequest\",\"annotation\":\"Persist the validated document.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/alexandria.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"line\":413,\"symbol\":\"resolveRepoRootForComponent\",\"annotation\":\"Delegate the purl lookup to the registry.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/alexandria.ts\",\"to\":\"process:alexandria\",\"mechanism\":\"reads\",\"file\":\"packages/subsystems-studio/src/bun/alexandria.ts\",\"line\":200,\"symbol\":\"resolveRepoRootFromAlexandria\",\"annotation\":\"Match the repo's remote against registered projects.\"}]},{\"id\":\"wt-list\",\"title\":\"List models as repo cards\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelsView.tsx\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelsView.tsx\",\"line\":645,\"symbol\":\"refresh\",\"annotation\":\"Renderer asks the host for the model list over RPC.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"to\":\"process:subsystems-studio/host\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"line\":1997,\"symbol\":\"githubReposFromComponents\",\"annotation\":\"Derive each model's repos from its component purls — no stored repo field.\"},{\"from\":\"process:subsystems-studio/host\",\"to\":\"process:principal-studio/renderer\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelsView.tsx\",\"line\":329,\"symbol\":\"collectReposFromGraphs\",\"annotation\":\"Group models into repo cards from the derived repos.\"}]},{\"id\":\"wt-audit__dup1\",\"title\":\"Audit a model\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/graphify-store.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"line\":1179,\"symbol\":\"auditSubsystemModel\",\"annotation\":\"Ask which component purls have a current graphify cache.\"},{\"from\":\"module:packages/subsystems-studio/src/bun/graphify-store.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/alexandria.ts\",\"mechanism\":\"calls\",\"file\":\"packages/subsystems-studio/src/bun/graphify-store.ts\",\"line\":279,\"symbol\":\"resolveRepoRootForPurl\",\"annotation\":\"Same registry lookup the write path uses.\"}]},{\"id\":\"wt-propose\",\"title\":\"Propose and accept a correction bound to a component id\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/proposal-store.ts\",\"mechanism\":\"produces\",\"file\":\"packages/subsystems-studio/src/bun/proposal-store.ts\",\"line\":522,\"symbol\":\"createSubsystemModelProposal\",\"annotation\":\"Audit findings drive an agent-proposed correction; the change list targets component ids (and topology endpoints).\"}]},{\"id\":\"wt-adopt\",\"title\":\"Adopt graphify findings onto a component\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"mechanism\":\"reads\",\"file\":\"packages/subsystems-studio/src/bun/verify-subsystem-component.ts\",\"line\":1366,\"symbol\":\"applySubsystemModelAuditFix\",\"annotation\":\"Re-reads the record and rewrites the component that owns the id.\"}]},{\"id\":\"wt-excalidraw\",\"title\":\"Excalidraw round-trip of a model\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"to\":\"module:packages/subsystems-studio/src/mainview/excalidraw/subsystemToExcalidraw.ts\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/mainview/excalidraw/subsystemToExcalidraw.ts\",\"line\":152,\"symbol\":\"principalMetaForComponent\",\"annotation\":\"Each component carries its id onto its element so the scene holds the model's identity.\"},{\"from\":\"module:packages/subsystems-studio/src/mainview/excalidraw/subsystemToExcalidraw.ts\",\"to\":\"module:packages/subsystems-studio/src/mainview/excalidraw/excalidrawToSubsystem.ts\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/mainview/excalidraw/excalidrawToSubsystem.ts\",\"line\":140,\"symbol\":\"excalidrawSceneToSubsystemModel\",\"annotation\":\"The edited scene becomes a document again; ids ride through the metadata verbatim.\"}]},{\"id\":\"wt-merge\",\"title\":\"Compose a repo's models into one graph (proposed)\",\"steps\":[{\"from\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/merge-submodel-models.ts\",\"mechanism\":\"feeds\",\"file\":\"packages/subsystems-studio/src/bun/merge-submodel-models.ts\",\"line\":1,\"symbol\":\"mergeSubsystemModels\",\"annotation\":\"Reads every model touching a repo-key (proposed — this is the compose flow this model is the brief for).\"},{\"from\":\"module:packages/subsystems-studio/src/bun/merge-submodel-models.ts\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\",\"mechanism\":\"reads\",\"file\":\"packages/subsystems-studio/src/bun/merge-submodel-models.ts\",\"line\":1,\"symbol\":\"mergeSubsystemModels\",\"annotation\":\"Same code identity unifies to one node keyed consistently and uniquely; each model's edges resolve in its own alias-space (proposed; an agent pass aligns the composed nodes later).\"}]},{\"id\":\"wt-list-today\",\"steps\":[{\"annotation\":\"Polls listSubsystemModels every 10s. Summaries carry counts and repos, never files.\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelsView.tsx\",\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelsView.tsx\",\"line\":701,\"mechanism\":\"calls\",\"symbol\":\"refresh\",\"to\":\"module:packages/subsystems-studio/src/bun/index.ts\"},{\"annotation\":\"Reads the lightweight index with counts and timestamps only.\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"from\":\"module:packages/subsystems-studio/src/bun/index.ts\",\"line\":1950,\"mechanism\":\"calls\",\"symbol\":\"listSubsystemModels\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\"},{\"annotation\":\"Loads each full model to derive repos, graphify and audit, then drops component files before replying.\",\"file\":\"packages/subsystems-studio/src/bun/index.ts\",\"from\":\"module:packages/subsystems-studio/src/bun/index.ts\",\"line\":1953,\"mechanism\":\"calls\",\"symbol\":\"listSubsystemModels\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\"}],\"title\":\"List subsystems today — files stop at the host\"},{\"id\":\"wt-file-panel\",\"steps\":[{\"annotation\":\"Loads the full model once per selected id and caches it, invalidating on subsystemModelChanged.\",\"file\":\"packages/subsystems-studio/src/mainview/views/SubsystemModelsView.tsx\",\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelsView.tsx\",\"line\":958,\"mechanism\":\"calls\",\"symbol\":\"onShowAuditReport\",\"to\":\"module:packages/subsystems-studio/src/bun/subsystem-model-store.ts\"},{\"annotation\":\"Groups the selected components file and purl pairs by repo.\",\"file\":\"packages/subsystems-react/src/subsystem/paths.ts\",\"from\":\"module:packages/subsystems-studio/src/mainview/views/SubsystemModelsView.tsx\",\"line\":93,\"mechanism\":\"calls\",\"symbol\":\"buildRepoGroups\",\"to\":\"module:packages/subsystems-react/src/subsystem/paths.ts\"},{\"annotation\":\"Renders one tree per repo group like the detail graph. Clicking a file opens the graph tab with the file drawer.\",\"file\":\"packages/subsystems-react/src/subsystem/SubsystemFileTree.tsx\",\"from\":\"module:packages/subsystems-react/src/subsystem/paths.ts\",\"line\":29,\"mechanism\":\"feeds\",\"symbol\":\"SubsystemFileTree\",\"to\":\"module:packages/subsystems-react/src/subsystem/SubsystemFileTree.tsx\"}],\"title\":\"Proposed — file trees for the selected subsystem\"}]");
|
|
4
|
-
//# sourceMappingURL=aggregateFixture.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"aggregateFixture.js","sourceRoot":"","sources":["../../../../src/stories/Subsystem/ComponentGraph/aggregateFixture.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,mBAAmB,GAAyB,IAAI,CAAC,KAAK,CAAC,ysPAAysP,CAAC,CAAC;AAE/wP,MAAM,CAAC,MAAM,kBAAkB,GAAwB,IAAI,CAAC,KAAK,CAAC,05YAA05Y,CAAC,CAAC;AAE99Y,MAAM,CAAC,MAAM,qBAAqB,GAA2B,IAAI,CAAC,KAAK,CAAC,83yDAA83yD,CAAC,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import type { SubsystemComponent, SubsystemRelation, SubsystemWalkthrough } from "../../../subsystem/model";
|
|
2
|
-
export declare const composedComponents: SubsystemComponent[];
|
|
3
|
-
export declare const composedRelations: SubsystemRelation[];
|
|
4
|
-
export declare const composedWalkthroughs: SubsystemWalkthrough[];
|
|
5
|
-
//# sourceMappingURL=composedFixture.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"composedFixture.d.ts","sourceRoot":"","sources":["../../../../src/stories/Subsystem/ComponentGraph/composedFixture.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAE5G,eAAO,MAAM,kBAAkB,EAAE,kBAAkB,EAAysiG,CAAC;AAE7viG,eAAO,MAAM,iBAAiB,EAAE,iBAAiB,EAA6tW,CAAC;AAE/wW,eAAO,MAAM,oBAAoB,EAAE,oBAAoB,EAAy7sE,CAAC"}
|