@a5c-ai/agent-catalog 5.0.1-staging.6098f7dd → 5.0.1-staging.60e5d7efd876

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.
Files changed (126) hide show
  1. package/README.md +2 -2
  2. package/dist/{graph.d.ts → atlas-bridge.d.ts} +14 -6
  3. package/dist/atlas-bridge.d.ts.map +1 -0
  4. package/dist/atlas-bridge.js +182 -0
  5. package/dist/cli.d.ts.map +1 -1
  6. package/dist/cli.js +42 -30
  7. package/dist/data.d.ts.map +1 -1
  8. package/dist/data.js +475 -96
  9. package/dist/discovery-snapshot.json +87059 -22842
  10. package/dist/index.d.ts +1 -4
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +1 -6
  13. package/dist/models.d.ts +171 -1
  14. package/dist/models.d.ts.map +1 -1
  15. package/dist/sdk.d.ts +96 -2
  16. package/dist/sdk.d.ts.map +1 -1
  17. package/dist/sdk.js +603 -40
  18. package/index.d.ts +1 -0
  19. package/index.js +3 -0
  20. package/package.json +8 -15
  21. package/dist/assets.d.ts +0 -4
  22. package/dist/assets.d.ts.map +0 -1
  23. package/dist/assets.js +0 -76
  24. package/dist/evidence-projection.d.ts +0 -4
  25. package/dist/evidence-projection.d.ts.map +0 -1
  26. package/dist/evidence-projection.js +0 -34
  27. package/dist/evidence.d.ts +0 -13
  28. package/dist/evidence.d.ts.map +0 -1
  29. package/dist/evidence.js +0 -227
  30. package/dist/graph.d.ts.map +0 -1
  31. package/dist/graph.js +0 -194
  32. package/evidence/ontology-evidence/claims/catalog-processes-and-packaging.json +0 -89
  33. package/evidence/ontology-evidence/claims/plugins-hooks-discovery.json +0 -136
  34. package/evidence/ontology-evidence/claims/runtime-core.json +0 -113
  35. package/evidence/ontology-evidence/claims/vendor-web.json +0 -977
  36. package/evidence/ontology-evidence/evidence-sources/catalog-processes-and-packaging.json +0 -48
  37. package/evidence/ontology-evidence/evidence-sources/plugins-hooks-discovery.json +0 -88
  38. package/evidence/ontology-evidence/evidence-sources/runtime-core.json +0 -78
  39. package/evidence/ontology-evidence/evidence-sources/vendor-web.json +0 -918
  40. package/evidence/ontology-evidence/manifest.json +0 -56
  41. package/graph/agent-catalog.graph.yaml +0 -43
  42. package/graph/edges/relations/agent-runtime/babysitter-agent.yaml +0 -31
  43. package/graph/edges/relations/agent-runtime/discovery-and-paths.yaml +0 -433
  44. package/graph/edges/relations/agent-runtime/session-and-lifecycle.yaml +0 -137
  45. package/graph/edges/relations/agent-runtime/transports-and-modalities.yaml +0 -387
  46. package/graph/edges/relations/capabilities/babysitter-agent-links.yaml +0 -46
  47. package/graph/edges/relations/capabilities/capability-vocabulary-links-agents.yaml +0 -478
  48. package/graph/edges/relations/capabilities/capability-vocabulary-links-providers.yaml +0 -40
  49. package/graph/edges/relations/capabilities/capability-vocabulary-links-transports.yaml +0 -70
  50. package/graph/edges/relations/capabilities/support-record-links-agents.yaml +0 -478
  51. package/graph/edges/relations/capabilities/support-record-links-providers.yaml +0 -40
  52. package/graph/edges/relations/capabilities/support-record-links-transports.yaml +0 -70
  53. package/graph/edges/relations/evolution.yaml +0 -16
  54. package/graph/edges/relations/hooks-and-plugins.yaml +0 -462
  55. package/graph/edges/relations/identity-babysitter-agent.yaml +0 -11
  56. package/graph/edges/relations/identity.yaml +0 -218
  57. package/graph/edges/relations/processes-and-packages.yaml +0 -71
  58. package/graph/edges/relations/provenance/babysitter-agent-and-claude-web.yaml +0 -102
  59. package/graph/edges/relations/provenance/catalog-core-agents.yaml +0 -370
  60. package/graph/edges/relations/provenance/catalog-core-models.yaml +0 -88
  61. package/graph/edges/relations/provenance/catalog-core-providers.yaml +0 -220
  62. package/graph/edges/relations/provenance/evidence-sources.yaml +0 -136
  63. package/graph/edges/relations/provenance/hooks-plugins-and-discovery-discovery.yaml +0 -124
  64. package/graph/edges/relations/provenance/hooks-plugins-and-discovery-hooks.yaml +0 -244
  65. package/graph/edges/relations/provenance/hooks-plugins-and-discovery-plugins.yaml +0 -166
  66. package/graph/edges/relations/provenance/processes-packages-and-paths.yaml +0 -490
  67. package/graph/edges/relations/provenance/runtime-and-capabilities-capability.yaml +0 -202
  68. package/graph/edges/relations/provenance/runtime-and-capabilities-capabilitySupport-agents-claude.yaml +0 -210
  69. package/graph/edges/relations/provenance/runtime-and-capabilities-capabilitySupport-agents-codex.yaml +0 -302
  70. package/graph/edges/relations/provenance/runtime-and-capabilities-capabilitySupport-agents-copilot.yaml +0 -170
  71. package/graph/edges/relations/provenance/runtime-and-capabilities-capabilitySupport-agents-cursor.yaml +0 -146
  72. package/graph/edges/relations/provenance/runtime-and-capabilities-capabilitySupport-agents-gemini.yaml +0 -143
  73. package/graph/edges/relations/provenance/runtime-and-capabilities-capabilitySupport-agents-omp.yaml +0 -76
  74. package/graph/edges/relations/provenance/runtime-and-capabilities-capabilitySupport-agents-openclaw.yaml +0 -112
  75. package/graph/edges/relations/provenance/runtime-and-capabilities-capabilitySupport-agents-opencode.yaml +0 -139
  76. package/graph/edges/relations/provenance/runtime-and-capabilities-capabilitySupport-agents-pi.yaml +0 -40
  77. package/graph/edges/relations/provenance/runtime-and-capabilities-capabilitySupport-providers.yaml +0 -112
  78. package/graph/edges/relations/provenance/runtime-and-capabilities-capabilitySupport-transports.yaml +0 -190
  79. package/graph/edges/relations/provenance/runtime-and-capabilities-modality.yaml +0 -88
  80. package/graph/edges/relations/provenance/runtime-and-capabilities-transport.yaml +0 -172
  81. package/graph/nodes/agents/babysitter-agent.yaml +0 -43
  82. package/graph/nodes/agents/products.yaml +0 -163
  83. package/graph/nodes/agents/versions.yaml +0 -282
  84. package/graph/nodes/capabilities/capabilities.yaml +0 -234
  85. package/graph/nodes/capabilities/modalities.yaml +0 -74
  86. package/graph/nodes/capabilities/supports/agents/babysitter-agent.yaml +0 -46
  87. package/graph/nodes/capabilities/supports/agents/claude.yaml +0 -166
  88. package/graph/nodes/capabilities/supports/agents/codex.yaml +0 -190
  89. package/graph/nodes/capabilities/supports/agents/copilot.yaml +0 -121
  90. package/graph/nodes/capabilities/supports/agents/cursor.yaml +0 -104
  91. package/graph/nodes/capabilities/supports/agents/gemini.yaml +0 -104
  92. package/graph/nodes/capabilities/supports/agents/omp.yaml +0 -74
  93. package/graph/nodes/capabilities/supports/agents/openclaw.yaml +0 -67
  94. package/graph/nodes/capabilities/supports/agents/opencode.yaml +0 -103
  95. package/graph/nodes/capabilities/supports/agents/pi.yaml +0 -65
  96. package/graph/nodes/capabilities/supports/provider-versions.yaml +0 -73
  97. package/graph/nodes/capabilities/supports/transport-runtimes.yaml +0 -122
  98. package/graph/nodes/evidence/babysitter-agent-and-claude-web.yaml +0 -83
  99. package/graph/nodes/evidence/claims.yaml +0 -315
  100. package/graph/nodes/evidence/claude-code-capability-claims.yaml +0 -170
  101. package/graph/nodes/evidence/claude-code-docs-core.yaml +0 -103
  102. package/graph/nodes/evidence/claude-code-docs-extensions.yaml +0 -114
  103. package/graph/nodes/evidence/codex-web.yaml +0 -155
  104. package/graph/nodes/evidence/copilot-web.yaml +0 -213
  105. package/graph/nodes/evidence/cursor-web.yaml +0 -191
  106. package/graph/nodes/evidence/evidence-sources.yaml +0 -206
  107. package/graph/nodes/evidence/gemini-cli-web.yaml +0 -177
  108. package/graph/nodes/evidence/omp-web.yaml +0 -129
  109. package/graph/nodes/evidence/opencode-web.yaml +0 -144
  110. package/graph/nodes/hooks-and-plugins/hook-mappings.yaml +0 -399
  111. package/graph/nodes/hooks-and-plugins/hook-surfaces.yaml +0 -160
  112. package/graph/nodes/hooks-and-plugins/plugin-artifacts.yaml +0 -229
  113. package/graph/nodes/hooks-and-plugins/plugin-targets.yaml +0 -330
  114. package/graph/nodes/models.yaml +0 -103
  115. package/graph/nodes/processes-and-packages/ci-surfaces.yaml +0 -45
  116. package/graph/nodes/processes-and-packages/packages.yaml +0 -89
  117. package/graph/nodes/processes-and-packages/processes.yaml +0 -44
  118. package/graph/nodes/providers/products.yaml +0 -102
  119. package/graph/nodes/providers/versions.yaml +0 -108
  120. package/graph/nodes/runtime-semantics/discovery-signals-hooks.yaml +0 -185
  121. package/graph/nodes/runtime-semantics/discovery-signals-host.yaml +0 -254
  122. package/graph/nodes/runtime-semantics/lifecycle-semantics.yaml +0 -151
  123. package/graph/nodes/runtime-semantics/paths.yaml +0 -289
  124. package/graph/nodes/runtime-semantics/session-semantics.yaml +0 -214
  125. package/graph/nodes/transports.yaml +0 -202
  126. package/graph/schema/ontology-schema.yaml +0 -529
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  `@a5c-ai/agent-catalog` is a public package for the shared agent ontology, discovery catalog, packaged evidence shards, and graph-backed helper APIs used across the Babysitter toolchain.
4
4
 
