overengineeringstudio / overengineeringstudio/effect-utils
notion db track fails closed on packaged runtime (breaks sqlite demo + demo-env replica)
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 82
- Forks
- 2
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 121
Description
Summary
notion db track no longer establishes a local SQLite replica on the current packaged/flake notion runtime (notion 0.1.0+unknown, committed 2026-07-07). It fails closed.
Impact
- Breaks
demo/sqlite/reset.sh(usesnotion db track <ds> . --mode local). demo/env/demo-env newdegrades loudly for the sqlite demo: the Notion DB + rows are still created and usable, but the local.sqlitereplica is not; manifest recordssqlite.tracked: false.
Root cause (two layers)
- Wrapper routing omits
track. The flakenotionbin routes onlyinit|pull|push|sync|export|status|conflicts|forget|restore|doctortonotion-db-runtime;trackis missing, sonotion db trackfalls through to the Bun-unsupported unwrapped binary (… imports node:sqlite …). The routing list also has stale verbs (init/pull/push) not in the actual CLI. - Runtime fails closed even when invoked directly.
notion-db-runtime track <ds> . --mode local --no-materialize-bodiesexits non-zero with no diagnostic output, writing only.notion/v1/state.sqlite. Also: the new runtime creates<workspace>/<database-id>.sqliteand rejects--sqlitefortrack.
Repro (inside devenv shell)
cd $(mktemp -d)
RT=$(grep -oE '/nix/store/[^ ]*notion-db-runtime[^ ]*/bin/notion-db-runtime' $(command -v notion) | head -1)
"$RT" track <data-source-id> . --mode local --no-materialize-bodies; echo exit=$? # exit=1, no output
Asks
- Add
trackto the wrapper's routed-verb list (drop staleinit/pull/push). - Make the runtime emit an error on
trackfailure instead of a silent non-zero exit.
Filed as out-of-scope follow-up from the demo/env (demo-env CLI) work.
Posted on behalf of @schickling
| field | value |
|---|---|
agent_name |
💜 cl1-violet |
agent_session_id |
5ce468e2-a077-44ee-a724-bca1fb992e1c |
agent_tool |
Claude Code |
agent_tool_version |
2.1.202 |
agent_runtime |
Claude Code 2.1.202 |
agent_model |
claude-opus-4-8 |
runtime_profile |
/nix/store/34v4ljmkjh4sgzax68wwgggmzf69zmfk-coding-agent-runtime-profile/share/coding-agents/profile.json |
skills_manifest |
/nix/store/92pwq9mx1byj8nl9an05dyh4baykvf1d-agent-skills-corpus/share/agent-skills/manifest.json |
worktree |
effect-utils/schickling/2026-07-07-notion-demo |
machine |
mbp2025 |
tooling_profile |
dotfiles@unknown |
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the flake notion wrapper's routed-verb list and the notion-db-runtime entry point; run the provided packaged-runtime reproduction in a temporary directory. Done means track is routed through the runtime and failures produce diagnostics instead of a silent non-zero exit, while the SQLite demo can establish its local replica.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- build-system, cli
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 52/100