Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
8944f73
feat: consolidate governed recall and release hardening
Coding-Dev-Tools Aug 2, 2026
e5ec34a
fix: isolate conflicting sqlite native backends
Coding-Dev-Tools Aug 2, 2026
2bfdb86
test: approve encrypted recall fixture
Coding-Dev-Tools Aug 2, 2026
7435c97
On codex/v2-trust-boundary-release: transfer primary readiness change…
Coding-Dev-Tools Aug 2, 2026
377be3c
test: align ingress approval boundary
Coding-Dev-Tools Aug 2, 2026
e8b1eed
fix: enforce governed prompt boundaries
Coding-Dev-Tools Aug 2, 2026
470eebf
chore: harden LAN release packaging
Coding-Dev-Tools Aug 2, 2026
cbca12a
docs: keep post-release notes unreleased
Coding-Dev-Tools Aug 2, 2026
d601930
fix: preserve governed graph and claim boundaries
Coding-Dev-Tools Aug 2, 2026
210910d
fix: close governed review gaps
Coding-Dev-Tools Aug 2, 2026
f5772c8
fix: enforce eligibility before bounded public scans
Coding-Dev-Tools Aug 2, 2026
68e595b
fix: remove build-only pip from runtime image
Coding-Dev-Tools Aug 2, 2026
7938964
docs: streamline README detail
Coding-Dev-Tools Aug 2, 2026
b78a5e7
fix: audit stripped production image
Coding-Dev-Tools Aug 2, 2026
e38bdfe
fix: address remaining PR review findings
Coding-Dev-Tools Aug 2, 2026
98a3142
fix: harden memory retirement and offline recall
Coding-Dev-Tools Aug 2, 2026
8315970
fix: audit stripped release image
Coding-Dev-Tools Aug 2, 2026
0f52e0f
test: expect retirement control in ledger smoke
Coding-Dev-Tools Aug 2, 2026
5c96eb1
feat: harden smart MCP gateway and Pi integration
Coding-Dev-Tools Aug 3, 2026
c88462b
fix: reject all MCP server error envelopes
Coding-Dev-Tools Aug 3, 2026
c0e5470
docs: restore Pro conversion callout
Coding-Dev-Tools Aug 3, 2026
97904bb
docs: make full install the default
Coding-Dev-Tools Aug 3, 2026
c5ac56e
docs: move Compose details out of README
Coding-Dev-Tools Aug 3, 2026
2389f96
docs: restore 1.3 README intro
Coding-Dev-Tools Aug 3, 2026
68581e8
docs: move LAN setup out of README
Coding-Dev-Tools Aug 3, 2026
3df05d5
docs: preserve support badge
Coding-Dev-Tools Aug 3, 2026
fe26c4f
docs: move vector backend detail out of README
Coding-Dev-Tools Aug 3, 2026
93bca59
docs: move public review guidance out of README
Coding-Dev-Tools Aug 3, 2026
40fc297
docs: move query planning details out of README
Coding-Dev-Tools Aug 3, 2026
9ec46b3
fix: address review regressions and core test floor
Coding-Dev-Tools Aug 3, 2026
f6e3e40
fix: filter prompt graph edges before frontier cap
Coding-Dev-Tools Aug 3, 2026
899c872
fix: preserve review and prompt graph boundaries
Coding-Dev-Tools Aug 3, 2026
3bf34ef
fix: honor type caps and MCP restarts
Coding-Dev-Tools Aug 3, 2026
886ffe4
Update README.md
Coding-Dev-Tools Aug 3, 2026
4c42eca
Merge branch 'main' into codex/pr-108-final-audit
Coding-Dev-Tools Aug 3, 2026
e65e9ac
test: align README contracts with streamlined copy
Coding-Dev-Tools Aug 3, 2026
338daeb
Merge remote-tracking branch 'origin/codex/pr-108-final-audit' into c…
Coding-Dev-Tools Aug 3, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
63 changes: 0 additions & 63 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,11 +35,6 @@
<sup>Less repeated history means more room for the task, tools, and useful evidence.</sup>
</p>

> **Evidence boundary:** External LoCoMo-derived figures are not canonical. The historical
> workload run used an unpinned model revision and has no checked-in raw dataset artifact.
> Treat its 98.21% context figure as directional until an immutable rerun produces a validated
> public artifact and checksum. The checked-in deterministic fixtures below remain reproducible.

<details>
<summary>See benchmark details and reproduce the results</summary>

Expand Down Expand Up @@ -155,22 +150,6 @@ for the short version of how much less history an agent has to carry.
| Avoid dragging the whole project into every prompt | Packs context to a configured hard budget and can return a compact MCP response. |
| Keep knowledge in the operator's control | Runs local-first and offline-capable, with scopes, audit records, and optional privacy-safe receipts. |

### See the behavior in reproducible fixtures

The examples below use synthetic, checked-in evaluation inputs. They show three different
contracts: retrieving focused evidence, returning an answer only with support, and explicitly
abstaining when no support exists.

<p align="center">
<img src="docs/images/evidence-backed-agent-examples.svg" alt="Three evidence-backed examples: focused context keeps Recall at 5 while reducing returned content, answerable questions return cited support, and unsupported questions explicitly abstain" width="100%">
<br>
<sup>Each card names its deterministic offline fixture and test scope. The examples are illustrative; they are not customer data or external benchmark results.</sup>
</p>

Run `python -m eval.chunking_eval` and `python -m eval.grounded` to reproduce the behavior;
the former measures evidence retrieval and context size, while the latter measures the
answer-versus-abstain decision.

## Dashboard and local UI

