1.9 KiB
1.9 KiB
Tasks: enterprise-logger
Status key: ✅ done | 🔄 in progress | ⬜ pending
Wave 1 — Scaffold
- ⬜ 1.1 Create
packages/universal/logger/withpackage.json,tsconfig.lib.json,vite.config.ts,vitest.config.ts,biome.json - ⬜ 1.2 Create
src/index.tsbarrel (empty, filled incrementally)
Wave 2 — Foundation modules
- ⬜ 2.1
src/errors/—LoggerError+LOGGER_CODES - ⬜ 2.2
src/record/—LogRecordtype + Zod schemas - ⬜ 2.3
src/otel/—getOtelTraceContext() - ⬜ 2.4
src/redaction/—RedactionEngine+ rules + property tests - ⬜ 2.5
src/sampling/—HeadSampler,TailSampler,RuleSampler+ property tests
Wave 3 — Sink layer
- ⬜ 3.1
src/sink/sink—Sinkinterface +SinkOptions - ⬜ 3.2
src/sink/console-sink— ANSI dev output - ⬜ 3.3
src/sink/json-sink— NDJSON writer - ⬜ 3.4
src/sink/buffered-sink— bounded queue, drop/block,AbortSignalflush
Wave 4 — Logger core (refactored)
- ⬜ 4.1
src/abstract/—Loggerinterface +AbstractLoggerwith Sink[], redaction, sampling, OTel, clock injection - ⬜ 4.2
src/console/—ConsoleLogger(wrapsConsoleSink) - ⬜ 4.3
src/event/—EventLogger(emits via@suaveplan/events) - ⬜ 4.4
src/storage/—StorageLogger(batchedStorageInterfacewrites)
Wave 5 — High-level API
- ⬜ 5.1
src/factory/—createLogger()overloaded factory - ⬜ 5.2
src/error-bridge/—installSuaveplanErrorInterceptor() - ⬜ 5.3
src/init/—initLogger()
Wave 6 — Quality
- ⬜ 6.1 Wire all exports in
src/index.ts - ⬜ 6.2 Add
src/__benchmarks__/logger.bench.ts(mitata) - ⬜ 6.3 Add tree-shake test
- ⬜ 6.4 Run pre-publish gate:
bunx turbo lint typecheck test:coverage --filter=@suaveplan/logger - ⬜ 6.5 Fix any issues found in gate
- ⬜ 6.6 Update
CLAUDE.mdpackage listing + rootREADME.md