Alpha stage commit
This commit is contained in:
34
AGENTS.md
Normal file
34
AGENTS.md
Normal file
@@ -0,0 +1,34 @@
|
||||
# Agent Instructions
|
||||
|
||||
This repository is a product and implementation blueprint for a bikepacking app. Treat the docs as the source of truth.
|
||||
|
||||
## Product constraints
|
||||
|
||||
- The app is for loaded bikepacking, not generic cycling.
|
||||
- Optimize for multi-day trips, offline use, resupply, water, sleeping, repair, local rules, and bailout options.
|
||||
- Routing quality should come from OSM/elevation/routing engines plus a proprietary bikepacking suitability layer.
|
||||
- Never hardcode API keys or commercial credentials.
|
||||
- Keep data-source adapters interchangeable.
|
||||
- Treat legal access, protected areas, wild camping, and safety warnings as confidence-scored advisory information, not guaranteed legal advice.
|
||||
|
||||
## Engineering constraints
|
||||
|
||||
- Prefer a monorepo with `apps/web`, `apps/mobile`, `services/api`, `services/data-pipeline`, and `packages/shared`.
|
||||
- Use TypeScript for user-facing apps and shared domain types.
|
||||
- Use a backend service with geospatial database support. The recommended default is FastAPI + PostgreSQL/PostGIS, but an equivalent stack is acceptable if it preserves the API contract.
|
||||
- Use MapLibre-compatible map rendering.
|
||||
- Keep routing behind provider interfaces: `RoutingProvider`, `PoiProvider`, `ElevationProvider`, `WeatherProvider`, `RulesProvider`, `DeviceExportProvider`.
|
||||
- Implement testable pure functions for scoring, staging, POI filtering, and warning generation.
|
||||
- Add unit tests for scoring and staging before UI refinements.
|
||||
- Add fixtures from `examples/` and keep sample outputs deterministic.
|
||||
|
||||
## Acceptance standard
|
||||
|
||||
A task is complete only when:
|
||||
|
||||
- code compiles,
|
||||
- tests pass,
|
||||
- API contracts are updated when behavior changes,
|
||||
- environment variables are documented,
|
||||
- user-facing errors are actionable,
|
||||
- OSM and third-party attribution requirements are preserved in the UI and docs.
|
||||
Reference in New Issue
Block a user