Repository navigation
feat: add engraphis-demo seeded first-run - #326
Conversation
New users currently land on an empty dashboard. Add an engraphis-demo command that seeds a disposable SQLite workspace with scoped decisions, a superseded auth fact, and a cited recall, then launches the existing dashboard against it. The demo stays fully local: no extractor, no retention LLM call, and no access to the operator's real database. Cover the seed with a pytest that asserts the supersession and recall.
Codex Review Summary: ❌ FailedThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
The entry-point manifest must match pyproject.toml. Add the new demo command so the release smoke test covers it.
The initial demo allowed --force to delete any path, could reuse an existing dashboard, and mutated the process environment permanently. Use a disposable temp database, refuse existing files, require a free port, bind the dashboard settings to the demo database, and force the offline embedder. Add file-backed, refusal, environment, and help tests.
The demo no longer changes engraphis/service.py, so the benchmark evidence hash stays valid. It explains the empty-database warning instead of suppressing it, and still restores the offline embedder environment after seeding.
|
Two fresh-context reviews completed. Blocker fixed: the demo no longer exposes a destructive Majors fixed: a disposable temp database instead of a user-selectable destructive path; a free-port pre-flight so it never reuses a real dashboard; environment state restored after seeding; the settings pin no longer swallows exceptions; the seed and dashboard both use the offline embedder; file-backed, refusal, environment, and Local checks: 58 tests across demo, artifact, and CLI; the benchmark evidence hash test passes; Ready for the gate once CI is green and the operator records the merge instruction. No merge authorization is recorded in this comment. |
pyproject.toml is a protected packaging path in the merge gate. Keep the seeded demo runnable as python -m scripts.demo and move the console entry point to a separate packaging change.
Summary
engraphis-demo, a new console command that seeds a disposable SQLite workspace and launches the existing dashboard against it.acme-api(checkout, billing) andacme-web(dashboard), including a JWT to PASETO supersession and a cited recall.ENGRAPHIS_DEMO=1suppresses the unrelated empty-database diagnostic.Why
The README now sends new users to a three-command install, but the dashboard still opens empty. This gives them a one-command way to see scoped memory, temporal history, and cited recall before they seed their own workspace.
Test plan
pytest tests/test_demo_seed.py -qpass.ruff checkandruff format --checkpass on the new files.python -m scripts.demo --no-open --port 8799;/api/readyreturned ready, and/api/workspacesreturnedacme-apiwith 9 memories andacme-webwith 3.