II.
Page JSON
Structured · livepage:process-gaps-GAP-L1-P2-repo-graph-pluginartifact
GAP-L1-P2-repo-graph-pluginartifact json
Inspect the normalized record payload exactly as the atlas UI reads it.
{
"id": "page:process-gaps-GAP-L1-P2-repo-graph-pluginartifact",
"_kind": "Page",
"_file": "wiki/process/gaps/GAP-L1-P2-repo-graph-pluginartifact.md",
"_cluster": "wiki",
"attributes": {
"nodeKind": "Page",
"title": "GAP-L1-P2-repo-graph-pluginartifact",
"displayName": "GAP-L1-P2-repo-graph-pluginartifact",
"slug": "process/gaps/GAP-L1-P2-repo-graph-pluginartifact",
"articlePath": "wiki/process/gaps/GAP-L1-P2-repo-graph-pluginartifact.md",
"article": "# GAP-L1-P2-repo-graph-pluginartifact\n\n| Field | Value |\n|---|---|\n| id | gap:repo-graph-pluginartifact |\n| title | PluginArtifact NodeKind from repo absent in v6 schema |\n| level | 1 |\n| priority | P2 |\n| discoveredAt | 2026-04-28T00:00:00Z |\n| source | packages/agent-catalog/graph/schema/ontology-schema.yaml |\n| status | open |\n| owner | tbd |\n\n## Current state\nRepo has `PluginArtifact` (`artifactKind`, `pathPattern`, `installerSurface`) emitted via `PluginTarget emits_artifact PluginArtifact`. v6 schema has `NativeExtension`/`PortableExtension`/`Plugin` but no concept of the **physical artifact files** a plugin compiles to.\n\n## Desired state\nAdd `PluginArtifact` NodeKind under cluster 7 with edge `NativeExtension emits_artifact PluginArtifact`. Distinguishes \"plugin definition\" (Plugin node) from \"compiled artifact on disk\" (PluginArtifact node).\n\n## Evidence\n- packages/agent-catalog/graph/schema/ontology-schema.yaml (lines 164-171, 385-394)\n\n## Propagation status\n- Level 1: open\n- Level 2: not-started\n\n## Propagation chain\n- Level 1: add NodeKind + edge.\n- Level 2: extensions-plugins.md gains a section.\n\n## Notes\nCloses another slice of repo→v6 mapping OQ.\n",
"documents": []
},
"outgoingEdges": [],
"incomingEdges": []
}