Skip to content

Gate D — mutation / import plan (executed)

Gate D was approved and executed on 2026-07-26. This document preserves the reviewed plan; execution evidence is in ../../estate/gate-d-import-result.yml.

Status: package-in-review — do not execute until Conductor-Gate-D: approve on issue #3. Depends on: Gates A–C approved; Gate C discovery is complete for the approved application source boundary.

Prerequisites checklist

Prerequisite Evidence
Gate A schema state-model.md state-model.v2
Gate B Asset model asset-registry.md asset-registry.v2
Gate C access + inventory read-access-contract.md, source-inventory.md
Source registry source-registry.yml: 131 candidate project units
Dry-run package gate-d-dry-run.yml
Review groups review-groups.yml
Golden-path candidate selected Recommended anchor prepared; Hector approval pending
Rollback rehearsal plan Below

Proposed database changes (dry-run)

  1. Under confirmed Notion parent page, create empty databases:
  2. Conductor Initiatives
  3. Conductor Workstreams
  4. Conductor Products
  5. Conductor Assets
  6. Conductor Decisions/Events
  7. Conductor Asset Repositories
  8. Conductor Asset Environments
  9. Conductor Asset Evidence
  10. Conductor Asset Relationships
  11. Apply properties from state-model.v2 / asset-registry.v2.
  12. Record database IDs into Bitwarden-backed config names only (see read-access contract).
  13. Do not enable Conductor write orchestrator as the import writer. Prefer a one-shot operator/agent import under Portfolio Manager, or a dedicated import script reviewed in a PR.

Dry-run row counts:

Store Proposed initial rows Rule
Assets 131 Candidate-only; no extracted description becomes reviewed
Asset Repositories 131 One repository/subpath locator per candidate
Asset Evidence at least 131 Provenance only
Asset Environments 0 No deployment URL without verification
Asset Relationships 0 Review queues are not authoritative edges
Decisions/Events 0 Created only in the approved execution batch with Initiative context

Candidate Asset import set

Import only after human review of:

  • Post-Gate-C enumerated repos and deploy URLs
  • Suspected duplicate groups
  • The selected golden-path application or related group with comparable purpose / users_needs / capabilities
  • Explicit source-coverage gaps and excluded or failed sources

See review-groups.yml. The current human-review queue covers the six-member real-estate group, the exact-name fiser-nextjs collision, likely language-tutor overlap, event-product overlap, and the explicit Fund Console consolidation claim.

Proposed golden-path Asset records

Recommended anchor: github:hector-sanchez-eu/germany-real-estate-intelligence. Hector must approve the anchor and dispositions for the five related members. Each selected reviewed record must include purpose, users/needs, capabilities, lifecycle, estate, provenance, freshness, privacy, repositories, deployments, and relationships.

Rollback and partial failure

Step Rollback
DB create fails mid-way Delete newly created empty DBs; abort
Property mismatch Fix schema in a follow-up PR; do not dual-write old sketch fields
Partial Asset import Mark batch import_batch_id; delete or set review_status=rejected for failed subset; re-run idempotently by asset_id
Wrong privacy class imported Redact/quarantine immediately; re-import after classification

The local deterministic rehearsal passed for one canary and the full 131-record batch: second runs created zero duplicates, and rollback returned all three stores to zero. See gate-d-rollback-rehearsal.yml. Notion property creation, relation readback, archive behavior, and partial API failure were captured as execution-time canary and recovery evidence after Gate D approval.

Privacy evidence

  • No secret values in import payloads
  • client-private sources excluded unless Gate C expanded
  • Candidate extraction_notes never copied into reviewed authoritative fields without human edit

Approval

Comment Conductor-Gate-D: approve on issue #3 after this package is updated with the human decisions in review-groups.yml, candidate-only import acceptance, one-shot writer approval, and rollback rehearsal authorization. Schema approval alone is not sufficient.