@getbourdon/conformance 0.1.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.
Files changed (70) hide show
  1. package/LICENSE +157 -0
  2. package/README.md +26 -0
  3. package/dist/index.cjs +65 -0
  4. package/dist/index.cjs.map +1 -0
  5. package/dist/index.d.cts +36 -0
  6. package/dist/index.d.ts +36 -0
  7. package/dist/index.js +36 -0
  8. package/dist/index.js.map +1 -0
  9. package/fixtures/README.md +61 -0
  10. package/fixtures/fed_seed_library/agents/claude-code.l5.yaml +63 -0
  11. package/fixtures/fed_seed_library/agents/codex.l5.yaml +35 -0
  12. package/fixtures/l5_manifests/invalid/bad-agent-type-enum.json +8 -0
  13. package/fixtures/l5_manifests/invalid/bad-spec-version-pattern.json +8 -0
  14. package/fixtures/l5_manifests/invalid/entity-bad-visibility-enum.json +14 -0
  15. package/fixtures/l5_manifests/invalid/entity-missing-name.json +13 -0
  16. package/fixtures/l5_manifests/invalid/missing-required-last_updated.json +7 -0
  17. package/fixtures/l5_manifests/invalid/reasons.json +75 -0
  18. package/fixtures/l5_manifests/valid/full.json +60 -0
  19. package/fixtures/l5_manifests/valid/minimal.json +8 -0
  20. package/fixtures/l5_manifests/valid/team-and-private.json +51 -0
  21. package/fixtures/l5_schema.json +209 -0
  22. package/fixtures/l5_todict.json +253 -0
  23. package/fixtures/leak_cases.json +229 -0
  24. package/fixtures/manifest.json +304 -0
  25. package/fixtures/mcp_snapshots/_normalizer.json +134 -0
  26. package/fixtures/mcp_snapshots/commit_to_federation.req.json +19 -0
  27. package/fixtures/mcp_snapshots/commit_to_federation.res.json +12 -0
  28. package/fixtures/mcp_snapshots/compile_codex_turn.req.json +7 -0
  29. package/fixtures/mcp_snapshots/compile_codex_turn.res.json +5 -0
  30. package/fixtures/mcp_snapshots/export_agents.req.json +4 -0
  31. package/fixtures/mcp_snapshots/export_agents.res.json +73 -0
  32. package/fixtures/mcp_snapshots/find_entity.req.json +7 -0
  33. package/fixtures/mcp_snapshots/find_entity.res.json +24 -0
  34. package/fixtures/mcp_snapshots/get_cross_agent_summary.req.json +7 -0
  35. package/fixtures/mcp_snapshots/get_cross_agent_summary.res.json +42 -0
  36. package/fixtures/mcp_snapshots/get_deeper_context.req.json +7 -0
  37. package/fixtures/mcp_snapshots/get_deeper_context.res.json +7 -0
  38. package/fixtures/mcp_snapshots/list_agents.req.json +4 -0
  39. package/fixtures/mcp_snapshots/list_agents.res.json +6 -0
  40. package/fixtures/mcp_snapshots/list_recent_work.req.json +8 -0
  41. package/fixtures/mcp_snapshots/list_recent_work.res.json +38 -0
  42. package/fixtures/mcp_snapshots/prepare_recognition_context.req.json +7 -0
  43. package/fixtures/mcp_snapshots/prepare_recognition_context.res.json +19 -0
  44. package/fixtures/mcp_snapshots/query_agent_memory.req.json +8 -0
  45. package/fixtures/mcp_snapshots/query_agent_memory.res.json +25 -0
  46. package/fixtures/mcp_snapshots/seed_library.json +24 -0
  47. package/fixtures/native_stores/README.json +24 -0
  48. package/fixtures/native_stores/claude_code/expected_l5.json +72 -0
  49. package/fixtures/native_stores/claude_code/store/auto_memory/MEMORY.md +3 -0
  50. package/fixtures/native_stores/claude_code/store/auto_memory/clyde.md +7 -0
  51. package/fixtures/native_stores/claude_code/store/auto_memory/ry-guy.md +6 -0
  52. package/fixtures/native_stores/claude_code/store/brain/LOG/2026-06-28-pc.md +3 -0
  53. package/fixtures/native_stores/claude_code/store/brain/PROJECTS/Bourdon/OVERVIEW.md +3 -0
  54. package/fixtures/native_stores/claude_code/store/brain/PROJECTS/OldThing/OVERVIEW.md +5 -0
  55. package/fixtures/native_stores/claude_code/store/knowledge_graph/memory.jsonl +3 -0
  56. package/fixtures/native_stores/github_copilot/cache/github-copilot/payload.json +21 -0
  57. package/fixtures/native_stores/github_copilot/expected_l5.json +67 -0
  58. package/fixtures/native_stores/hermes/expected_l5.json +108 -0
  59. package/fixtures/native_stores/hermes/store/.hermes/memories/memory.md +2 -0
  60. package/fixtures/native_stores/hermes/store/.hermes/memories/user.md +2 -0
  61. package/fixtures/native_stores/hermes/store/.hermes/state.db +0 -0
  62. package/fixtures/on_disk/audit.jsonl +5 -0
  63. package/fixtures/on_disk/auth_vectors.json +55 -0
  64. package/fixtures/on_disk/federation.yaml +22 -0
  65. package/fixtures/recognition_golden_v1.yaml +106 -0
  66. package/fixtures/recognition_vectors.json +448 -0
  67. package/fixtures/redaction_battery.json +473 -0
  68. package/fixtures/tier_matrix.json +398 -0
  69. package/fixtures/turn_compiler_vectors.json +645 -0
  70. package/package.json +39 -0
@@ -0,0 +1,12 @@
1
+ {
2
+ "agent_id": "clyde",
3
+ "entities_added": 1,
4
+ "entities_updated": 0,
5
+ "last_updated": "<frozen>",
6
+ "mode": "merge",
7
+ "path": "<frozen>",
8
+ "sessions_added": 1,
9
+ "sessions_updated": 0,
10
+ "total_entities": 1,
11
+ "total_sessions": 1
12
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "args": {
3
+ "access_level": "team",
4
+ "prompt": "Bourdon recognition"
5
+ },
6
+ "tool": "compile_codex_turn"
7
+ }
@@ -0,0 +1,5 @@
1
+ {
2
+ "_status": "deferred",
3
+ "reason": "compile_codex_turn output is environment-bound (resolves the live cwd, git repo name + remote, and repo-identity scoring) and is not a portable cross-impl parity fixture until the TS turn compiler lands (P7). The req pins the tool surface + arg defaults; the res is this deferred stub.",
4
+ "schema_version": "codex-turn-brief/v1"
5
+ }
@@ -0,0 +1,4 @@
1
+ {
2
+ "args": {},
3
+ "tool": "export_agents"
4
+ }
@@ -0,0 +1,73 @@
1
+ {
2
+ "agents": [
3
+ {
4
+ "capability_count": 2,
5
+ "freshest_session_date": "2026-06-08",
6
+ "id": "claude-code",
7
+ "instance": "pc-threadripper",
8
+ "last_updated": "<frozen>",
9
+ "recent_activity": [
10
+ {
11
+ "date": "2026-06-08",
12
+ "key_actions": [
13
+ "wired tier matrix fixtures"
14
+ ],
15
+ "project_focus": [
16
+ "Bourdon"
17
+ ],
18
+ "visibility": "public"
19
+ },
20
+ {
21
+ "date": "2026-06-07",
22
+ "key_actions": [
23
+ "team planning"
24
+ ],
25
+ "project_focus": [
26
+ "Roadmap"
27
+ ],
28
+ "visibility": "team"
29
+ }
30
+ ],
31
+ "role_narrative": "Lead code-assistant on the federation substrate.",
32
+ "session_count": 2,
33
+ "source": "conformance-host",
34
+ "source_kind": "local",
35
+ "type": "code-assistant"
36
+ },
37
+ {
38
+ "capability_count": 0,
39
+ "freshest_session_date": "2026-06-08",
40
+ "id": "codex",
41
+ "last_updated": "<frozen>",
42
+ "recent_activity": [
43
+ {
44
+ "date": "2026-06-08",
45
+ "key_actions": [
46
+ "codex work"
47
+ ],
48
+ "project_focus": [
49
+ "SecretProj"
50
+ ],
51
+ "visibility": "public"
52
+ },
53
+ {
54
+ "date": "2026-06-05",
55
+ "key_actions": [
56
+ "codex private"
57
+ ],
58
+ "project_focus": [
59
+ "Internal Notes"
60
+ ],
61
+ "visibility": "team"
62
+ }
63
+ ],
64
+ "session_count": 2,
65
+ "source": "conformance-host",
66
+ "source_kind": "local",
67
+ "type": "code-assistant"
68
+ }
69
+ ],
70
+ "generated_from": "<frozen>",
71
+ "machine": "conformance-host",
72
+ "schema": "bourdon.agents/v1"
73
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "args": {
3
+ "access_level": "team",
4
+ "name": "Bourdon"
5
+ },
6
+ "tool": "find_entity"
7
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "access_level": "team",
3
+ "include_private": false,
4
+ "matches": [
5
+ {
6
+ "agents": [
7
+ "claude-code",
8
+ "codex"
9
+ ],
10
+ "name": "Bourdon",
11
+ "summaries": {
12
+ "claude-code": "Cross-agent memory federation (granted side).",
13
+ "codex": "Federation, codex view."
14
+ },
15
+ "tags": [
16
+ "infra"
17
+ ],
18
+ "types": [
19
+ "project"
20
+ ]
21
+ }
22
+ ],
23
+ "name": "Bourdon"
24
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "args": {
3
+ "access_level": "team",
4
+ "project": "Bourdon"
5
+ },
6
+ "tool": "get_cross_agent_summary"
7
+ }
@@ -0,0 +1,42 @@
1
+ {
2
+ "agents": [
3
+ "claude-code",
4
+ "codex"
5
+ ],
6
+ "entities": [
7
+ {
8
+ "agents": [
9
+ "claude-code",
10
+ "codex"
11
+ ],
12
+ "name": "Bourdon",
13
+ "summaries": {
14
+ "claude-code": "Cross-agent memory federation (granted side).",
15
+ "codex": "Federation, codex view."
16
+ },
17
+ "tags": [
18
+ "infra"
19
+ ],
20
+ "types": [
21
+ "project"
22
+ ]
23
+ }
24
+ ],
25
+ "project": "Bourdon",
26
+ "recent_sessions": [
27
+ {
28
+ "agent": "claude-code",
29
+ "cwd": "/c/Users/cumul/repos/bourdon",
30
+ "date": "2026-06-08",
31
+ "files_touched": [
32
+ "tools/gen_conformance.py"
33
+ ],
34
+ "key_actions": [
35
+ "wired tier matrix fixtures"
36
+ ],
37
+ "project_focus": [
38
+ "Bourdon"
39
+ ]
40
+ }
41
+ ]
42
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "args": {
3
+ "access_level": "team",
4
+ "prompt": "what about Bourdon"
5
+ },
6
+ "tool": "get_deeper_context"
7
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "access_level": "team",
3
+ "context": "",
4
+ "context_chars": 0,
5
+ "include_private": false,
6
+ "prompt": "what about Bourdon"
7
+ }
@@ -0,0 +1,4 @@
1
+ {
2
+ "args": {},
3
+ "tool": "list_agents"
4
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "agents": [
3
+ "claude-code",
4
+ "codex"
5
+ ]
6
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "args": {
3
+ "access_level": "team",
4
+ "limit": 2,
5
+ "since": "2026-06-01"
6
+ },
7
+ "tool": "list_recent_work"
8
+ }
@@ -0,0 +1,38 @@
1
+ {
2
+ "access_level": "team",
3
+ "has_more": true,
4
+ "include_private": false,
5
+ "limit": 2,
6
+ "next_cursor": {
7
+ "offset": 2
8
+ },
9
+ "sessions": [
10
+ {
11
+ "agent": "codex",
12
+ "cwd": "/y",
13
+ "date": "2026-06-08",
14
+ "key_actions": [
15
+ "codex work"
16
+ ],
17
+ "project_focus": [
18
+ "SecretProj"
19
+ ]
20
+ },
21
+ {
22
+ "agent": "claude-code",
23
+ "cwd": "/c/Users/cumul/repos/bourdon",
24
+ "date": "2026-06-08",
25
+ "files_touched": [
26
+ "tools/gen_conformance.py"
27
+ ],
28
+ "key_actions": [
29
+ "wired tier matrix fixtures"
30
+ ],
31
+ "project_focus": [
32
+ "Bourdon"
33
+ ]
34
+ }
35
+ ],
36
+ "since": "2026-06-01",
37
+ "summary": false
38
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "args": {
3
+ "access_level": "team",
4
+ "prompt": "what about Bourdon"
5
+ },
6
+ "tool": "prepare_recognition_context"
7
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "access_level": "team",
3
+ "confidence": "medium",
4
+ "hydration_scheduled": true,
5
+ "include_private": false,
6
+ "matched_entities": [
7
+ {
8
+ "name": "Bourdon",
9
+ "source_agents": [
10
+ "claude-code",
11
+ "codex"
12
+ ],
13
+ "type": "project"
14
+ }
15
+ ],
16
+ "prompt": "what about Bourdon",
17
+ "prompt_context": "Bourdon recognition context\nImmediate recognition: Oh -- Bourdon, the project.\nMatched entities:\n- Bourdon (project) via claude-code, codex: Cross-agent memory federation (granted side).\nUse this as timing-layer context, not as a final answer.",
18
+ "recognition": "Oh -- Bourdon, the project."
19
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "args": {
3
+ "access_level": "team",
4
+ "agent": "claude-code",
5
+ "topic": "Bourdon"
6
+ },
7
+ "tool": "query_agent_memory"
8
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "access_level": "team",
3
+ "agent": "claude-code",
4
+ "include_private": false,
5
+ "matches": [
6
+ {
7
+ "agents": [
8
+ "claude-code",
9
+ "codex"
10
+ ],
11
+ "name": "Bourdon",
12
+ "summaries": {
13
+ "claude-code": "Cross-agent memory federation (granted side).",
14
+ "codex": "Federation, codex view."
15
+ },
16
+ "tags": [
17
+ "infra"
18
+ ],
19
+ "types": [
20
+ "project"
21
+ ]
22
+ }
23
+ ],
24
+ "topic": "Bourdon"
25
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "_doc": "The 10 mcp_snapshots/*.res.json were produced by driving the live create_l6_server tool closures (OPERATOR / trusted, = stdio) over a TEMP copy of this seed library, then normalizing each response. The TS mirror loads the SAME seed and must reproduce every normalized res. Each tool's payload travels the wire as a single TextContent whose .text = json.dumps(payload); the snapshot is the json.loads of that text.",
3
+ "caller": {
4
+ "agent_id": "operator",
5
+ "tier": "trusted"
6
+ },
7
+ "deferred": [
8
+ "compile_codex_turn"
9
+ ],
10
+ "seed_library": "fed_seed_library",
11
+ "tools": [
12
+ "query_agent_memory",
13
+ "list_recent_work",
14
+ "find_entity",
15
+ "list_agents",
16
+ "export_agents",
17
+ "commit_to_federation",
18
+ "get_cross_agent_summary",
19
+ "prepare_recognition_context",
20
+ "compile_codex_turn",
21
+ "get_deeper_context"
22
+ ],
23
+ "transport": "in-process (create_l6_server tool closures); wire-equivalent to stdio / streamable-HTTP JSON-in-TextContent"
24
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "_doc": "Participant parity fixtures: external-agent native store -> the REAL participant.export_l5() -> its to_dict(), pinned as expected_l5.json. ONLY the export_l5 OUTPUT SHAPE is the contract (internal scraping is not). agent.last_updated (+ claude_code's agent.instance) are FROZEN to fixed valid values; every other field is a pure function of the seeded store. Readers redact native strings themselves -- seeds use keyword-only credential triggers so no token literal lands in a store fixture. Each expected_l5 validates against L5_schema.json.",
3
+ "frozen_fields": {
4
+ "last_updated": "2026-06-29T00:00:00+00:00",
5
+ "agent.instance": "conformance-host"
6
+ },
7
+ "readers": {
8
+ "hermes": {
9
+ "category": "sqlite",
10
+ "store": "store/.hermes/ (state.db sessions + memories/*.md)",
11
+ "reads": "non-archived sessions + project-from-cwd entities + memory.md/user.md facts; redacts memory lines; team default"
12
+ },
13
+ "claude_code": {
14
+ "category": "file",
15
+ "store": "store/{brain,auto_memory,knowledge_graph}/",
16
+ "reads": "PROJECTS/*/OVERVIEW.md + LOG/*.md + auto-memory frontmatter + KG jsonl, deduped/sorted; person + credential entities filtered as private"
17
+ },
18
+ "github_copilot": {
19
+ "category": "network",
20
+ "store": "cache/github-copilot/payload.json (TTL cache)",
21
+ "reads": "offline-from-cache (infinite TTL, no token); PR items -> sessions + repository entities; redacts PR titles"
22
+ }
23
+ }
24
+ }
@@ -0,0 +1,72 @@
1
+ {
2
+ "spec_version": "0.1",
3
+ "agent": {
4
+ "id": "claude-code",
5
+ "type": "code-assistant",
6
+ "instance": "conformance-host",
7
+ "spec_version_compat": ">=0.1",
8
+ "role_narrative": "Agentic manager and code-assistant. Coordinates the RADLAB agent fleet, reviews PRs, and consults on architectural decisions. Capable of authoring code but typically reviews + delegates to specialised code-assistants like Codex for prime-code execution."
9
+ },
10
+ "last_updated": "2026-06-29T00:00:00+00:00",
11
+ "capabilities": [
12
+ "auto_memory",
13
+ "claude_brain",
14
+ "knowledge_graph"
15
+ ],
16
+ "recent_sessions": [
17
+ {
18
+ "date": "2026-06-28",
19
+ "key_actions": [
20
+ "Wired the native_stores conformance family and validated the fixtures."
21
+ ],
22
+ "files_touched": [
23
+ "LOG/2026-06-28-pc.md"
24
+ ]
25
+ }
26
+ ],
27
+ "known_entities": [
28
+ {
29
+ "name": "Bourdon",
30
+ "type": "project",
31
+ "summary": "Cross-agent memory federation substrate. L5 manifests + L6 library."
32
+ },
33
+ {
34
+ "name": "Clyde",
35
+ "type": "project",
36
+ "summary": "Local AI assistant entity.",
37
+ "tags": [
38
+ "infra"
39
+ ]
40
+ },
41
+ {
42
+ "name": "OldThing",
43
+ "type": "project",
44
+ "summary": "A retired experiment.",
45
+ "tags": [
46
+ "archived"
47
+ ]
48
+ },
49
+ {
50
+ "name": "OMNIvour",
51
+ "type": "project",
52
+ "summary": "File conversion app.",
53
+ "tags": [
54
+ "project"
55
+ ]
56
+ }
57
+ ],
58
+ "visibility_policy": {
59
+ "default": "public",
60
+ "private_tags": [
61
+ "personal",
62
+ "financial",
63
+ "credential",
64
+ "health",
65
+ "family",
66
+ "legal"
67
+ ],
68
+ "team_tags": [
69
+ "internal-roadmap"
70
+ ]
71
+ }
72
+ }
@@ -0,0 +1,3 @@
1
+ # Project Memory Index
2
+
3
+ - see entity files
@@ -0,0 +1,7 @@
1
+ ---
2
+ name: Clyde
3
+ type: project
4
+ description: Local AI assistant entity.
5
+ tags: [infra]
6
+ ---
7
+ # Clyde
@@ -0,0 +1,6 @@
1
+ ---
2
+ name: Ry Guy
3
+ type: person
4
+ description: The owner.
5
+ ---
6
+ # Ry Guy
@@ -0,0 +1,3 @@
1
+ # Session 2026-06-28
2
+
3
+ Wired the native_stores conformance family and validated the fixtures.
@@ -0,0 +1,3 @@
1
+ # Bourdon -- Cross-agent memory federation
2
+
3
+ Cross-agent memory federation substrate. L5 manifests + L6 library.
@@ -0,0 +1,5 @@
1
+ # OldThing
2
+
3
+ A retired experiment.
4
+
5
+ ## Status: Archived (2026-01-15)
@@ -0,0 +1,3 @@
1
+ {"type":"entity","name":"OMNIvour","entityType":"project","observations":["File conversion app."]}
2
+ {"type":"entity","name":"SecretCreds","entityType":"concept","observations":["the service_role key for supabase"]}
3
+ {"type":"relation","from":"OMNIvour","to":"Bourdon","relationType":"uses"}
@@ -0,0 +1,21 @@
1
+ {
2
+ "fetched_at": 1782604800.0,
3
+ "payload": {
4
+ "fetched_user": "ryan",
5
+ "fetched_at": "2026-06-29T00:00:00+00:00",
6
+ "items": [
7
+ {
8
+ "title": "Add OAuth login flow",
9
+ "number": 12,
10
+ "updated_at": "2026-06-20T10:00:00Z",
11
+ "repository_url": "https://api.github.com/repos/ryan/bourdon"
12
+ },
13
+ {
14
+ "title": "Rotate the service_role key in CI",
15
+ "number": 9,
16
+ "updated_at": "2026-06-18T10:00:00Z",
17
+ "repository_url": "https://api.github.com/repos/ryan/bourdon"
18
+ }
19
+ ]
20
+ }
21
+ }
@@ -0,0 +1,67 @@
1
+ {
2
+ "spec_version": "0.1",
3
+ "agent": {
4
+ "id": "github-copilot",
5
+ "type": "code-assistant",
6
+ "instance": "conformance-host",
7
+ "role_narrative": "Cloud-side GitHub Copilot: PR review and @copilot-authored comments/suggestions that live on github.com, not on the user's machine. Federated via the GitHub REST API rather than a local artifact."
8
+ },
9
+ "last_updated": "2026-06-29T00:00:00+00:00",
10
+ "capabilities": [
11
+ "github-search",
12
+ "pull-request-comments"
13
+ ],
14
+ "recent_sessions": [
15
+ {
16
+ "date": "2026-06-20",
17
+ "cwd": "github.com/ryan/bourdon",
18
+ "project_focus": [
19
+ "ryan/bourdon"
20
+ ],
21
+ "key_actions": [
22
+ "PR #12: Add OAuth login flow"
23
+ ],
24
+ "visibility": "team"
25
+ },
26
+ {
27
+ "date": "2026-06-18",
28
+ "cwd": "github.com/ryan/bourdon",
29
+ "project_focus": [
30
+ "ryan/bourdon"
31
+ ],
32
+ "key_actions": [
33
+ "PR #9: [redacted credential-like text]"
34
+ ],
35
+ "visibility": "team"
36
+ }
37
+ ],
38
+ "known_entities": [
39
+ {
40
+ "name": "ryan/bourdon",
41
+ "type": "repository",
42
+ "aliases": [
43
+ "bourdon"
44
+ ],
45
+ "summary": "GitHub repo with Copilot PR activity.",
46
+ "last_touched": "2026-06-20",
47
+ "tags": [
48
+ "github-copilot",
49
+ "pull-request"
50
+ ],
51
+ "visibility": "team"
52
+ }
53
+ ],
54
+ "visibility_policy": {
55
+ "default": "team",
56
+ "private_tags": [
57
+ "personal",
58
+ "financial",
59
+ "credential",
60
+ "secret"
61
+ ],
62
+ "team_tags": [
63
+ "github-copilot",
64
+ "pull-request"
65
+ ]
66
+ }
67
+ }