{
  "canon_meta": {
    "canon_id": "devon-card-contract-minimums",
    "version": "1.0.0",
    "status": "ACTIVE"
  },
  "contract_schema": {
    "required_blocks": [
      "identity",
      "objective",
      "scope",
      "interfaces",
      "dependencies",
      "technology_mapping",
      "configuration_contract",
      "operational_contract",
      "evidence_contract",
      "validation_pipeline",
      "status_rules",
      "ui_contract"
    ]
  },
  "identity": {
    "required_fields": [
      "module_id",
      "display_name",
      "deployment_stage",
      "deployment_order",
      "version",
      "owner",
      "criticality",
      "environment_scope"
    ]
  },
  "objective": {
    "required_fields": [
      "primary_objective",
      "explicit_non_objectives",
      "failure_impact"
    ]
  },
  "scope": {
    "required_fields": [
      "in_scope",
      "out_of_scope",
      "allowed_side_effects",
      "prohibited_side_effects"
    ]
  },
  "interfaces": {
    "required_fields": [
      "inputs",
      "outputs",
      "events_emitted",
      "events_consumed",
      "request_schema_refs",
      "response_schema_refs"
    ]
  },
  "dependencies": {
    "required_fields": [
      "hard_dependencies",
      "soft_dependencies",
      "upstream_modules",
      "downstream_modules",
      "blockers"
    ]
  },
  "technology_mapping": {
    "required_fields": [
      "runtimes",
      "libraries",
      "services",
      "containers",
      "ports",
      "env_vars",
      "volumes",
      "files",
      "endpoints",
      "commands",
      "secrets",
      "permissions"
    ]
  },
  "configuration_contract": {
    "required_fields": [
      "required_envs",
      "optional_envs",
      "env_validation_rules",
      "config_files",
      "flags",
      "defaults_policy",
      "timeout_policy",
      "retry_policy",
      "fallback_policy",
      "cache_policy",
      "circuit_breaker_policy"
    ],
    "minimum_detail_rule": "Every minimum configuration detail that affects runtime, boot, validation, integration, execution, security or promotion must be explicitly represented here. Nothing implicit.\n"
  },
  "operational_contract": {
    "required_fields": [
      "startup_contract",
      "healthcheck_contract",
      "readiness_contract",
      "liveness_contract",
      "degradation_mode",
      "shutdown_behavior",
      "backup_behavior",
      "rollback_behavior"
    ]
  },
  "evidence_contract": {
    "required_fields": [
      "expected_files",
      "expected_processes",
      "expected_containers",
      "expected_ports",
      "expected_endpoints",
      "expected_logs",
      "expected_metrics",
      "expected_artifacts",
      "expected_outputs",
      "evidence_collection_method"
    ]
  },
  "validation_pipeline": {
    "required_fields": [
      "install_check",
      "config_check",
      "boot_check",
      "health_check",
      "integration_check",
      "functional_check",
      "benchmark_check",
      "audit_check",
      "rollback_check"
    ]
  },
  "status_rules": {
    "required_fields": [
      "pass_rule",
      "fail_rule",
      "missing_rule"
    ],
    "canonical_values": {
      "pass_rule": "evidence exists and functional validation passes",
      "fail_rule": "evidence exists and validation fails",
      "missing_rule": "evidence does not exist observably"
    }
  },
  "ui_contract": {
    "required_fields": [
      "display_group",
      "status_badge_source",
      "counters",
      "evidence_drawer_sections",
      "allowed_actions",
      "dependency_graph_node",
      "timeline_events",
      "last_validation_pointer"
    ]
  },
  "per_card_policy": {
    "every_card_must_define": [
      "deployment_stage",
      "deployment_order",
      "hard_dependencies",
      "blockers",
      "readiness_checks",
      "promotion_gate",
      "rollback_gate"
    ]
  }
}
