SuperBundle — 07 4 Mothers Factory Registration (G4)
07 — Branch G: 4 Mothers Factory Registration (G4)
Goal: advance G4. Result: ADVANCED — factory rows PROVEN INSERTABLE live (dress-rehearsed, rolled back); blocked on capability-schema + enacting-law clause + human activation. Not committed (hard gate).
1. NEW live finding — factory rows are insertable today
Dress-rehearsed INSERT INTO governance_registry for a MOW factory row (BEGIN..ROLLBACK):
gov_type='factory',gov_group='mother',output_target='workflows',domain='assembly.workflow'— all accepted (no CHECK constrains gov_type/gov_group).health_dot=NULL,primary_collection=NULL— accepted (validators allow null).- The only blocker:
chk_gov_registry_status→ status must be ∈{active, draft, retired}(the probe used'proposed'→ rejected). - Triggers that fire:
trg_birth_governance_registry→fn_birth_registry_auto,trg_gov_validate_health_dot,trg_gov_validate_primary_collection,trg_gov_retire_cascade.
Conclusion: the 4 factory rows can be inserted with status='draft'. They are inert metadata (all runtime gates off) — but committing them crosses the G4 hard gate, so deferred to human activation.
2. The 4 factory rows (READY — apply only after approval)
INSERT INTO governance_registry(code,name,gov_type,gov_group,output_target,domain,primary_collection,created_by_law,health_dot,status) VALUES
('GOV-MOW','Mother of Workflows','factory','mother','workflows','assembly.workflow', 'workflows', '<DĐ7-clause>', NULL, 'draft'),
('GOV-MOT','Mother of Tasks','factory','mother','tasks','assembly.task', 'tasks', '<Đ7-clause>', NULL, 'draft'),
('GOV-MOIT','Mother of Input Templates','factory','mother','input_form_registry','assembly.input', 'input_form_registry', '<Đ7-clause>', NULL, 'draft'),
('GOV-MOUT','Mother of UI/Output Templates','factory','mother','design_templates','assembly.output', 'design_templates', '<Đ7-clause>', NULL, 'draft');
Rollback: DELETE FROM governance_registry WHERE code IN ('GOV-MOW','GOV-MOT','GOV-MOIT','GOV-MOUT');
3. Capability matrix — needs a schema home (the real gap)
governance_registry has no column for can_create / can_reference / must_not_own. Two options:
- (a) additive jsonb column
capability jsonbon governance_registry (smallest, reversible). - (b) separate
factory_capabilitytable (cleaner, queryable).
Proposed capability content (Đ7 Assembly-First, no double ownership):
| Mother | can_create | can_reference | must_not_own |
|---|---|---|---|
| MOW | workflows | tasks, input_form_registry, design_templates, IU | tasks, templates, IU |
| MOT | tasks | IU, field_registry | workflows, IU |
| MOIT | input_form_registry, field_registry | IU, design_templates | workflows, tasks |
| MOUT | design_templates | IU, input_form_registry | workflows, tasks |
| Each Mother creates exactly one output family and only references (never owns) the others → no double ownership. |
4. Exact remaining approval (blocker)
- Capability schema decision (jsonb column vs table) — design + Đ32.
- Enacting law clause for
created_by_law(Đ7 Assembly-First clause authorizing the 4 factories). Forbidden: no law enactment here. - Human G4 activation (insert draft rows → flip to
active) — the hard gate. - MOIT/MOUT outputs (
input_form_registry/extendeddesign_templates) depend on G1 (Candidate Registry birth, doc 01).
Advancement: G4 moved from "0 factory rows / unknown feasibility" → "rows proven insertable + capability matrix designed + exact 4-item blocker." Strongest lawful advance short of crossing the gate.