OTIS Operational Management · runs the business
Shared brain — checking…
Reading the nle9_ data pool…
🏭 Production execution stays in NEIL

The manager's office. Readiness, forecast, blocked runs, work-order oversight — the altitude above the floor. The factory itself (emulsion, QC, filling, release) runs in NEIL; Otis watches the same data, never duplicates it.

What lives here (after migration)
Production department — manager's view
Oversight of NEIL's floor: production readiness score, forecast vs. plan, blocked-run queue, work-order status, equipment availability. Read-only on execution; deep-links into NEIL for the floor screens.
  • Readiness & forecast — reads nle9_prod_plans, nle9_mes_wo
  • Finished-goods position — reads nle9_fg
  • Blocked runs & oil position — reads nle9_batches, nle9_oil_inv
Act on the floor — deep-link into NEIL
Decide here, act there. These open NEIL's real floor screen and show a "← Otis" door to come back. Owners and managers only.
Live data probe — what Otis can see in the shared pool
Reads NEIL's real localStorage directly, same-origin — zero here means NEIL genuinely has no records yet, not a connection problem.
💰 Accountingmoves to Otis

The full financial suite: costs, Profit First, take-home (est/actual), reconciliation, royalties, commissions, QuickBooks. Note: Porter Bank and operator money-privacy stay in NEIL — operators still see counts-only. Only the accounting suite moves up here.

What lives here (after migration)
Accounting suite — owner / bookkeeper
Cost ledger, Profit First, estimated vs. actual take-home, reconciliation, royalties, commissions, QBO integration. Access password-gated; QBO credentials masked.
  • Routes to migrate: costs · pf · actual · est · recon · royalty · commissions · qbo · paystatus
  • Cross-tie: vendors (canonical home = Accounting; Admin references it)
Open the Accounting screens in NEIL
Accounting now lives in Otis. The screens stay in NEIL, password-gated — these open the real screen through NEIL's Accounting lock (you'll enter the accounting password if the session isn't already unlocked), with money revealed and a "← Otis" door back.
Porter Bank and operator money-privacy stay in NEIL — they are not moved here.
Live data probe
📊 Salesfirst cut

LeafTrade orders, distribution, promotions, sales history, brand profit. Smallest pillar (5 routes), most leaf-like — the recommended first migration to prove the cut-and-validate loop.

What lives here (after migration)
Sales — order flow & distribution
Downstream of finished goods: where released product becomes orders and moves. Reads FG position from NEIL's shared pool.
  • Routes to migrate: leafTrade · saleshist · brandprofit · distribution · promo
Open the Sales screens in NEIL
Sales now lives in Otis. The screens stay in NEIL as deep-link targets — these open the real screen with a "← Otis" door to come back.
Live data probe
🏷 Brandsmoves to Otis

SKU database, brand lines (Highgrade, Slow Tech, E-Base), product development, brand performance, brand registry. The catalog the floor produces against.

What lives here (after migration)
Brands — catalog & product development
SKU registry, brand lines, product-dev workspace, brand performance. Production reads the catalog; Brands owns its definition.
  • Routes to migrate: skudb · highgrade · productline · brandperf · productdev · brandact · brandreg
Open the Brands screens in NEIL
Brands now lives in Otis. The screens stay in NEIL as deep-link targets — these open the real screen with a "← Otis" door back. Revenue / Brand Profit lives here (NEIL files it under Brands), not under Sales.
Live data probe
🛡 Compliancereader of NEIL truth

Traceability, recall, complaints, damaged product, label compliance, document registry. A reader of production truth (the ClosureIQ pattern) — heavy dependency on NEIL's batch/FG data, which stays in the shared pool.

What lives here (after migration)
Compliance — evidence & closure
Recall center, traceability, complaints, damaged-product workflow, label compliance, document registry. Cross-tie: qc executes in NEIL — Compliance needs a read-only/deep-link view, not a copy.
  • Routes to migrate: traceability · recall · complaints · damaged · labelcomp · docreg · chemdir · testsubmit · compliance
Open the Compliance screens in NEIL
Compliance now lives in Otis. The screens stay in NEIL as deep-link targets — these open the real screen with a "← Otis" door back.
QC / COA is a Production cross-tie — it runs on the NEIL floor and is owned by Production. Compliance reads and deep-links to it; it does not own it.
Live data probe
⚙️ Adminde-bloat on the way

Users, permissions, integrations, legal, documents, audit log, vendors, backup, system health. Currently overloaded (20 routes) — several are mis-filed lab/production functions that go back to NEIL, not up to Otis.

What lives here (after migration)
Admin — platform & governance
Owner console, integrations, legal dashboard, audit log, backup, system health, document registry, vendor library, plus Users & Settings.
  • Stays in Otis Admin: admin · integrations · sop · auditlog · backup · legaldash · exec · system-health · product-reg · licensed-products · investigations · quality-gates
  • Move BACK to NEIL (mis-filed): emul · fic · ingredients · foodsci · nelab
Open the Admin screens in NEIL
Admin now lives in Otis. The governance screens stay in NEIL as deep-link targets — these open the real screen with a "← Otis" door back. Lab functions (emul, fic, ingredients, foodsci, nelab) stayed in NEIL's Production, where they belong.
These screens keep NEIL's own gating. Real platform-admin security (cross-tenant, recovery key, owner console) is server-side and still pending — this nav move is organization, not enforcement.
Live data probe
production / success science / research intelligence / AI warning critical