From 2994970da290d86f15ddeb9d1237221123b47190 Mon Sep 17 00:00:00 2001 From: 732642856 <732642856@qq.com> Date: Sun, 28 Jun 2026 18:25:51 +0800 Subject: [PATCH] Require functional role audit in strict workflow --- references/strict-workflow-router.md | 2 ++ tests/test_skill_hard_constraints.py | 3 +++ 2 files changed, 5 insertions(+) diff --git a/references/strict-workflow-router.md b/references/strict-workflow-router.md index 07c241ce..78950cd2 100644 --- a/references/strict-workflow-router.md +++ b/references/strict-workflow-router.md @@ -182,6 +182,7 @@ Every Level 2+ output must include this table near the end. | D1 | Used / not used | ... | ... | | D9 | Used / not used | ... | ... | | D10 / relevant Varga | Used / not used | ... | ... | +| Functional Benefic/Malefic | Used / not used / blocked | Key functional benefics, malefics, functional neutrals, yogakarakas | Mandatory in high-rigor mode; lower confidence or mark blocked if omitted | | Vimshottari | Used / not used | ... | ... | | Jaimini / Chara Dasha | Used / partial / not used | Karaka/Karakamsha reliable; Chara Dasha timing partial if used | Cap timing confidence unless independently corroborated | | AmK / Karakamsha | Used / not used | ... | ... | @@ -208,6 +209,7 @@ Every Level 2+ output must include this table near the end. | Historical verification | Used / not provided | ... | ... | Never omit unavailable techniques silently. Mark them as unavailable or not integrated. +When Functional Benefic/Malefic is used, explicitly surface the functional neutrals and yogakarakas instead of collapsing them into a generic summary. --- diff --git a/tests/test_skill_hard_constraints.py b/tests/test_skill_hard_constraints.py index 38e048b2..10978723 100644 --- a/tests/test_skill_hard_constraints.py +++ b/tests/test_skill_hard_constraints.py @@ -27,6 +27,9 @@ def test_router_declares_rigorous_multi_engine_and_raw_data_policy() -> None: assert "Narayana Dasha" in router assert "raw outputs" in router assert "blocked" in router + assert "Functional Benefic/Malefic" in router + assert "functional neutrals" in router.lower() + assert "yogakarakas" in router def test_agents_declares_functional_benefic_malefic_hard_constraint() -> None: