Skip to content

Dev Update — dirac-odoo & asset-lifecycle

Date: 2026-06-18 Scope: ADR 0008 terminology correction + asset-lifecycle naming cleanup


dirac-odoo — ADR 0008 Terminology Correction

What changed

ADR 0008 (docs/adr/0008-assembly-cell-process-with-sa-governance.md) had imprecise language that confused developers about what an "SA" actually is in the assembly context.

Old (wrong): "SA = assembly line" New (correct): "SA = Production Location" — a production location may contain cells, lines, or both.

Why it matters

Developers were thinking "SA = one assembly line". That's incorrect. The correct mental model:

  • SA = Production Location (the physical location where production happens)
  • A production location may contain multiple cells, multiple lines, or both
  • Cell = batch/unit production (one MO = one vehicle, CKD box → assembled unit)
  • Line = continuous flow production (different workflow, future)
  • Each production mode needs its own SA applet:
  • Assembly-Cell applet → handles cell-based production (this is what we're building now)
  • Assembly-Line applet → handles line-based production (future, not yet designed)

Action for developers

  1. Stop saying "SA = assembly line" — it's "SA = Production Location"
  2. When discussing assembly SA applets, distinguish "cell" vs "line" — they are different production processes
  3. ADR 0008 is now Proposed (was Draft) — please review and give feedback
  4. File was renamed: 0008-assembly-mrp-process-with-sa-governance.md0008-assembly-cell-process-with-sa-governance.md

Files changed (dirac-odoo)

File What changed
docs/adr/0008-assembly-cell-process-with-sa-governance.md Terminology: all "SA = assembly line" → "SA = Production Location"; added "Cell vs. Line" clarification; renamed
docs/adr/index.md Updated filename + status (Draft → Proposed)
mkdocs.yml Added missing ADR 0007 + 0008 to nav (were missing)
.session.md New session log

Commit: 42c742f (terminology update), c0b2ebb (mkdocs sync + session log)


asset-lifecycle — Build Record + Asset Passport Naming

What changed (previous session, already committed)

The domain note for the assembly record was using the term "Birth Certificate", which is not an industry term and caused confusion.

Old: "Birth Certificate" for the assembly record New: "Build Record" (industry term: "as-built record") + "Asset Passport" (evolved RWA-ready concept)

Naming convention (now enforced)

Term Meaning
ov.asset.registry Odoo model / container (the "registry")
Build Record One row in the registry (assembly-time record)
Asset Passport Evolved concept: Build Record + lifecycle events = RWA-ready object

"Registry" = the place that keeps the records. The record itself is not a "registry".

Files changed (asset-lifecycle)

File What changed
docs/9-warranty/2-build-record-and-asset-passport.md Renamed from 2-birth-certificate-for-lev-entities.md; rewritten
docs/9-warranty/index.md Updated nav
docs/10-provenance-and-rwa/1-asset-provenance-and-rwa-readiness.md "birth certificate" → "Build Record"
docs/index.md, mkdocs.yml Updated nav links

Commit: 3850ae5 (asset-lifecycle), 162d1b6 (dirac-odoo cross-reference update)


Doc Sites — Local URLs

Repo Local URL Status
consolidated-docs (Doc Hub) http://127.0.0.1:8017/ ✅ Serving
dirac-odoo http://127.0.0.1:8017/internal/dirac-odoo/ ✅ Serving
asset-lifecycle http://127.0.0.1:8018/ ✅ Serving

Note: consolidated-docs serves the Doc Hub on port 8017; child repos are proxied under /internal/<repo>/. asset-lifecycle serves independently on port 8018.


Quick Reference for Developers

SA terminology (assembly context)

SA = Production Location
  ├── may contain: Cell(s), Line(s), or both
  ├── Cell = batch production (one MO = one vehicle)
  └── Line = continuous flow production (future)

Applet mapping

Production mode SA applet Status
Cell (batch) Assembly-Cell Designing (ADR 0008 Proposed)
Line (continuous) Assembly-Line Future (not yet designed)

Build Record lifecycle

CKD box delivered → scan manifest → form opens (Build Record: Draft)
  → scan components → progressively update (Draft)
  → physical assembly → no Odoo transaction yet
  → line manager inspects → manager signs off
  → Odoo: Serial created, OEM-ID assigned (Build Record: Finalized)

Questions? Ping me. — HW