Commit 3240209
## Summary
Two `.a2ml` files outside `.machine_readable/` were failing
`hyperpolymath/a2ml-validate-action` with `Missing required identity
field (agent-id, name, or project)`:
- `.boj/project-memories.a2ml`
- `cartridges/007-mcp/schemas/memory-tag-map.a2ml`
Both files use S-expression body shape (`(memory-tag-map …)` /
`(project-memories …)`) which the validator's line regex
`^\s*(name|agent-id|project)\s*=` cannot match.
## Fix
Added a TOML-shape `[identity]` preamble to each file exposing `name`,
`project`, `version`, and `schema_version` to the regex. The TOML lines
are benign for downstream consumers:
- `cartridges/007-mcp/ffi/oo7_mcp_ffi.zig::matchMemories` skips every
line until it sees `(tag …)` (`if (!in_memories) continue;`), so
non-`(…)` lines never enter the parse path.
- `.boj/project-memories.a2ml` is purely informational — `cat`'d into
Claude worker session briefings.
## Test plan
- [ ] CI: Dogfood Gate / `Validate A2ML manifests` green
- [ ] CI: no regression on `Empty-linter`, `Groove manifest check`,
`Validate eclexiaiser manifest`
Refs #87.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 98f7905 commit 3240209
2 files changed
Lines changed: 21 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
8 | 18 | | |
9 | 19 | | |
10 | 20 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
26 | 37 | | |
27 | 38 | | |
28 | 39 | | |
| |||
0 commit comments