- Session is root (not Mission): Field Session → Mission → Asset → Observation...
- Event Sourcing: never overwrite status, status is projection of history
- Artifact Registry: first-class object with id, type, version, hash, lineage
- Decision Case immutability: Review → Revision → Approved Version (like Git)
- Review Task: Assigned → Reviewed → Approved → Closed
- Processing Graph: nodes not hardcoded chain, swap models without changing rest
- Data Quality as domain: Blur, Duplicate, Bad GPS, Low Resolution, etc.
- Decision Case comparison: show exactly what changed, which evidence, model, human
- Golden Missions + Golden Datasets: two levels
- Domain Event Viewer: timeline (09:42 Mission Created, 09:43 Video Uploaded...)
- KPI: Verified Decision Throughput (verified decisions per day)
- Architecture Principle: 'Produces verified Decision Cases through reproducible
and traceable pipeline'
Updated PR-001 Domain Model:
- Added FieldSession (root)
- Added Artifact interface
- Added Event sourcing types
- Session ID format: session_YYYYMMDD_NNNNNN
- Updated API to include /sessions endpoints
Rationale: Three fundamental objects (Session, Artifact, Event) make the rest
natural. Scalable, auditable, well-suited for public sector traceability requirements.
- Added Vision: 'LandveX Intelligence Lab is the internal factory where
raw reality is refined into verified Control Intelligence'
- Added Architecture Goal: Every artifact traceable backward to source
and forward to decision
- Added Development Rule: No Story starts with UI. Order: Domain model →
API → Storage → Tests → UI
- Added Story 1 implementation plan with 5 PRs:
PR-001: Domain Model (Mission, MissionAsset, Upload, types)
PR-002: Storage (S3/R2 bucket, PostgreSQL metadata, checksums, EXIF, GPS)
PR-003: API (POST /missions, POST /missions/{id}/assets, GET /missions)
PR-004: Events (MissionCreated, AssetUploaded, RawDatasetReady)
PR-005: UI (simple drag-and-drop upload with progress)
- Added Definition of Done for Story 1:
Phone → Video → Upload → Bucket → Metadata → Mission visible in Dataset Explorer
- Added ID Convention: mission_YYYYMMDD_NNNNNN, asset_NNNNNN, obs_NNNNNN,
decision_NNNNNN. Never UUID in UI.
- Added Artifact Viewer: show raw asset metadata, hash, GPS, EXIF,
storage location, version for debugging
Rationale: Clean architecture, testable without UI, traceable artifacts.
- Reordered stories to reach First Verified Decision faster:
1. Mission Import (was 2) — proves we can receive real data
2. Dataset Explorer (was 3) — makes data visible
3. Annotation Workspace (was 4) — first human-in-the-loop
4. Decision Case (was 5) — first verified decision
5. Replay (was 6) — proves chain is reproducible
6. Session Management (was 1) — organizes when core works
- Added Golden Mission concept:
- Real mission that never changes, used as regression test
- Every new model runs against same mission
- See immediately if something got better or worse
- Added Review as first-class object:
- Observation → AI → Human Review → Approved/Rejected/Needs More Evidence
- Makes entire quality flow traceable
- Added Dashboard v1:
- Sessions, Missions, Decision Cases, Pending Reviews, Verified Decisions
- Big button: [Continue Reviewing]
- Work tool, not BI system
- Added vertical user journey (demo script):
- quiXzoom → photo → import → save → explore → AI observation →
correction → Decision Case → full chain viewer
- If this works, core is proven
- Added definition of 'First Verified Decision':
- Built on real observation data
- Reviewed by human
- Complete evidence chain
- Fully reproducible from raw data to recommendation
Rationale: Reach core proof faster, add organization later.
Golden Mission enables regression testing from day one.
Review object makes quality flow traceable.
- STOP Rule: No new pipeline until 20 real Decision Cases exist
- Field Readiness Gate: 5 questions before building any feature
- Sprint Goal: Every sprint must produce more verified Decision Cases
- Six stories:
1. Session Management — organize missions by location/date
2. Mission Import — upload video/images/GPS/EXIF, store immutably
3. Dataset Explorer — browse, filter, search, map view
4. Annotation Workspace — review/correct AI, version history
5. Decision Case — full chain: Observation→Evidence→Finding→Decision→Business Impact
6. Replay — step through mission chain (V1: simple playback)
- Not in first release (intentionally postponed):
GPU Queue, Hyperparameter Search, Distributed Training,
Benchmark, Canary Deployment, Auto Retraining,
Bias Dashboard, Drift Detection
- Definition of Done: Complete vertical slice from reality to verified decision
- Definition of Ready for Epic-002: 20 real Decision Cases + Field Readiness Gate
- Technical stack: React+TypeScript, Node.js+Express, PostgreSQL, S3/R2, Bull, Python AI service
- Quality gates: TypeScript strict ≥80% coverage, no secrets, OAuth 2.0, immutable audit log, GitOps
Rationale: Prove the system works end-to-end before scaling.
Focus on learning from reality, not building everything upfront.