|
| 1 | +# H-XX-D AMBIENT Benchmark PR |
| 2 | + |
| 3 | +Date: 2026-07-08 |
| 4 | + |
| 5 | +Status: submitted as upstream PR #5. |
| 6 | + |
| 7 | +URL: https://github.com/H-XX-D/ambient-benchmark/pull/5 |
| 8 | + |
| 9 | +Evidence comment: https://github.com/TerminallyLazy/Tree-Ring-Memory/issues/26#issuecomment-4916634939 |
| 10 | + |
| 11 | +## Fit |
| 12 | + |
| 13 | +AMBIENT is a substrate-neutral agent-memory benchmark with an adapter contract |
| 14 | +that requires observable store calls. Tree Ring Memory is a strong fit because |
| 15 | +it can expose local-first memory writes and recall through the `tree-ring` CLI's |
| 16 | +JSON output without changing benchmark internals or vendoring Tree Ring code. |
| 17 | + |
| 18 | +## Submission |
| 19 | + |
| 20 | +The PR adds an optional `tree-ring-cli` bridge: |
| 21 | + |
| 22 | +- `adapters/tree-ring-cli-adapter.mjs` creates isolated Tree Ring roots per |
| 23 | + AMBIENT store. |
| 24 | +- AMBIENT `write` maps to `tree-ring remember --json`. |
| 25 | +- AMBIENT `query` maps to `tree-ring recall --json --include-sensitive`. |
| 26 | +- Returned support/provenance uses Tree Ring memory summaries, IDs, timestamps, |
| 27 | + event type, and recall scores. |
| 28 | +- Tree Ring policy refusals for synthetic secret-like turns return |
| 29 | + `accepted: false` instead of crashing the benchmark runner. |
| 30 | + |
| 31 | +The adapter is optional and gated by `AMBIENT_TREE_RING_BIN` or `tree-ring` on |
| 32 | +`PATH`, so upstream users without Tree Ring installed are not blocked. |
| 33 | + |
| 34 | +## Validation |
| 35 | + |
| 36 | +- `npm run verify:adapter:tree-ring` |
| 37 | +- `node --check adapters/tree-ring-cli-adapter.mjs` |
| 38 | +- `node --check scripts/verify-tree-ring-adapter-bridge.mjs` |
| 39 | +- `git diff --check` |
| 40 | +- `AMBIENT_TREE_RING_BIN=/Users/lazy/Projects/Tree_Ring_Memory/target/debug/tree-ring npm run verify:adapters:prereqs -- --out results/optional-tree-ring-prereqs.json` |
| 41 | +- `AMBIENT_TREE_RING_BIN=/Users/lazy/Projects/Tree_Ring_Memory/target/debug/tree-ring npm run verify:adapters:matrix -- --adapters tree-ring-cli --out results/cross-adapter-tree-ring-smoke.json` |
| 42 | + |
| 43 | +The focused matrix passed with 8 rows for `tree-ring-cli` on BEAM small using |
| 44 | +AMBIENT's mock fixed reader/checker. |
| 45 | + |
| 46 | +## GitHub State |
| 47 | + |
| 48 | +- Fork: `TerminallyLazy/ambient-benchmark` |
| 49 | +- Branch: `add-tree-ring-adapter` |
| 50 | +- Commit: `c51423c38fbc52a191801558f4ee29e5f24b58f0` |
| 51 | +- PR state at submission: open, ready, mergeable, no status checks reported. |
0 commit comments