ArchitectureNamespaces
Monorepo Structure
The repo now reflects a Core-first split: Next.js owns UI and proxying, Python Core owns normative behavior, and LINA keeps only interaction and voice-local domains.
Workspace Definition
packages:
- apps/*
- services/*
- packages/*
- documentation`apps/docs` is part of the same workspace graph, but it is the human-facing summary layer. Authoritative scope and runbook statements still live in the cited source artifacts.
Package Layout
apps/aijim-app
Main Next.js product app: browser UI, BFF routes, and LINA-facing proxies.
apps/docs
Human-facing docs index and summary layer for the current architecture.
services/aijim-core
Python FastAPI Core with normative execution, conformance, governance, and audit logic.
services/voice-renderer
Dedicated LINA voice/STT/TTS runtime and operations surface.
API Namespace Split
| Namespace | Owner | Examples | Notes |
|---|---|---|---|
| /api/core/* | AIJIM Core via Next.js BFF proxies | /api/core/evidence/*, /api/core/stories/*, /api/core/audit-bundle/*, /api/core/signature/verify | Only namespace for Core-owned product routes. Browser clients never call Core directly. |
| /api/workspace/* | Workspace app | /api/workspace/config/domain, /api/workspace/config/translation, /api/workspace/widget-layout, /api/workspace/impact/events | App-local UX state and utilities that are not normative Core contracts. |
| /api/lina/* | LINA runtime | /api/lina/session-events, /api/lina/voice/*, /api/lina/voice-metrics, /api/lina/rag/* | Interaction, voice, and assistant-local state only. No new normative write paths belong here without a boundary amendment. |
| /api/dev/* | Dev-only tooling | /api/dev/auth/*, /api/dev/seed/* | Debug and seeding helpers that do not define product runtime ownership. |
Retired Namespace
The newsroom runtime namespace is retired. Current docs should treat it as historical only, and the repo-level guard
scripts/check_no_newsroom_runtime.shprevents the historical newsroom route family from re-entering runtime code. The ownership split is defined indocumentation/runbooks/AIJIM_CORE_FIRST_OWNERSHIP_MATRIX.md.