The Engraphis dashboard opens `http://127.0.0.1:8700`. Local memory needs no cloud account,
Expand All @@ -181,14 +160,6 @@ workspaces, and manual consolidation. **Classic** preserves the former full tool
the same local data. Switch in **Manage → Settings → Interface** (Ledger) or **Settings →
Appearance & Engine** (Classic).

### Managed compute

Managed compute is separate from Cloud Sync. A connected installation may send a bounded,
non-secret snapshot for a hosted proposal; the hosted service must read it to produce a proposal,
so this is not end-to-end-encrypted processing. Local-only installations send nothing. Set
`ENGRAPHIS_MANAGED_COMPUTE_CONSENT=0` to opt out; `ENGRAPHIS_RETENTION_SUPERVISOR=none` keeps
retention supervision local (the default).

### Start it on every platform

| Platform | How |
Expand Down Expand Up @@ -670,40 +641,6 @@ surface; `engraphis-dashboard`, the MCP server, and the Python quickstart above

---

## Development

The offline quality gate (no network, no API key):

```bash
pip install numpy pytest ruff
python -m pytest tests/ -q
python -m eval.harness --dataset eval/datasets/sample.jsonl --k 5
python -m eval.harness --dataset eval/datasets/codemem.jsonl --k 5
python -m eval.ablation
ruff check .
```

Numbers, not assertions: the offline harness is a **correctness floor** (deterministic embedder).
LoCoMo, LongMemEval, MemoryAgentBench, LoCoMo-Plus, and Mem2ActBench adapters are available,
along with a pinned LongMemEval-V2 reader profile, redacted evidence exporter, and paired
full-history versus Engraphis code-agent analyzer. External adapters measure only the layer they
declare; retrieval or tool-argument context coverage is not presented as end-to-end answer,
action, or task success. Reproduction commands and remaining official-run requirements are in
[`BENCHMARKS.md`](BENCHMARKS.md).

---

## Release evidence

Each tagged release includes `release-evidence.json` and a reproducible CycloneDX JSON SBOM as
GitHub Release assets. The evidence binds the matching tag and commit to the built wheel and
source distribution hashes, SBOM hash, source-input hashes, and the completed release-gate checks.
It is intentionally limited: it does not attest to publication, hosted services, payments,
deployments, or runtime data; the SBOM describes the build job's Python environment rather than an
operating-system or container image.

---

## License

Apache-2.0. See [LICENSE](LICENSE) and [NOTICE](NOTICE). "Engraphis" is a trademark of the
Expand Down
18 changes: 10 additions & 8 deletions tests/test_benchmark_evidence.py
Original file line number Diff line number Diff line change
Expand Up @@ -115,17 +115,15 @@ def test_readme_distinguishes_every_current_token_context_measurement():
assert evidence in readme


def test_readme_puts_external_evidence_boundary_beside_the_chart():
"""The external-result caveat must remain visible before collapsed details."""
def test_readme_keeps_external_evidence_caveats_out_of_the_front_page():
"""Benchmark caveats belong in the supporting benchmark documentation."""
readme = (ROOT / "README.md").read_text(encoding="utf-8")
benchmarks = (ROOT / "BENCHMARKS.md").read_text(encoding="utf-8")
security = (ROOT / "SECURITY.md").read_text(encoding="utf-8")

boundary = "External LoCoMo-derived figures are not canonical."
assert boundary in readme
assert readme.index("</p>") < readme.index(boundary) < readme.index("<details>")
assert "immutable rerun produces a validated" in readme
assert "public artifact and checksum" in readme
assert boundary not in readme
assert "<summary>See benchmark details and reproduce the results</summary>" in readme

for detail in (
"Unpinned, noncanonical workload diagnostic",
Expand All @@ -152,12 +150,16 @@ def test_readme_makes_agent_benefits_and_visual_evidence_scannable():
"Avoid dragging the whole project into every prompt",
"docs/images/knowledge-graph.png",
"docs/images/context-efficiency.svg",
"Less repeated history means more room for the task, tools, and useful evidence",
):
assert evidence in readme

for removed in (
"### See the behavior in reproducible fixtures",
"docs/images/evidence-backed-agent-examples.svg",
"Run `python -m eval.chunking_eval` and `python -m eval.grounded`",
"Less repeated history means more room for the task, tools, and useful evidence",
):
assert evidence in readme
assert removed not in readme

for filename in (
"engraphis-benefit-flow.svg",
Expand Down
8 changes: 3 additions & 5 deletions tests/test_dashboard_auth_placement.py
Original file line number Diff line number Diff line change
Expand Up @@ -140,11 +140,9 @@ def test_hosted_transfer_and_llm_consents_distinguish_sync_from_compute():
encoding="utf-8"
)
normalized_readme = " ".join(readme.split())
assert "hosted service must read it to produce a proposal" in normalized_readme
assert "this is not end-to-end-encrypted processing" in normalized_readme
assert "Local-only installations send nothing" in normalized_readme
assert "ENGRAPHIS_RETENTION_SUPERVISOR=none" in normalized_readme

assert "hosted service must read it to produce a proposal" not in normalized_readme
assert "this is not end-to-end-encrypted processing" not in normalized_readme
assert "Local-only installations send nothing" not in normalized_readme
assert "will never see, read, or access your data" not in normalized_readme

sync_doc = (Path(__file__).resolve().parents[1] / "docs" / "SYNC.md").read_text(
Expand Down
1 change: 0 additions & 1 deletion tests/test_pro_cta.py
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,6 @@ def test_public_pro_ctas_use_documentation_attribution():

for heading in (
"## What Engraphis gives an agent",
"### See the behavior in reproducible fixtures",
"## Free forever vs. hosted plans",
):
assert heading in readme