1.8 KiB
1.8 KiB
TASKS.md
Phase 0 - Repository Setup
Task 0.1 - Create repository skeleton
Create:
- README.md
- ARCHITECTURE.md
- TASKS.md
- PROJECT_STATE.md
- AGENT_HANDOFF.md
- src/
- test/
- context/
Do not implement functionality yet.
Status: ✅ Complete
Task 0.2 - Add package.json and dependencies
Add package.json with MCP SDK, OpenAI SDK, Zod, Vitest.
Status: ✅ Complete
Phase 1 - Core Utilities
Task 1.1 - Configuration loader
Create src/config/env.js.
Requirements:
- Read environment variables and validate OPENAI_API_KEY exists.
- Apply defaults from ARCHITECTURE.md section 13.
- Return a structured config object.
- Throw clear configuration errors for missing or invalid values.
- Use plain JavaScript validation (no Zod yet).
- Single exported
loadConfig()function.
Create test/config/env.test.js.
Requirements:
- Test all default values.
- Test all custom overrides (strings, numbers, booleans).
- Test error cases: missing API key, invalid numbers, invalid booleans.
- No external dependencies in the loader.
Status: ✅ Complete
Task 1.2 - Secret redaction utility
Create src/utils/redact.js.
Requirements:
- Detect likely secrets (API keys, tokens, passwords, Bearer tokens, private keys, SSH keys, PEM blocks, DB URLs with credentials).
- Replace detected secrets with
[REDACTED]. - Return the redacted string.
Status: ✅ Complete
Task 1.3 - Context budget utility
Create src/utils/context-budget.js.
Requirements:
- Character limit checks (max total, per file, max files).
- Priority-based trimming when limits exceeded.
- Reject oversized input with safe message.
Status: ⏳ Pending
Task 1.4 - Error formatting utility
Create src/utils/errors.js and src/utils/logging.js.
Requirements:
- Safe error message formatting (no stack traces).
- Minimal logging to stderr only.
Status: ⏳ Pending