Files
boc/packages/api/adr/ADR-010-Mission-Import-API.md
T
Bernt 13780baeb8 PR-004A: Mission Import API — MVP-0 First Field Upload
- POST /api/v1/missions/import — multipart upload with video
- GET /api/v1/missions/:id — retrieve mission
- GET /api/v1/missions — list active missions
- Express + multer for file handling
- Uses application layer handlers (PR-002.5)
- In-memory repositories (swap for PostgreSQL in PR-003B)

Acceptance Tests (5/5 passing):
 Import mission with video
 Reject upload without video
 Retrieve mission by ID
 404 for non-existent mission
 Health check

MVP-0 Definition of Done:
 Phone → Upload → Store → Retrieve
 No AI required
 First real artifact produced

Next: PR-005A — Minimal Mission Import UI
2026-07-02 16:01:29 +00:00

866 B

ADR-010: Mission Import API (MVP-0)

Status

Accepted

Context

We need the first external interface for LandveX Intelligence Lab. The goal is to prove the end-to-end flow: phone → upload → store → retrieve.

Decision

Implement minimal Mission Import API:

  • POST /api/v1/missions/import — upload video, create mission
  • GET /api/v1/missions/:id — retrieve mission
  • No AI, no processing, just store and track

Architecture

Express Router → Application Handlers → Domain → In-Memory Repositories

Consequences

Positive

  • First real API endpoint
  • Proves end-to-end flow works
  • Can be tested with real phone uploads

Negative

  • In-memory storage (will swap for PostgreSQL)
  • No authentication yet
  • No file validation beyond extension
  • ADR-007: Command/Result Pattern
  • ADR-009: Persistence Independence