Skip to content

Data Dictionary · Run log & versioning ​

⚙️ Trang này sinh tự động từ source code bằng scripts/gen-reference.mjs — đừng sửa tay, sửa code rồi chạy npm run gen:reference.

Thuộc Data Dictionary. 4 bảng, engine_runs tới workflow_runs.

engine_runs ​

--------------------------------------------------------------------------- 4. Engine run history — bằng chứng "engine đã chạy thật", mỗi lần chạy một dòng. ---------------------------------------------------------------------------

migration: 0027_goal_model_run_history.sql

CộtKiểuRàng buộc / ghi chú
idTEXTPRIMARY KEY
engineTEXTNOT NULL
engine_versionTEXTNOT NULL
learner_idTEXT—
workflow_run_idTEXTREFERENCES workflow_runs(id)
triggerTEXTNOT NULL
statusTEXTNOT NULL DEFAULT 'running' CHECK (status IN ('running','succeeded','failed'))
started_atTEXTNOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ','now'))
finished_atTEXT—
duration_msINTEGER—
input_jsonTEXT—
output_jsonTEXT—
produced_model_kindTEXT—
produced_versionINTEGER—
produced_changeINTEGERNOT NULL DEFAULT 0
errorTEXT—
input_refTEXT— thêm ở 0034_run_evidence.sql
output_refTEXT— thêm ở 0034_run_evidence.sql
model_versionTEXT— thêm ở 0034_run_evidence.sql
confidenceREAL— thêm ở 0034_run_evidence.sql

Khóa ngoại: workflow_run_id → workflow_runs

Index: idx_engine_runs_learner(learner_id, started_at DESC) · idx_engine_runs_engine(engine, started_at DESC) · idx_engine_runs_workflow(workflow_run_id) · idx_engine_runs_status(status, started_at DESC)

learner_goal_entries ​

--------------------------------------------------------------------------- 1. Goal Model — goal tree first-class (SDD-002 §16). Được phép rỗng (RISK-009). Ngày thi = deadline trên goal entry — nguồn duy nhất. ---------------------------------------------------------------------------

migration: 0027_goal_model_run_history.sql

CộtKiểuRàng buộc / ghi chú
idTEXTPRIMARY KEY
learner_idTEXTNOT NULL REFERENCES learners(id)
parent_goal_idTEXTREFERENCES learner_goal_entries(id)
titleTEXTNOT NULL
kindTEXTNOT NULL CHECK (kind IN (
blueprint_idTEXT—
subject_idTEXT—
priorityINTEGERNOT NULL DEFAULT 1
horizonTEXTNOT NULL DEFAULT 'strategic' CHECK (horizon IN ('operational','tactical','strategic','undated'))
urgencyREALNOT NULL DEFAULT 0
deadlineTEXT—
dependencies_jsonTEXT—
conflict_flags_jsonTEXT—
sourceTEXTNOT NULL CHECK (source IN ('parent','learner_self','declaration','enrollment','system'))
origin_kindTEXT—
origin_idTEXT—
statusTEXTNOT NULL DEFAULT 'active' CHECK (status IN ('active','achieved','dropped'))
model_versionINTEGERNOT NULL DEFAULT 1
created_atTEXTNOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ','now'))
updated_atTEXTNOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ','now'))

Khóa ngoại: learner_id → learners · parent_goal_id → learner_goal_entries

Index: idx_goal_entries_learner(learner_id, status) · idx_goal_entries_origin(learner_id, origin_kind, origin_id) UNIQUE

workflow_run_steps ​

migration: 0027_goal_model_run_history.sql

CộtKiểuRàng buộc / ghi chú
idTEXTPRIMARY KEY
run_idTEXTNOT NULL REFERENCES workflow_runs(id)
seqINTEGERNOT NULL
step_codeTEXTNOT NULL
statusTEXTNOT NULL CHECK (status IN ('succeeded','failed','skipped'))
started_atTEXTNOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ','now'))
duration_msINTEGER—
detail_jsonTEXT—
errorTEXT—

Khóa ngoại: run_id → workflow_runs

Index: idx_workflow_steps_run(run_id, seq)

workflow_runs ​

--------------------------------------------------------------------------- 3. Workflow run history — bằng chứng "workflow đã chạy thật" (WF-01, WF-03, WF-04…). ---------------------------------------------------------------------------

migration: 0027_goal_model_run_history.sql

CộtKiểuRàng buộc / ghi chú
idTEXTPRIMARY KEY
workflow_codeTEXTNOT NULL
workflow_nameTEXTNOT NULL
learner_idTEXT—
actor_user_idTEXT—
triggerTEXTNOT NULL
statusTEXTNOT NULL DEFAULT 'running' CHECK (status IN ('running','succeeded','failed'))
started_atTEXTNOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ','now'))
finished_atTEXT—
duration_msINTEGER—
input_jsonTEXT—
output_jsonTEXT—
errorTEXT—
input_refTEXT— thêm ở 0034_run_evidence.sql
output_refTEXT— thêm ở 0034_run_evidence.sql
request_idTEXT— thêm ở 0034_run_evidence.sql

Index: idx_workflow_runs_learner(learner_id, started_at DESC) · idx_workflow_runs_code(workflow_code, started_at DESC) · idx_workflow_runs_status(status, started_at DESC)