5
- The package is published through the central `release.yml` and `staging-publish.yml` workflows. `main` publishes production releases, and `staging` publishes prerelease builds with the `staging` dist-tag.
5
+ The package is published through the central `publish.yml` and `publish-packages-from-tag.yml` workflows. `main` publishes production releases, and `staging` publishes prerelease builds with the `staging` dist-tag.
6
6
 
7
7
  ## What ships
8
8
 
@@ -79,7 +79,7 @@ When graph structure or evidence claims change, update the YAML inputs first, th
79
79
 
80
80
  - The package must stay publishable: it ships with `publishConfig.access = public`, includes this README in `files`, and is owned by the central publish workflows.
81
81
  - `npm run ci:test --workspace=@a5c-ai/agent-catalog` is the release-equivalent contract for this workspace. It covers build output, graph validation, evidence freshness, package contract tests, and the publish lifecycle policy check.
82
- - `release.yml` and `staging-publish.yml` version, pack, and publish this package alongside the SDK, hooks-mux, agent-mux, and plugin compiler surfaces that consume it.
82
+ - `publish.yml` and `publish-packages-from-tag.yml` version, pack, and publish this package alongside the SDK, hooks-mux, agent-mux, and plugin compiler surfaces that consume it.
83
83
 
84
84
  ## Downstream compatibility
