{
  "id": "prompt_governance",
  "label": "Prompt Governance Canonical",
  "phase": "phase-03",
  "category": "cognitive_flow",
  "status": "ACTIVE_DH_MIRROR",
  "purpose": "Define how DEVON-DEV versions, tests and audits the instructions sent to the LLM before any interpretation is consumed by planning, patch drafting, validation reasoning or recovery flow.",
  "function": "Make every prompt auditable by recording the active policy, admitted evidence, excluded context, assembled instruction, returned response and FSM acceptance or rejection of the interpretation.",
  "prompt_record_contract": {
    "records_policy_input": true,
    "records_evidence_input": true,
    "records_excluded_context": true,
    "records_assembled_prompt": true,
    "records_model_response": true,
    "records_fsm_acceptance_or_rejection": true,
    "decision_authority": "NONE_FSM_DECIDES"
  },
  "technology_requirements": [
    {
      "technology": "Prompt Governance Registry",
      "required_for": "Version, test and audit prompt inputs, excluded context, model outputs and FSM interpretation acceptance for DEVON-DEV.",
      "required_by_phase": "phase-03",
      "required_by_category": "prompt_governance",
      "required_by_buckets": [
        "Prerequisites",
        "Installation",
        "Configuration",
        "Validation",
        "Observable Evidence",
        "Failure Modes & Recovery",
        "Completion & Promotion"
      ],
      "expected_version": "MISSING until prompt registry schema and storage path are materialized",
      "validation_command": "MISSING until prompt record creation, retrieval, diff and FSM acceptance/rejection checks exist",
      "evidence_path": "/home/yeff/public_html/devon/canon/execution/state/dh_sources/prompt_governance_canonical.json",
      "status_source": "Documentation Hub + future Prompt Governance Registry + Observability Core",
      "blocking_if_missing": true,
      "failure_impact": "Without prompt governance, DEVON-DEV cannot audit why the LLM interpreted evidence, policy or operator intent in a specific way."
    }
  ],
  "depends_on": [
    "cfc",
    "local_llm_runtime",
    "qwen_coder_model",
    "qwen_data_interpreter",
    "internal_rag",
    "retrieval_engine",
    "embeddings_engine",
    "vector_index",
    "fsm_absolute_decision",
    "decision_rule_registry",
    "architecture_source_registry"
  ],
  "used_by": [
    "prompt_instruction_assembly",
    "planning_engine",
    "impact_analysis_engine",
    "modelops_llmops",
    "benchmark_evaluation_harness",
    "self_monitoring",
    "observability_core"
  ]
}
