MMLC Runtime 1.0.0
一本可以重跑的帳,而且會說出它沒有下的結論。
MMLC 執行具型別的矩陣帳本文件。一份文件穿過九個階段,出來時是正規化 JSON、雜湊、事件日誌與一份報告。每一階段都確立某件具體的事 —— 而規格逐層記下了它拒絕確立什麼。
入 — MMLF
階段 01 / 09
MMLF YAML / JSON
確立
結構描述與結構性驗證。
JSON Schema 驗的是文件形狀。Runtime 另外檢查 ID、版面、參照、運算子定義域、相依環、干預衝突與固定點契約。
不確立
docs/ARCHITECTURE.md 的九個階段,並把關注點分離的陳述掛回它們各自約束的那一層。任選一階段。
狀態
- Runtime
1.0.0- 穩定文件規格
- MMLF
1.0 - 向後相容載入器
- MMLF
0.1至0.9 - Python
3.10+- 授權
- Apache-2.0
- 測試套組
- 發布驗證前 71 項測試
- 歷史實驗
- E0–E9
已確立
已在乾淨的 runner 上、跨 Python 3.10/3.11/3.12/3.13 驗證:71 項通過,接著對穩定範例執行 validate、migrate 與 run --fail-on-audit。
1.0 凍結了什麼
v1.0 沒有新增任何數學能力。它是一條穩定化與公開發布的邊界 —— 一連串原型在這一刻變成可安裝、可遷移、可在公開場合維護的東西。
- Runtime 1.x 的公開 Python API。
- MMLF 1.0 文件規格。
- MMLF 0.1 至 0.9 的載入器。
- 決定性的舊版至 1.0 遷移,附執行等價驗證。
- 透過
metadata.migrated_from保存歷史功能語意。 - 所有 Schema 一併打包進安裝後的 Python 發行版。
- 機器可讀的 CLI 錯誤與有文件的退出碼。
- 發布基準、相容性文件,以及一個發布驗證實驗。
它同時修掉一個真實缺陷:未知的未來 MMLF 版本原本會被默默當成 v0.1,而不是被拒絕。
能力堆疊
這些能力每一項都足以讓一整類工具各自佔一個。MMLC 的主張比較窄、也比較奇怪:它們可以共用同一個執行模型,因此共用同一次稽核。
- 具型別交易與運算子不變式
- 局部、區域與全域稽核
- 相依污染與根因路徑
- 矩陣版面與多方向遍歷
- 列、欄與區塊約束
- 最小支持集修復提案
- 時間參照與固定點群組
- 只追加的補帳
- 硬/軟反事實干預
- 分支差分帳
- 離散與決定性連續不確定性
- 政策評分、資訊價值與有限序貫決策
怎麼跑
bash
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
python -m pip install -e ".[dev]"bash
mmlc validate examples/mmlf_v1_stable.yaml
mmlc run examples/mmlf_v1_stable.yaml \
--output outputs/quickstart \
--deterministic \
--fail-on-audit或從 Python 呼叫 —— 稽核狀態是一個你可以直接斷言的值:
python
from mmlc import execute_file, validate_file
summary = validate_file("examples/mmlf_v1_stable.yaml")
result = execute_file("examples/mmlf_v1_stable.yaml", deterministic=True)
assert summary.version == "1.0"
assert result.global_audit["status"] == "PASS"範圍
- MMLC試算表、DAG 引擎、資料庫、符號系統、SMT 解算器、因果推論函式庫或機率程式框架的替代品
- 一張宣告的因果圖外部世界真正的那張圖
- 有限驗證證明
完整的非主張清單在邊界頁,而它是規格的一部分,不是附在規格後面的免責聲明。