85
85
 
@@ -1,15 +1,22 @@
1
+ /**
2
+ * Atlas bridge for agent-catalog.
3
+ *
4
+ * Adapts the Atlas graph singleton (`@a5c-ai/atlas`) into the same query
5
+ * surface that `graph.ts` previously exposed. All data comes from Atlas —
6
+ * there is no fallback to local YAML files.
7
+ */
1
8
  import type { CatalogGraph, GraphDocument, GraphEdge, GraphNode, GraphRelationship, OntologySchema } from "./models";
2
- export declare function getCatalogGraph(): CatalogGraph;
3
- export declare function getGraphDocument(): GraphDocument;
4
- export declare function getOntologySchema(): OntologySchema;
5
9
  export declare function listGraphNodes(): GraphNode[];
6
10
  export declare function listNodesByKind(kind: GraphNode["kind"]): GraphNode[];
7
11
  export declare function getNodeById<TNode extends GraphNode = GraphNode>(nodeId: string): TNode | undefined;
8
- export declare function listGraphEdges(): GraphRelationship[];
9
- export declare function listRelationshipsForNode(nodeId: string): GraphRelationship[];
10
12
  export declare function listRelationshipsByRelation(relation: string): GraphRelationship[];
13
+ export declare function listGraphEdges(): GraphRelationship[];
11
14
  export declare function listOutgoingTargets(nodeId: string, relation: string): GraphNode[];
12
15
  export declare function listIncomingSources(nodeId: string, relation: string): GraphNode[];
16
+ export declare function listRelationshipsForNode(nodeId: string): GraphRelationship[];
17
+ export declare function getGraphDocument(): GraphDocument;
18
+ export declare function getOntologySchema(): OntologySchema;
19
+ export declare function getCatalogGraph(): CatalogGraph;
13
20
  export declare function listEdgesForNode(catalog: {
14
21
  graph: GraphEdge[];
15
22
  }, nodeId: string): GraphEdge[];
@@ -17,4 +24,5 @@ export declare function listEdgesByRelation(catalog: {
17
24
  graph: GraphEdge[];
18
25
  }, relation: string): GraphEdge[];
19
26
  export declare function assertGraphFileCoverage(): void;
