Publish documentation / publish (push) Successful in 1m27s
Add PostgreSQL-backed memory, editable evidence with source review and activation, and human-approved archive repairs across the harness, API, and UI. Include migrations, deployment support, regression coverage, and validation documentation. Refresh permissions from validated session roles so existing administrator logins can access newly deployed archive management features.
76 lines
2.5 KiB
YAML
76 lines
2.5 KiB
YAML
# harness/workflow.yaml — single source of workflow truth (spec F2, §5.3)
|
|
# phase.py, il gate e la skill leggono tutti da qui. Nessuna costante duplicata.
|
|
# Editare questo file per cambiare il workflow (aggiungere/riordinare/fondere/skip fasi).
|
|
|
|
schema_version: 1
|
|
|
|
# `emits` elenca i decision type sostanziali prodotti da ciascuna fase: e' la fonte
|
|
# data-driven di decision_min_phase (la fase minima in cui un tipo e' ammesso),
|
|
# usata da require_phase_or_exit per rifiutare decisioni fuori fase. I tipi meta
|
|
# cross-fase (phase_approved/auto_approved/reopened/skipped, decision_retracted)
|
|
# non vanno elencati: restano ammessi da qualunque fase.
|
|
phases:
|
|
- id: F1
|
|
name: chiarimento
|
|
advance: kind:phase
|
|
prerequisites: []
|
|
artifacts_out: []
|
|
emits: [concept_clarified, ambiguity_open]
|
|
- id: F2
|
|
name: memoria
|
|
advance: auto_if_empty
|
|
prerequisites: []
|
|
artifacts_out: []
|
|
emits: [memory_rejected, concept_clarified]
|
|
- id: F3
|
|
name: riscrittura
|
|
advance: kind:phase
|
|
prerequisites:
|
|
- decision_exists: question_rewritten
|
|
artifacts_out: [question.md]
|
|
emits: [question_rewritten]
|
|
- id: F4
|
|
name: schema_linking
|
|
advance: reviewer_decide
|
|
prerequisites: []
|
|
artifacts_out: [schema_linking.json]
|
|
emits: [table_promoted, table_excluded, column_promoted, column_excluded, column_corrected, join_modified,
|
|
evidence_accepted, evidence_rejected, value_grounded,
|
|
concept_formula_approved, concept_formula_rejected]
|
|
- id: F5
|
|
name: sintesi
|
|
advance: kind:phase
|
|
prerequisites:
|
|
- file_validates: [schema_linking.json, SchemaLinking]
|
|
artifacts_out: []
|
|
emits: []
|
|
- id: F6
|
|
name: cte
|
|
advance: auto_if_empty_or_skipped
|
|
prerequisites:
|
|
- any:
|
|
- decision_subject_exists: [phase_skipped, "phase:6"]
|
|
- all_ctes_approved: true
|
|
artifacts_out: [cte_plan.json, ctes/, cte_tests.json]
|
|
emits: [cte_approved, cte_corrected, cte_rejected]
|
|
- id: F7
|
|
name: sql_finale
|
|
advance: kind:phase
|
|
prerequisites:
|
|
- decision_exists: sql_approved
|
|
artifacts_out: [sql_final.sql]
|
|
emits: [sql_revised, sql_approved, sql_rejected]
|
|
- id: F8
|
|
name: datamart
|
|
advance: reviewer_decide
|
|
prerequisites:
|
|
- decision_exists: memory_summary_reviewed
|
|
- any:
|
|
- decision_exists: datamart_requested
|
|
- decision_exists: datamart_declined
|
|
artifacts_out: []
|
|
emits: [datamart_requested, datamart_declined, memory_promoted, memory_promotion_declined, memory_summary_reviewed]
|
|
|
|
decision_min_phase: auto
|
|
max_phase: auto
|