Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017Qxbkp4tA7G5SCWjzWuxmE
1.1 KiB
1.1 KiB
PotentialStorage
Layered TypeScript storage library: KV → Events → Documents. The full design, milestones and implementation decisions are in DESIGN.md — read it before changing anything. Record new decisions in DESIGN.md section 12.
Commands
npm test—tsc --noEmitthen all Vitest tests (including*.test-d.tstype tests)npm run test:only -- <file>— Vitest only, e.g. a single filenpm run typecheck—tsc --noEmitover src, test and benchnpm run bench—vitest benchnpm run build— emitdist/npm run format/npm run format:check— Prettier
CI (.gitea/workflows/ci.yml, Gitea Actions) runs format check, typecheck, tests and build on Node 20 and 22.
Rules
- No runtime dependencies in
src/. Dev dependencies only. - Drivers stay flat and string-keyed; all path/index/escaping logic lives in the node classes.
- Self vs child dispatch is by
arguments.length; a passed-but-undefined/nullkey throws. - Multi-result reads are
AsyncIterable; don't build large arrays internally. - Keep tests green and commit per milestone. Ask the owner before pushing.