Files
tspm/readme.hints.md

17 lines
1.2 KiB
Markdown

# Project Readme Hints
## Build Tools
- Uses `@git.zone/tsbuild` v4.x — just `tsbuild` with no extra flags needed
- Uses `@git.zone/tstest` v3.x — zero-config, file naming convention for runtime selection
- Uses `@git.zone/tsrun` v2.x — zero-config TypeScript execution via tsx
## Key Architectural Decisions
- **No smartfile dependency** — replaced with native Node.js `fs/promises` for filesystem operations in crashlogmanager.ts and logpersistence.ts (smartfile v13 removed the `fs` and `memory` namespaces)
- **smartconfig** (not npmextra) — configuration stored in `.smartconfig.json` using `@push.rocks/smartconfig` KeyValueStore
- **Three test categories**: unit tests (test.ts, test.daemon.ts, test.ipcclient.ts), direct tests (test.crashlog.direct.ts), and integration tests (test.crashlog.ts, test.crashlog.manual.ts) that require a running daemon
## Integration Tests
- The crashlog integration tests (`test.crashlog.ts`, `test.crashlog.manual.ts`) depend on a running daemon and CLI output parsing
- They gracefully skip when daemon can't be started in the test environment
- The CLI `add` command outputs `Assigned ID: <number>` (not `Process added with ID:`)