Project
Source:
openspec/project.md
Project conventions for AI assistants working under openspec/.
Table of Contents
- Parcel Path — OpenSpec project context
- Product
- Stack
- Non-negotiables
- Non-goals (v0)
- Public demo fixture
Parcel Path — OpenSpec project context
Project conventions for AI assistants working under openspec/.
Product¶
Parcel Path is a TypeScript CLI that answers: where is my package, and what should I do next? Users paste a carrier tracking id; the CLI prints a timeline plus one plain-language next action.
Stack¶
- TypeScript CLI, Vitest for unit tests
- Exit codes:
0success,1usage/validation,2carrier/runtime failure - Naming:
CarrierAdapter,TrackingEvent,formatTimeline()
Non-negotiables¶
- One vertical slice at a time — parse input → call a carrier adapter → print a plain-language next action.
- No network in unit tests — mock carrier clients; ship offline fixtures.
- Never log PII — redact tracking tokens and full addresses in errors and verbose logs.
- Tiny, testable diffs — prefer short commit-sized changes over drive-by refactors.
Non-goals (v0)¶
- Database-backed history
- Scraping carrier HTML
- Label printing or full shipping ops
Public demo fixture¶
Offline fixture id: DEMO-1001 under tests/fixtures/.