20
- //# sourceMappingURL=graph.d.ts.map
27
+ export declare function clearAtlasBridgeCache(): void;
28
+ //# sourceMappingURL=atlas-bridge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"atlas-bridge.d.ts","sourceRoot":"","sources":["../src/atlas-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EACb,SAAS,EACT,SAAS,EACT,iBAAiB,EACjB,cAAc,EACf,MAAM,UAAU,CAAC;AAuElB,wBAAgB,cAAc,IAAI,SAAS,EAAE,CAE5C;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,GAAG,SAAS,EAAE,CAEpE;AAED,wBAAgB,WAAW,CAAC,KAAK,SAAS,SAAS,GAAG,SAAS,EAC7D,MAAM,EAAE,MAAM,GACb,KAAK,GAAG,SAAS,CAGnB;AAED,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,MAAM,GACf,iBAAiB,EAAE,CAErB;AAED,wBAAgB,cAAc,IAAI,iBAAiB,EAAE,CAEpD;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,SAAS,EAAE,CAOb;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,SAAS,EAAE,CAOb;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAI5E;AAMD,wBAAgB,gBAAgB,IAAI,aAAa,CAYhD;AAED,wBAAgB,iBAAiB,IAAI,cAAc,CAmBlD;AAED,wBAAgB,eAAe,IAAI,YAAY,CAO9C;AAMD,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE;IAAE,KAAK,EAAE,SAAS,EAAE,CAAA;CAAE,EAC/B,MAAM,EAAE,MAAM,GACb,SAAS,EAAE,CAIb;AAED,wBAAgB,mBAAmB,CACjC,OAAO,EAAE;IAAE,KAAK,EAAE,SAAS,EAAE,CAAA;CAAE,EAC/B,QAAQ,EAAE,MAAM,GACf,SAAS,EAAE,CAEb;AAED,wBAAgB,uBAAuB,IAAI,IAAI,CAE9C;AAMD,wBAAgB,qBAAqB,IAAI,IAAI,CAI5C"}
@@ -0,0 +1,182 @@
1
+ "use strict";
2
+ /**
3
+ * Atlas bridge for agent-catalog.
4
+ *
5
+ * Adapts the Atlas graph singleton (`@a5c-ai/atlas`) into the same query
6
+ * surface that `graph.ts` previously exposed. All data comes from Atlas —
7
+ * there is no fallback to local YAML files.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.listGraphNodes = listGraphNodes;
11
+ exports.listNodesByKind = listNodesByKind;
12
+ exports.getNodeById = getNodeById;
13
+ exports.listRelationshipsByRelation = listRelationshipsByRelation;
14
+ exports.listGraphEdges = listGraphEdges;
15
+ exports.listOutgoingTargets = listOutgoingTargets;
16
+ exports.listIncomingSources = listIncomingSources;
17
+ exports.listRelationshipsForNode = listRelationshipsForNode;
18
+ exports.getGraphDocument = getGraphDocument;
19
+ exports.getOntologySchema = getOntologySchema;
20
+ exports.getCatalogGraph = getCatalogGraph;
21
+ exports.listEdgesForNode = listEdgesForNode;
22
+ exports.listEdgesByRelation = listEdgesByRelation;
23
+ exports.assertGraphFileCoverage = assertGraphFileCoverage;
24
+ exports.clearAtlasBridgeCache = clearAtlasBridgeCache;
25
+ const atlas_1 = require("@a5c-ai/atlas");
26
+ // ---------------------------------------------------------------------------
27
+ // Record adaptation: Atlas `_kind` -> agent-catalog `kind`
28
+ // ---------------------------------------------------------------------------
29
+ const AGENT_CATALOG_KINDS = new Set([
30
+ "AdapterModel", "AgentProduct", "AgentVersion", "Capability", "CapabilitySupport",
31
+ "CiSurface", "Claim", "DiscoverySignal", "EvidenceSource",
32
+ "HookMapping", "HookSurface", "LifecycleSemantics", "Modality",
33
+ "ModelFamily", "ModelProviderProduct", "ModelProviderVersion", "ModelVersion",
34
+ "PackageSurface", "PathDescriptor", "PluginArtifact", "PluginTarget",
35
+ "ProcessDescriptor", "ProviderTranslation", "SessionSemantics", "TransportProtocol", "TransportRuntime",
36
+ ]);
37
+ function isAgentCatalogRecord(record) {
38
+ return AGENT_CATALOG_KINDS.has(record._kind);
39
+ }
40
+ function adaptRecord(record) {
41
+ const { _kind, _file, _cluster, ...rest } = record;
42
+ return { ...rest, kind: _kind };
43
+ }
44
+ function adaptEdge(edge, index) {
45
+ return {
46
+ id: `edge:${edge.from}->${edge.to}:${edge.kind}:${index}`,
47
+ relation: edge.kind,
48
+ from: edge.from,
49
+ to: edge.to,
50
+ ...(edge.attributes ?? {}),
51
+ };
52
+ }
53
+ // ---------------------------------------------------------------------------
54
+ // Cached projections
55
+ // ---------------------------------------------------------------------------
56
+ let cachedNodes;
57
+ let cachedEdges;
58
+ let cachedNodeIds;
59
+ function allNodes() {
60
+ if (!cachedNodes) {
61
+ cachedNodes = atlas_1.atlas.getAllRecords().filter(isAgentCatalogRecord).map(adaptRecord);
62
+ }
63
+ return cachedNodes;
64
+ }
65
+ function agentCatalogNodeIds() {
66
+ if (!cachedNodeIds) {
67
+ cachedNodeIds = new Set(allNodes().map((node) => node.id));
68
+ }
69
+ return cachedNodeIds;
70
+ }
71
+ function allEdges() {
72
+ if (!cachedEdges) {
73
+ const nodeIds = agentCatalogNodeIds();
74
+ cachedEdges = atlas_1.atlas
75
+ .getIndex()
76
+ .edges.filter((edge) => nodeIds.has(edge.from) && nodeIds.has(edge.to))
77
+ .map(adaptEdge);
78
+ }
79
+ return cachedEdges;
80
+ }
81
+ // ---------------------------------------------------------------------------
82
+ // Public API — drop-in replacements for graph.ts functions
83
+ // ---------------------------------------------------------------------------
84
+ function listGraphNodes() {
85
+ return [...allNodes()];
86
+ }
87
+ function listNodesByKind(kind) {
88
+ return atlas_1.atlas.getRecordsByKind(kind).filter(isAgentCatalogRecord).map(adaptRecord);
89
+ }
90
+ function getNodeById(nodeId) {
91
+ const record = atlas_1.atlas.getRecord(nodeId);
92
+ return record ? adaptRecord(record) : undefined;
93
+ }
94
+ function listRelationshipsByRelation(relation) {
95
+ return allEdges().filter((edge) => edge.relation === relation);
96
+ }
97
+ function listGraphEdges() {
98
+ return [...allEdges()];
99
+ }
100
+ function listOutgoingTargets(nodeId, relation) {
101
+ return atlas_1.atlas
102
+ .getOutgoing(nodeId)
103
+ .filter((edge) => edge.kind === relation)
104
+ .map((edge) => atlas_1.atlas.getRecord(edge.to))
105
+ .filter((record) => record !== undefined)
106
+ .map(adaptRecord);
107
+ }
108
+ function listIncomingSources(nodeId, relation) {
109
+ return atlas_1.atlas
110
+ .getIncoming(nodeId)
111
+ .filter((edge) => edge.kind === relation)
112
+ .map((edge) => atlas_1.atlas.getRecord(edge.from))
113
+ .filter((record) => record !== undefined)
114
+ .map(adaptRecord);
115
+ }
116
+ function listRelationshipsForNode(nodeId) {
117
+ return allEdges().filter((edge) => edge.from === nodeId || edge.to === nodeId);
118
+ }
119
+ // ---------------------------------------------------------------------------
120
+ // Synthetic graph document and schema
121
+ // ---------------------------------------------------------------------------
122
+ function getGraphDocument() {
123
+ return {
124
+ kind: "GraphDocument",
125
+ id: "graph:agent-catalog",
126
+ graphId: "graph:agent-catalog",
127
+ schemaVersion: "2026.04.agent-catalog-v2",
128
+ catalogVersion: "2026.04.agent-catalog-v2",
129
+ generatedAt: new Date().toISOString(),
130
+ owners: ["@a5c-ai"],
131
+ imports: [],
132
+ schemaPath: "schema/ontology-schema.yaml",
133
+ };
134
+ }
135
+ function getOntologySchema() {
136
+ const nodeKinds = {};
137
+ for (const [name, def] of Object.entries(atlas_1.atlas.getNodeKinds())) {
138
+ nodeKinds[name] = { requiredAttributes: ["id", "kind"], ...def };
139
+ }
140
+ const edgeKinds = {};
141
+ for (const [name, def] of Object.entries(atlas_1.atlas.getEdgeKinds())) {
142
+ edgeKinds[name] = { requiredAttributes: ["id", "relation", "from", "to"], ...def };
143
+ }
144
+ return {
145
+ kind: "OntologySchema",
146
+ id: "schema:agent-catalog-ontology",
147
+ schemaId: "schema:agent-catalog-ontology",
148
+ version: "2026.04.agent-catalog-v2",
149
+ nodeKinds,
150
+ edgeKinds,
151
+ versionScopingRules: [],
152
+ deprecationRules: [],
153
+ };
154
+ }
155
+ function getCatalogGraph() {
156
+ return {
157
+ document: getGraphDocument(),
158
+ schema: getOntologySchema(),
159
+ nodes: allNodes(),
160
+ edges: allEdges(),
161
+ };
162
+ }
163
+ // ---------------------------------------------------------------------------
164
+ // Utility functions (previously in graph.ts)
165
+ // ---------------------------------------------------------------------------
166
+ function listEdgesForNode(catalog, nodeId) {
167
+ return catalog.graph.filter((edge) => edge.from === nodeId || edge.to === nodeId);
168
+ }
169
+ function listEdgesByRelation(catalog, relation) {
170
+ return catalog.graph.filter((edge) => edge.relation === relation);
171
+ }
172
+ function assertGraphFileCoverage() {
173
+ // No-op: validation handled by Atlas indexer at build time.
174
+ }
175
+ // ---------------------------------------------------------------------------
176
+ // Cache management
177
+ // ---------------------------------------------------------------------------
178
+ function clearAtlasBridgeCache() {
179
+ cachedNodes = undefined;
180
+ cachedEdges = undefined;
181
+ cachedNodeIds = undefined;
182
+ }
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -12,8 +12,9 @@ exports.listCliCapabilitySupport = listCliCapabilitySupport;
12
12
  exports.listCliAgentRelations = listCliAgentRelations;
13
13
  exports.listCliPackageRelations = listCliPackageRelations;
14
14
  exports.listCliProcessRelations = listCliProcessRelations;
15
+ const atlas_1 = require("@a5c-ai/atlas");
15
16
  const data_1 = require("./data");
16
- const graph_1 = require("./graph");
17
+ const atlas_bridge_1 = require("./atlas-bridge");
17
18
  const transport_mux_cutover_1 = require("./transport-mux-cutover");
18
19
  function valueAsString(value) {
19
20
  return typeof value === "string" ? value : "";
@@ -69,8 +70,8 @@ function toCliGraphNodeRow(node) {
69
70
  };
70
71
  }
71
72
  function toCliGraphEdgeRow(edge) {
72
- const fromNode = (0, graph_1.getNodeById)(edge.from);
73
- const toNode = (0, graph_1.getNodeById)(edge.to);
73
+ const fromNode = (0, atlas_bridge_1.getNodeById)(edge.from);
74
+ const toNode = (0, atlas_bridge_1.getNodeById)(edge.to);
74
75
  const { id, relation, from, to, evidenceRefs, ...attributes } = edge;
75
76
  return {
76
77
  edgeId: id,
@@ -87,16 +88,27 @@ function toCliGraphEdgeRow(edge) {
87
88
  };
88
89
  }
89
90
  function claimNodesFor(nodeId) {
90
- return (0, graph_1.listOutgoingTargets)(nodeId, "supported_by_claim").filter((node) => node.kind === "Claim");
91
+ const edgeBased = (0, atlas_bridge_1.listOutgoingTargets)(nodeId, "supported_by_claim").filter((node) => node.kind === "Claim");
92
+ if (edgeBased.length > 0)
93
+ return edgeBased;
94
+ // Fallback: find Claim nodes whose evidenceIds overlap with the node's evidenceRefs
95
+ const node = (0, atlas_bridge_1.getNodeById)(nodeId);
96
+ if (!node)
97
+ return [];
98
+ const evidenceIds = stringArray(node.evidenceRefs);
99
+ if (evidenceIds.length === 0)
100
+ return [];
101
+ return (0, atlas_bridge_1.listGraphNodes)()
102
+ .filter((candidate) => candidate.kind === "Claim" && stringArray(candidate.evidenceIds).some((id) => evidenceIds.includes(id)));
91
103
  }
92
104
  function sourceNodesForClaim(claimNodeId) {
93
- const claimNode = (0, graph_1.getNodeById)(claimNodeId);
94
- const sourceNodes = (0, graph_1.listOutgoingTargets)(claimNodeId, "sourced_from").filter((node) => node.kind === "EvidenceSource");
105
+ const claimNode = (0, atlas_bridge_1.getNodeById)(claimNodeId);
106
+ const sourceNodes = (0, atlas_bridge_1.listOutgoingTargets)(claimNodeId, "sourced_from").filter((node) => node.kind === "EvidenceSource");
95
107
  if (sourceNodes.length > 0) {
96
108
  return sourceNodes;
97
109
  }
98
110
  return stringArray(claimNode?.evidenceIds)
99
- .map((evidenceId) => (0, graph_1.getNodeById)(`evidence:${evidenceId}`))
111
+ .map((evidenceId) => (0, atlas_bridge_1.getNodeById)(`evidence:${evidenceId}`))
100
112
  .filter((node) => node?.kind === "EvidenceSource");
101
113
  }
102
114
  function toCliEvidenceClaimRow(node) {
@@ -114,17 +126,17 @@ function toCliEvidenceClaimRow(node) {
114
126
  };
115
127
  }
116
128
  function claimsForEvidence(evidenceId) {
117
- const directClaimIds = (0, graph_1.listGraphEdges)()
129
+ const directClaimIds = (0, atlas_bridge_1.listGraphEdges)()
118
130
  .filter((edge) => edge.relation === "sourced_from" && edge.to === `evidence:${evidenceId}`)
119
131
  .map((edge) => {
120
- const claimNode = (0, graph_1.getNodeById)(edge.from);
132
+ const claimNode = (0, atlas_bridge_1.getNodeById)(edge.from);
121
133
  return valueAsString(claimNode?.claimId);
122
134
  })
123
135
  .filter(Boolean);
124
136
  if (directClaimIds.length > 0) {
125
137
  return uniqueStrings(directClaimIds);
126
138
  }
127
- return (0, graph_1.listGraphNodes)()
139
+ return (0, atlas_bridge_1.listGraphNodes)()
128
140
  .filter((node) => node.kind === "Claim" && stringArray(node.evidenceIds).includes(evidenceId))
129
141
  .map((node) => valueAsString(node.claimId))
130
142
  .filter(Boolean);
@@ -141,12 +153,12 @@ function toCliEvidenceSourceRow(node) {
141
153
  };
142
154
  }
143
155
  function capabilityLabel(capabilityId) {
144
- return displayLabel((0, graph_1.getNodeById)(`capability:${capabilityId}`)) || capabilityId;
156
+ return displayLabel((0, atlas_bridge_1.getNodeById)(`capability:${capabilityId}`)) || capabilityId;
145
157
  }
146
158
  function nodeRelationRow(edge, direction, nodeId) {
147
159
  const row = toCliGraphEdgeRow(edge);
148
160
  const relatedNodeId = direction === "outgoing" ? edge.to : edge.from;
149
- const relatedNode = (0, graph_1.getNodeById)(relatedNodeId);
161
+ const relatedNode = (0, atlas_bridge_1.getNodeById)(relatedNodeId);
150
162
  return {
151
163
  ...row,
152
164
  direction,
@@ -174,12 +186,12 @@ function getCliCatalogSummary() {
174
186
  };
175
187
  }
176
188
  function listCliGraphNodes(kind) {
177
- return (0, graph_1.listGraphNodes)()
189
+ return (0, atlas_bridge_1.listGraphNodes)()
178
190
  .filter((node) => !kind || node.kind === kind)
179
191
  .map(toCliGraphNodeRow);
180
192
  }
181
193
  function listCliGraphEdges(filter = {}) {
182
- return (0, graph_1.listGraphEdges)()
194
+ return (0, atlas_bridge_1.listGraphEdges)()
183
195
  .filter((edge) => !filter.relation || edge.relation === filter.relation)
184
196
  .filter((edge) => !filter.fromNodeId || edge.from === filter.fromNodeId)
185
197
  .filter((edge) => !filter.toNodeId || edge.to === filter.toNodeId)
@@ -187,7 +199,7 @@ function listCliGraphEdges(filter = {}) {
187
199
  .map(toCliGraphEdgeRow);
188
200
  }
189
201
  function listCliNodeRelations(filter) {
190
- return (0, graph_1.listGraphEdges)()
202
+ return (0, atlas_bridge_1.listGraphEdges)()
191
203
  .filter((edge) => !filter.relation || edge.relation === filter.relation)
192
204
  .filter((edge) => {
193
205
  if (filter.direction === "incoming") {
@@ -201,7 +213,7 @@ function listCliNodeRelations(filter) {
201
213
  .map((edge) => nodeRelationRow(edge, edge.from === filter.nodeId ? "outgoing" : "incoming", filter.nodeId));
202
214
  }
203
215
  function getCliNodeQuery(nodeId) {
204
- const node = (0, graph_1.getNodeById)(nodeId);
216
+ const node = (0, atlas_bridge_1.getNodeById)(nodeId);
205
217
  if (!node) {
206
218
  return undefined;
207
219
  }
@@ -215,7 +227,7 @@ function getCliNodeQuery(nodeId) {
215
227
  }
216
228
  function listCliEvidenceClaims(filter = {}) {
217
229
  const nodeIdFilter = filter.nodeId;
218
- const claims = (nodeIdFilter ? claimNodesFor(nodeIdFilter) : (0, graph_1.listGraphNodes)().filter((node) => node.kind === "Claim")).map(toCliEvidenceClaimRow);
230
+ const claims = (nodeIdFilter ? claimNodesFor(nodeIdFilter) : (0, atlas_bridge_1.listGraphNodes)().filter((node) => node.kind === "Claim")).map(toCliEvidenceClaimRow);
219
231
  return claims
220
232
  .filter((claim) => !filter.claimId || claim.claimId === filter.claimId)
221
233
  .filter((claim) => !filter.subjectId || claim.subjectId === filter.subjectId)
@@ -226,15 +238,15 @@ function listCliEvidenceSources(filter = {}) {
226
238
  const nodeIdFilter = filter.nodeId;
227
239
  const sources = (nodeIdFilter
228
240
  ? uniqueStrings(claimNodesFor(nodeIdFilter).flatMap((claim) => sourceNodesForClaim(claim.id).map((source) => source.id)))
229
- .map((nodeId) => (0, graph_1.getNodeById)(nodeId))
241
+ .map((nodeId) => (0, atlas_bridge_1.getNodeById)(nodeId))
230
242
  .filter((node) => Boolean(node))
231
- : (0, graph_1.listGraphNodes)().filter((node) => node.kind === "EvidenceSource")).map(toCliEvidenceSourceRow);
243
+ : (0, atlas_bridge_1.listGraphNodes)().filter((node) => node.kind === "EvidenceSource")).map(toCliEvidenceSourceRow);
232
244
  return sources
233
245
  .filter((source) => !filter.evidenceId || source.evidenceId === filter.evidenceId)
234
246
  .filter((source) => !filter.claimId || source.claimIds.includes(filter.claimId));
235
247
  }
236
248
  function listCliCapabilitySupport(filter = {}) {
237
- return (0, graph_1.listGraphNodes)()
249
+ return (0, atlas_bridge_1.listGraphNodes)()
238
250
  .filter((node) => node.kind === "CapabilitySupport")
239
251
  .filter((node) => !filter.supportId || valueAsString(node.supportId) === filter.supportId)
240
252
  .filter((node) => !filter.capabilityId || valueAsString(node.capabilityId) === filter.capabilityId)
@@ -245,7 +257,7 @@ function listCliCapabilitySupport(filter = {}) {
245
257
  .filter((node) => !filter.versionRange || valueAsString(node.versionRange) === filter.versionRange)
246
258
  .map((node) => {
247
259
  const claimRows = listCliEvidenceClaims({ nodeId: node.id });
248
- const subjectNode = (0, graph_1.getNodeById)(valueAsString(node.subjectId));
260
+ const subjectNode = (0, atlas_bridge_1.getNodeById)(valueAsString(node.subjectId));
249
261
  const sourceIds = uniqueStrings(claimRows.flatMap((claim) => claim.sourceIds));
250
262
  return {
251
263
  supportId: valueAsString(node.supportId),
@@ -264,7 +276,7 @@ function listCliCapabilitySupport(filter = {}) {
264
276
  });
265
277
  }
266
278
  function listCliAgentRelations(agentId) {
267
- return (0, graph_1.listGraphNodes)()
279
+ return (0, atlas_bridge_1.listGraphNodes)()
268
280
  .filter((node) => node.kind === "AgentVersion")
269
281
  .filter((node) => !agentId || valueAsString(node.agentId) === agentId)
270
282
  .map((node) => {
@@ -287,15 +299,15 @@ function listCliAgentRelations(agentId) {
287
299
  });
288
300
  }
289
301
  function listCliPackageRelations(packageId) {
290
- return (0, graph_1.listGraphNodes)()
302
+ return (0, atlas_bridge_1.listGraphNodes)()
291
303
  .filter((node) => node.kind === "PackageSurface")
292
304
  .filter((node) => !packageId || valueAsString(node.packageId) === packageId)
293
305
  .map((node) => {
294
- const processes = (0, graph_1.listOutgoingTargets)(node.id, "surfaces_process");
295
- const paths = (0, graph_1.listOutgoingTargets)(node.id, "references_path");
296
- const ciSurfaces = (0, graph_1.listOutgoingTargets)(node.id, "validated_by_ci");
297
- const graphIds = (0, graph_1.listGraphEdges)()
298
- .filter((edge) => edge.from === node.id && edge.relation === "wraps_graph")
306
+ const processes = (0, atlas_bridge_1.listOutgoingTargets)(node.id, "surfaces_process");
307
+ const paths = (0, atlas_bridge_1.listOutgoingTargets)(node.id, "references_path");
308
+ const ciSurfaces = (0, atlas_bridge_1.listOutgoingTargets)(node.id, "validated_by_ci");
309
+ const graphIds = atlas_1.atlas.getOutgoing(node.id)
310
+ .filter((edge) => edge.kind === "wraps_graph")
299
311
  .map((edge) => edge.to);
300
312
  return {
301
313
  nodeId: node.id,
@@ -315,11 +327,11 @@ function listCliPackageRelations(packageId) {
315
327
  });
316
328
  }
317
329
  function listCliProcessRelations(processId) {
318
- return (0, graph_1.listGraphNodes)()
330
+ return (0, atlas_bridge_1.listGraphNodes)()
319
331
  .filter((node) => node.kind === "ProcessDescriptor")
320
332
  .filter((node) => !processId || valueAsString(node.processId) === processId)
321
333
  .map((node) => {
322
- const paths = (0, graph_1.listOutgoingTargets)(node.id, "references_path");
334
+ const paths = (0, atlas_bridge_1.listOutgoingTargets)(node.id, "references_path");
323
335
  return {
324
336
  nodeId: node.id,
325
337
  processId: valueAsString(node.processId),
@@ -1 +1 @@
1
- {"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../src/data.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EAIpB,WAAW,EACX,cAAc,EAEd,aAAa,EAEb,uBAAuB,EACvB,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EACf,oBAAoB,EACpB,YAAY,EACZ,kBAAkB,EAGlB,sBAAsB,EACtB,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACnB,cAAc,EACf,MAAM,UAAU,CAAC;AA0hBlB,UAAU,qBAAqB;IAC7B,KAAK,EAAE,YAAY,CAAC;IACpB,aAAa,EAAE,aAAa,CAAC;IAC7B,cAAc,EAAE,cAAc,CAAC;IAC/B,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,SAAS,EAAE,oBAAoB,EAAE,CAAC;IAClC,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,YAAY,EAAE,oBAAoB,EAAE,CAAC;IACrC,UAAU,EAAE,kBAAkB,EAAE,CAAC;IACjC,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,gBAAgB,EAAE,eAAe,EAAE,CAAC;IACpC,SAAS,EAAE,iBAAiB,EAAE,CAAC;IAC/B,kBAAkB,EAAE,iBAAiB,EAAE,CAAC;IACxC,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACxC,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAC,CAAC;IACxD,sBAAsB,EAAE,qBAAqB,EAAE,CAAC;IAChD,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;IAC1D,aAAa,EAAE,iBAAiB,EAAE,CAAC;IACnC,aAAa,EAAE,sBAAsB,EAAE,CAAC;IACxC,oBAAoB,EAAE,mBAAmB,EAAE,CAAC;IAC5C,YAAY,EAAE,YAAY,CAAC;CAC5B;AA2FD,wBAAgB,0BAA0B,IAAI,IAAI,CAEjD;AAED,wBAAgB,mBAAmB,IAAI,qBAAqB,CAK3D;AAoDD,eAAO,MAAM,cAAc,eAA8D,CAAC;AAC1F,eAAO,MAAM,eAAe,gBAA+D,CAAC;AAC5F,eAAO,MAAM,QAAQ,kBAAwD,CAAC;AAC9E,eAAO,MAAM,MAAM,eAAsD,CAAC;AAC1E,eAAO,MAAM,SAAS,wBAAyD,CAAC;AAChF,eAAO,MAAM,MAAM,gBAAsD,CAAC;AAC1E,eAAO,MAAM,UAAU,uBAA0D,CAAC;AAClF,eAAO,MAAM,YAAY,wBAA4D,CAAC;AACtF,eAAO,MAAM,UAAU,sBAA0D,CAAC;AAClF,eAAO,MAAM,KAAK,kBAAqD,CAAC;AACxE,eAAO,MAAM,eAAe,iBAA8D,CAAC;AAC3F,eAAO,MAAM,iBAAiB,mBAAgE,CAAC;AAC/F,eAAO,MAAM,SAAS,qBAAyD,CAAC;AAChF,eAAO,MAAM,oBAAoB,qBAAkE,CAAC;AACpG,eAAO,MAAM,MAAM,gBAAsD,CAAC;AAC1E,eAAO,MAAM,eAAe,0BAA8D,CAAC;AAC3F,eAAO,MAAM,oBAAoB,qCAAmE,CAAC;AACrG,eAAO,MAAM,yBAAyB,yBAAsE,CAAC;AAC7G,eAAO,MAAM,iBAAiB,yCAAiE,CAAC;AAChG,eAAO,MAAM,cAAc,qBAA6D,CAAC;AACzF,eAAO,MAAM,cAAc,0BAA6D,CAAC;AACzF,eAAO,MAAM,qBAAqB,uBAAoE,CAAC;AACvG,eAAO,MAAM,aAAa,cAA6D,CAAC"}
1
+ {"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../src/data.ts"],"names":[],"mappings":"AAiDA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EAEZ,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EAIpB,WAAW,EAEX,cAAc,EAEd,aAAa,EAKb,uBAAuB,EACvB,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EACf,oBAAoB,EACpB,YAAY,EACZ,kBAAkB,EAGlB,sBAAsB,EACtB,iBAAiB,EACjB,aAAa,EAEb,mBAAmB,EACnB,cAAc,EACf,MAAM,UAAU,CAAC;AAq3BlB,UAAU,qBAAqB;IAC7B,KAAK,EAAE,YAAY,CAAC;IACpB,aAAa,EAAE,aAAa,CAAC;IAC7B,cAAc,EAAE,cAAc,CAAC;IAC/B,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,SAAS,EAAE,oBAAoB,EAAE,CAAC;IAClC,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,YAAY,EAAE,oBAAoB,EAAE,CAAC;IACrC,UAAU,EAAE,kBAAkB,EAAE,CAAC;IACjC,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,gBAAgB,EAAE,eAAe,EAAE,CAAC;IACpC,SAAS,EAAE,iBAAiB,EAAE,CAAC;IAC/B,kBAAkB,EAAE,iBAAiB,EAAE,CAAC;IACxC,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACxC,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAC,CAAC;IACxD,sBAAsB,EAAE,qBAAqB,EAAE,CAAC;IAChD,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;IAC1D,aAAa,EAAE,iBAAiB,EAAE,CAAC;IACnC,aAAa,EAAE,sBAAsB,EAAE,CAAC;IACxC,oBAAoB,EAAE,mBAAmB,EAAE,CAAC;IAC5C,YAAY,EAAE,YAAY,CAAC;CAC5B;AA2FD,wBAAgB,0BAA0B,IAAI,IAAI,CAGjD;AAED,wBAAgB,mBAAmB,IAAI,qBAAqB,CAK3D;AAoDD,eAAO,MAAM,cAAc,eAA8D,CAAC;AAC1F,eAAO,MAAM,eAAe,gBAA+D,CAAC;AAC5F,eAAO,MAAM,QAAQ,kBAAwD,CAAC;AAC9E,eAAO,MAAM,MAAM,eAAsD,CAAC;AAC1E,eAAO,MAAM,SAAS,wBAAyD,CAAC;AAChF,eAAO,MAAM,MAAM,gBAAsD,CAAC;AAC1E,eAAO,MAAM,UAAU,uBAA0D,CAAC;AAClF,eAAO,MAAM,YAAY,wBAA4D,CAAC;AACtF,eAAO,MAAM,UAAU,sBAA0D,CAAC;AAClF,eAAO,MAAM,KAAK,kBAAqD,CAAC;AACxE,eAAO,MAAM,eAAe,iBAA8D,CAAC;AAC3F,eAAO,MAAM,iBAAiB,mBAAgE,CAAC;AAC/F,eAAO,MAAM,SAAS,qBAAyD,CAAC;AAChF,eAAO,MAAM,oBAAoB,qBAAkE,CAAC;AACpG,eAAO,MAAM,MAAM,gBAAsD,CAAC;AAC1E,eAAO,MAAM,eAAe,0BAA8D,CAAC;AAC3F,eAAO,MAAM,oBAAoB,qCAAmE,CAAC;AACrG,eAAO,MAAM,yBAAyB,yBAAsE,CAAC;AAC7G,eAAO,MAAM,iBAAiB,yCAAiE,CAAC;AAChG,eAAO,MAAM,cAAc,qBAA6D,CAAC;AACzF,eAAO,MAAM,cAAc,0BAA6D,CAAC;AACzF,eAAO,MAAM,qBAAqB,uBAAoE,CAAC;AACvG,eAAO,MAAM,aAAa,cAA6D,CAAC"}