Back to the app

System design and build progress

Read the system by responsibility, boundary and delivery gate. Open the capability inventory only when you need implementation-level evidence and review notes.

rules prose:50 tabular:57 image:6 page:7 route:14 · 146 kinds · 4/4 scanned

system design level

Architecture and delivery readiness

Service boundaries, durable state, failure behavior, security, scaling and the next gate for every major subsystem. Percentages are weighted readiness gates, not estimates of time remaining.

architecture readiness

36%

weighted across 36 gates

done10

verified system gates

in progress6

partially satisfied gates

backlog20

9 domains still have an open gate

responsibility model

Architecture planes

Each plane has one reason to change, one state owner and one operational failure boundary.

Next.js web workload

Investigator plane

1 domain

Case intake, review, search and evidence-backed decisions.

State owner

URL state and API records

Scale signal

Concurrent sessions and render latency

Trust boundary

Authenticated user to case entitlement

Recovery contract

Stateless restart; no evidence stored in the pod

FastAPI service

Control plane

1 domain

Validate commands, enforce policy and schedule durable work.

State owner

PostgreSQL jobs and case metadata

Scale signal

Request rate and API latency

Trust boundary

Ingress to authorized application service

Recovery contract

Idempotent requests and transactional job submission

CPU and accelerator worker pools

Evidence data plane

3 domains

Admit, quarantine, parse and enrich hostile mixed-format evidence.

State owner

Object storage plus derivation records

Scale signal

Queue age, bytes waiting and route mix

Trust boundary

Untrusted originals to verified derived artifacts

Recovery contract

Replayable jobs, bounded retries and dead-letter review

Resolution and graph workers

Intelligence plane

1 domain

Resolve entities and create explainable graph findings.

State owner

Canonical entities, edges and finding versions

Scale signal

Observations per case and graph recompute time

Trust boundary

Machine observation to human-reviewed assertion

Recovery contract

Versioned recomputation from immutable observations

AWS, Kubernetes and GHCR

Platform plane

2 domains

Build, run, route and observe isolated application workloads.

State owner

Deployment revisions and infrastructure configuration

Scale signal

Pod saturation, queue depth and service objectives

Trust boundary

Workload identity, network policy and secret injection

Recovery contract

Health probes, rollout rollback and reproducible images

Cross-cutting policy and audit controls

Governance plane

1 domain

Apply authorization, custody, provenance, audit and retention.

State owner

Identity grants, custody events and append-only audit

Scale signal

Policy latency and audit delivery lag

Trust boundary

Default deny at every case and evidence boundary

Recovery contract

Loss-intolerant audit delivery and custody reconciliation

execution model

Evidence path

The request path stays short. Expensive or retryable analysis crosses into asynchronous work after admission.

01 · Human boundary

Investigator

in progress

today

Case browser, evidence register, document lab and progress board.

target

Authenticated workspace with review queues and explicit approvals.

HTTPS browser session

02 · Traffic boundary

Ingress

in progress

today

A Kubernetes ingress exposes the web and API under one development origin.

target

Managed TLS, request limits and versioned ingress configuration.

/* to frontend · /api/* to API

03 · Synchronous control plane

Application services

in progress

today

Next.js and FastAPI run as separate arm64 container workloads.

target

Independent workloads with health, readiness and resource limits.

HTTP + JSON + multipart

04 · Asynchronous data plane

Processing workers

backlog

today

Classification runs inside the API process.

target

Idempotent queued jobs for OCR, media, entities and graph updates.

Job envelope + artifact references

05 · Durable state plane

Evidence and records

backlog

today

Case folders and normalized JSON on local disk.

target

Object storage, PostgreSQL metadata and immutable provenance.

Object keys + relational IDs

06 · Decision-support plane

Graph and findings

backlog

today

Scored fixtures and scenario-shaped screens exist.

target

Resolved entities, sourced edges and ranked explainable findings.

Canonical entities + source spans

The synchronous path ends when the API accepts and records work. OCR, media analysis, entity resolution and graph recomputation belong on the asynchronous data plane so request retries cannot duplicate evidence.

Green is built and answering, amber is partly there, red is not started. Architecture percentages are weighted readiness gates, not delivery dates. Pipeline items marked live are read from /api/status so they cannot drift; the rest are kept by hand in application/frontend/lib/plan.ts.