# Operator Notes — 2026-02-06 — Scientia Parent Framing Patch (Phase 3A) **Scope:** Option 3A parent-framing (copy/UI only). No new pages. No productization. **Primary file touched:** `/apps/page.tsx` **IGR-0.7:** internal CI language-policy gate (lexical/term-based). ## What went wrong ### CI policy surfaced late as a terminology constraint - IGR-0.7 blocks certain terms regardless of intent or context. - A blocked token appeared in a section label; the gate is lexical (term match), not meaning-aware. - Result: CI failed after a logically correct copy pass. ### Assumptions about “safe vocabulary” - We assumed canonical internal terminology was safe in documentation-only contexts. - The repo treats some words as globally sensitive even when used structurally. ### Scanner feedback was indirect - CI output pointed to a pattern match rather than intent. - Manual inspection was vital to find the exact triggering line. ## What went right ### The gate worked as designed - It prevented ambiguous language from shipping. - Enforcement stayed consistent even when intent was benign. ### Architecture separation held under pressure - Scientia vs Scientia.io separation remained intact. - System ≠ platform ≠ engine ≠ lens boundaries held. - Option 3A scope held (no new pages, no productization). ### Minimal, localized correction - The issue was isolated to `/apps/page.tsx`. - A small terminology shift toward “evidence / sources / context” resolved the blocker without ripple effects. ### Process discipline paid off - Copy-only, path-safe changes made the fix fast and easy to audit. ## What was accomplished ### Scientia parent framing landed (Option 3A) - Clear hierarchy on `/apps`: - Scientia (system doctrine) - Scientia.io (runtime/interface) - Engines: RadixOS, Solum, Pondus, Custos - Lenses: listed on `/apps` (unchanged) - No implied product catalog, onboarding, or SaaS posture. ### Custos de-productized across the surface - `/apps`: Custos reframed as execution & workflow layer (no authority). - `/ops-toys`: moved from sprint/product language to an internal-layer explainer with a handoff to services. - `/services`: ownership emphasized as Invariant Execution Kits, with Custos explicitly internal. ### Invariant clarified without governance drift - Execution kits are studio-delivered artifacts. - Built using Custos, not sold as Custos. - Preserves company ≠ system ≠ layer invariants. ### CI + language alignment improved - We now have a concrete example of “common term, disallowed by policy gate.” - Future copy can proactively avoid terms that trigger scanners. ## Forward-looking lessons - Treat CI language gates as part of the system, not just tooling. - Maintain a blocked-vocabulary map for documentation, not only code. - Prefer “evidence / sources / context” phrasing in parent framing.
← Back to Operator Notes
Postmortem2026-02-06Read-only · Immutable
