{
  "phase_id": "phase-02",
  "category_id": "architecture_engineering_core",
  "doc_id": "panel_data_contract",
  "source_path": "/home/yeff/public_html/devon/panel/data/panel_data_contract.json",
  "documentation_branch_status": "CUSTOM_BRANCH",
  "bucket_statuses_from_docs_index": {
    "Prerequisites": "ACTIVE",
    "Installation": "ACTIVE",
    "Configuration": "ACTIVE",
    "Validation": "ACTIVE",
    "Observable Evidence": "ACTIVE",
    "Failure Modes & Recovery": "ACTIVE",
    "Completion & Promotion": "ACTIVE"
  },
  "exported_at": "2026-04-28T05:56:48.644291+00:00",
  "export_rule": "docs/json export generated from real panel/data source plus docs/index.php branch evidence; no authored content invented by export patch",
  "source_payload": {
    "canon_meta": {
      "canon_id": "devon-panel-data-contract",
      "version": "1.0.0",
      "status": "ACTIVE",
      "contract_mode": "ui_read_only_from_canon"
    },
    "panel_data_contract": {
      "objective": "Define the canonical data interface the Operator Panel must consume in order to render deployment-ordered navigation, cards, subcategories, evidence, contracts, timelines, filters and status counters without deriving fake state.\n",
      "primary_sources": {
        "project_scope": "/opt/devon/canon/00_project_scope_canonical.yaml",
        "deployment_order": "/opt/devon/canon/01_deployment_order_canonical.yaml",
        "panel_tree": "/opt/devon/canon/02_panel_canonical_tree.yaml",
        "card_contracts": "/opt/devon/canon/03_card_contract_minimums.yaml",
        "memory_architecture": "/opt/devon/canon/04_memory_canonical_architecture.yaml",
        "server_registry": "/opt/devon/canon/05_server_registry_canonical.yaml",
        "sandbox_architecture": "/opt/devon/canon/06_sandbox_environment_canonical.yaml",
        "subcategory_pipelines": "/opt/devon/canon/07_subcategory_pipelines.yaml",
        "canonical_matrix": "/opt/devon/canon/08_canonical_matrix_v1.yaml",
        "navigation_spec": "/opt/devon/canon/09_panel_navigation_spec.yaml"
      },
      "panel_views": {
        "required": [
          "deployment_overview",
          "section_view",
          "card_view",
          "subcategory_view",
          "contract_view",
          "evidence_view",
          "dependency_view",
          "timeline_view",
          "server_scope_view",
          "memory_scope_view",
          "project_scope_view"
        ]
      },
      "canonical_entities": {
        "section": {
          "primary_key": "section_id",
          "required_fields": [
            "section_id",
            "display_name",
            "cards"
          ]
        },
        "card": {
          "primary_key": "card_id",
          "required_fields": [
            "card_id",
            "display_name",
            "subcategories"
          ]
        },
        "matrix_row": {
          "primary_key": "matrix_id",
          "required_fields": [
            "matrix_id",
            "deployment_order",
            "deployment_stage",
            "section_id",
            "card_id",
            "display_name",
            "subcategory",
            "objective",
            "hard_dependencies",
            "blockers",
            "evidence_expected",
            "checks",
            "pipeline_ref",
            "contract_ref",
            "status_initial"
          ]
        },
        "status_counter": {
          "required_fields": [
            "total",
            "pass",
            "fail",
            "missing",
            "by_stage"
          ]
        }
      },
      "ui_resolution_rules": {
        "deployment_navigation_source": "section_id + deployment_stage + deployment_order",
        "card_grid_source": "panel_tree.deployment_sections.cards",
        "matrix_source": "canonical_matrix.matrix",
        "contract_source": "card_contracts.contract_schema",
        "timeline_source": "canonical_matrix.matrix",
        "status_source": "observable_evidence_only",
        "no_mock_or_derived_fake_progress": true
      },
      "join_rules": [
        {
          "join_name": "section_to_card",
          "left": "panel_tree.deployment_sections.section_id",
          "right": "canonical_matrix.matrix.section_id"
        },
        {
          "join_name": "card_to_matrix",
          "left": "panel_tree.deployment_sections.cards.card_id",
          "right": "canonical_matrix.matrix.card_id"
        },
        {
          "join_name": "stage_to_matrix",
          "left": "deployment_order.deployment_order.stage",
          "right": "canonical_matrix.matrix.deployment_stage"
        }
      ],
      "filters": {
        "required": [
          "by_project",
          "by_server",
          "by_status",
          "by_stage",
          "by_card",
          "by_memory_scope"
        ]
      },
      "drawers": {
        "evidence_drawer": {
          "required_fields": [
            "matrix_id",
            "evidence_expected",
            "checks",
            "status",
            "last_validation"
          ]
        },
        "contract_drawer": {
          "required_fields": [
            "card_id",
            "contract_ref",
            "required_blocks"
          ]
        },
        "dependency_drawer": {
          "required_fields": [
            "matrix_id",
            "hard_dependencies",
            "blockers"
          ]
        },
        "memory_scope_drawer": {
          "required_fields": [
            "memory_partition_class",
            "routing_keys",
            "read_policy",
            "write_policy"
          ]
        },
        "server_scope_drawer": {
          "required_fields": [
            "server_id",
            "role",
            "allowed_projects",
            "sandbox_capable",
            "promotion_capable"
          ]
        }
      },
      "status_rules": {
        "PASS": "evidence exists and functional validation passes",
        "FAIL": "evidence exists and validation fails",
        "MISSING": "evidence does not exist observably"
      },
      "render_contract": {
        "topbar": {
          "required": [
            "project_selector",
            "server_selector",
            "deployment_stage_selector",
            "global_status_counters",
            "search_box",
            "quick_actions"
          ]
        },
        "sidebar": {
          "ordering": "deployment_order_only",
          "source": "deployment_order + panel_tree"
        },
        "center_workspace": {
          "default_tab": "preview",
          "allowed_tabs": [
            "preview",
            "artifact",
            "contract",
            "diff",
            "logs",
            "metrics",
            "timeline"
          ]
        },
        "right_stack": {
          "required_drawers": [
            "evidence_drawer",
            "dependency_drawer",
            "memory_scope_drawer",
            "validation_drawer",
            "server_scope_drawer"
          ]
        }
      }
    }
  },
  "transition_status": "ACTIVE_DH_MIRROR",
  "hardening_status": "HARDENING_PARTIAL",
  "engine_grade_final": false,
  "validation_mode": "schema_backed_transition",
  "parser_readiness": "medium",
  "hardening_priority": "schema_key_binding",
  "structural_contract": {
    "hardening_status": "HARDENING_PARTIAL",
    "engine_grade_final": false,
    "transition_status": "ACTIVE_DH_MIRROR",
    "doc_id": "panel_data_contract",
    "category_id": "architecture_engineering_core",
    "phase_id": "phase-02",
    "hardening_lane": "json_schema_key_binding",
    "patch_type": "bind_schema_key_paths",
    "created_at": "2026-04-28T15:40:28.164038+00:00",
    "authority": {
      "authority_owner": "panel_data_contract.json",
      "canonical_role": "panel data contract authority",
      "authority_scope": "defines the data payload boundary the future panel can consume from DH/category mirrors without inventing field meaning locally",
      "panel_data_domain": [
        "panel data payload",
        "field contract",
        "data-source boundary",
        "data validation key paths"
      ],
      "not_authority_for": [
        "component lifecycle",
        "navigation behavior",
        "UI presentation ownership"
      ]
    },
    "required_before": [
      "panel data ingestion",
      "contract drawer",
      "future panel execution reader"
    ],
    "hard_dependencies": [
      "css.md",
      "acs.md"
    ],
    "feeds_operational_ui": [
      "contract_drawer",
      "data_ingestion",
      "evidence_drawer",
      "future_panel_data_contract_reader"
    ],
    "bucket_contracts": {
      "Prerequisites": {
        "contract_role": "prove panel_data_contract.json is materially present, phase-bound and dependency-bound before downstream consumers use it",
        "required_structural_fields": [
          "authority_owner",
          "canonical_role",
          "required_before",
          "hard_dependencies",
          "panel_data_domain"
        ],
        "validation_mode": "schema_backed_transition",
        "parser_readiness": "medium"
      },
      "Installation": {
        "contract_role": "make panel_data_contract available as a Documentation Hub mirror with fixed technical identity and branch binding",
        "required_structural_fields": [
          "doc_id",
          "category_id",
          "phase_id",
          "documentation_branch_status",
          "source_path",
          "expected_bindings"
        ],
        "validation_mode": "schema_backed_transition",
        "parser_readiness": "medium"
      },
      "Configuration": {
        "contract_role": "bind panel_data_contract authority scope, dependency boundaries and forbidden ownership classes into parseable structure",
        "required_structural_fields": [
          "authority_scope",
          "not_authority_for",
          "panel_data_domain",
          "boundary_rules"
        ],
        "validation_mode": "schema_backed_transition",
        "parser_readiness": "medium"
      },
      "Validation": {
        "contract_role": "convert panel_data_contract into deterministic PASS, FAIL and MISSING checks for identity, binding, source and authority boundary",
        "required_structural_fields": [
          "validation_checks",
          "pass_criteria",
          "fail_criteria",
          "missing_criteria"
        ],
        "validation_mode": "schema_backed_transition",
        "parser_readiness": "medium"
      },
      "Observable Evidence": {
        "contract_role": "expose file paths, DH branch binding, source payload shape and mirror path proving panel_data_contract is observable",
        "required_structural_fields": [
          "evidence_paths",
          "expected_bindings",
          "observable_checks"
        ],
        "validation_mode": "schema_backed_transition",
        "parser_readiness": "medium"
      },
      "Failure Modes & Recovery": {
        "contract_role": "recover missing source, wrong binding, dependency break, authority overreach and false promotion for panel_data_contract",
        "required_structural_fields": [
          "failure_modes",
          "recovery_actions",
          "rollback_or_safe_state"
        ],
        "validation_mode": "schema_backed_transition",
        "parser_readiness": "medium"
      },
      "Completion & Promotion": {
        "contract_role": "promote panel_data_contract only as hardened DH mirror input, not as final engine-grade contract",
        "required_structural_fields": [
          "done_when",
          "not_done_when",
          "promotion_gate",
          "canonization_gate"
        ],
        "validation_mode": "schema_backed_transition",
        "parser_readiness": "medium"
      }
    },
    "validation_checks": [
      {
        "check_id": "panel_data_contract_doc_identity",
        "type": "exact_value",
        "path": "$.doc_id",
        "expected": "panel_data_contract",
        "on_fail": "FAIL"
      },
      {
        "check_id": "panel_data_contract_category_binding",
        "type": "exact_value",
        "path": "$.category_id",
        "expected": "architecture_engineering_core",
        "on_fail": "FAIL"
      },
      {
        "check_id": "panel_data_contract_phase_binding",
        "type": "exact_value",
        "path": "$.phase_id",
        "expected": "phase-02",
        "on_fail": "FAIL"
      },
      {
        "check_id": "panel_data_contract_branch_status",
        "type": "exact_value",
        "path": "$.documentation_branch_status",
        "expected": "CUSTOM_BRANCH",
        "on_fail": "FAIL"
      },
      {
        "check_id": "panel_data_contract_authority_owner_declared",
        "type": "exact_value",
        "path": "$.structural_contract.authority.authority_owner",
        "expected": "panel_data_contract.json",
        "on_fail": "FAIL"
      },
      {
        "check_id": "panel_data_contract_not_engine_final",
        "type": "exact_value",
        "path": "$.engine_grade_final",
        "expected": false,
        "on_fail": "FAIL"
      },
      {
        "check_id": "panel_data_contract_source_payload_object_present",
        "type": "object_present",
        "path": "$.source_payload",
        "on_missing": "MISSING",
        "on_fail": "FAIL"
      },
      {
        "check_id": "panel_data_contract_depends_on_css_md",
        "type": "array_contains",
        "path": "$.structural_contract.hard_dependencies",
        "expected": "css.md",
        "on_fail": "FAIL"
      },
      {
        "check_id": "panel_data_contract_depends_on_acs_md",
        "type": "array_contains",
        "path": "$.structural_contract.hard_dependencies",
        "expected": "acs.md",
        "on_fail": "FAIL"
      }
    ],
    "evidence_paths": [
      "/home/yeff/public_html/devon/panel/data/panel_data_contract.json",
      "/home/yeff/public_html/devon/docs/index.php",
      "/home/yeff/public_html/devon/panel/data/hub_index.json",
      "/home/yeff/public_html/devon/panel/data/master_architecture_index.md",
      "/home/yeff/public_html/devon/docs/json/phase-02/panel_data_contract.json",
      "/home/yeff/public_html/devon/docs/json/phase-02/_phase02_hardening_queue.json"
    ],
    "expected_bindings": [
      {
        "binding": "docs_index_custom_branch",
        "expected": "if (doc.id === \"panel_data_contract\" && state.categoryId === \"architecture_engineering_core\")"
      },
      {
        "binding": "hub_index_phase",
        "expected_phase_id": "phase-02"
      },
      {
        "binding": "hub_index_category",
        "expected_category_id": "architecture_engineering_core"
      }
    ],
    "failure_modes": [
      {
        "failure_id": "panel_data_contract_source_missing",
        "status": "MISSING",
        "meaning": "panel_data_contract source cannot be read from declared source path",
        "recovery_action": "restore /home/yeff/public_html/devon/panel/data/panel_data_contract.json or the declared mirror source before hardening can continue"
      },
      {
        "failure_id": "panel_data_contract_unbound_from_phase02",
        "status": "FAIL",
        "meaning": "panel_data_contract is present but not bound to phase-02 / architecture_engineering_core",
        "recovery_action": "restore hub_index and docs/index binding to the canonical Phase 02 category"
      },
      {
        "failure_id": "panel_data_contract_dependency_missing",
        "status": "MISSING",
        "meaning": "panel_data_contract cannot prove declared hard dependencies",
        "recovery_action": "restore declared dependencies or block promotion until dependency validation passes"
      },
      {
        "failure_id": "panel_data_contract_authority_overreach",
        "status": "FAIL",
        "meaning": "panel_data_contract claims authority outside its declared scope",
        "recovery_action": "revoke overreaching authority and route the claim to the owning document or contract"
      },
      {
        "failure_id": "panel_data_contract_false_engine_promotion",
        "status": "FAIL",
        "meaning": "panel_data_contract is promoted as engine-grade final while still in DH mirror transition",
        "recovery_action": "restore ACTIVE_DH_MIRROR / HARDENING_PARTIAL and require deterministic schema validation before final promotion"
      }
    ],
    "promotion_gates": {
      "done_when": [
        "panel_data_contract source exists materially",
        "panel_data_contract is registered under Phase 02",
        "panel_data_contract has a custom Documentation Hub branch",
        "panel_data_contract JSON mirror contains structural_contract",
        "panel_data_contract exposes authority, dependencies, evidence paths, validation checks and promotion gates as parseable fields"
      ],
      "not_done_when": [
        "source payload is missing",
        "category binding is wrong",
        "declared dependency is absent",
        "authority scope is overreached",
        "engine_grade_final is set true before deterministic schema validation exists"
      ],
      "promotion_gate": "panel_data_contract may move to HARDENING_PARTIAL after structural_contract exists and verifies, but must not become engine_grade_final until all decisive checks are schema-backed and deterministic.",
      "canonization_gate": "panel_data_contract remains an ACTIVE_DH_MIRROR until authority, dependency, evidence, failure and promotion checks can be consumed without semantic prose interpretation."
    },
    "parser_readiness_after_patch": "medium",
    "blocked_until_engine_grade_final": [
      "all validation checks resolve from JSON key paths",
      "all required dependencies are machine-checkable",
      "all authority boundaries produce deterministic FAIL when violated",
      "future operational panel can consume the contract without reading source prose"
    ],
    "mirror_type": "json_mirror",
    "schema_binding": {
      "required_keys": [
        "source_payload"
      ],
      "source_payload_key_paths": [
        "$.source_payload",
        "$.structural_contract",
        "$.bucket_statuses_from_docs_index"
      ],
      "expected_values": {
        "$.phase_id": "phase-02",
        "$.category_id": "architecture_engineering_core",
        "$.doc_id": "panel_data_contract",
        "$.engine_grade_final": false,
        "$.transition_status": "ACTIVE_DH_MIRROR"
      },
      "allowed_statuses": [
        "PASS",
        "FAIL",
        "MISSING",
        "ACTIVE_DH_MIRROR",
        "HARDENING_PARTIAL"
      ],
      "deterministic_fail_modes": [
        "wrong_doc_id",
        "wrong_category_id",
        "wrong_phase_id",
        "missing_source_payload",
        "authority_overreach",
        "false_engine_promotion"
      ],
      "missing_criteria": [
        "source payload absent",
        "declared source file absent",
        "hard dependency absent where required"
      ],
      "schema_backed_validation": true
    },
    "boundary_rules": [
      {
        "rule_id": "panel_data_key_paths_required",
        "meaning": "panel data consumption must declare key paths",
        "fail_state": "FAIL when data field is consumed without contract path"
      },
      {
        "rule_id": "no_local_field_invention",
        "meaning": "future panel must not invent meaning from raw fields",
        "fail_state": "FAIL when panel derives meaning absent from data contract"
      }
    ],
    "required_keys": [
      "source_payload"
    ],
    "schema_boundary_rules": [
      {
        "rule_id": "panel_data_key_paths_required",
        "meaning": "panel data consumption must declare key paths",
        "fail_state": "FAIL when data field is consumed without contract path"
      },
      {
        "rule_id": "no_local_field_invention",
        "meaning": "future panel must not invent meaning from raw fields",
        "fail_state": "FAIL when panel derives meaning absent from data contract"
      }
    ],
    "source_signal_audit": {
      "source_payload_is_object": true,
      "source_payload_top_keys": [
        "canon_meta",
        "panel_data_contract"
      ],
      "audit_note": "source_signal_audit records JSON mirror shape only; structural_contract remains governed by schema key binding and Phase 02 queue"
    }
  }
}
