|
12 | 12 | PAGE_GENERATOR = REPO_ROOT / "pilots" / "living-knowledge-case" / "cases" / "power-posing" / "page" / "generate_page_data.py" |
13 | 13 |
|
14 | 14 | PUBLIC_LAYER_CHECKS = [ |
| 15 | + { |
| 16 | + "name": "protocol_record_consistency", |
| 17 | + "label": "Protocol consistency", |
| 18 | + "layer": "protocol consistency floor", |
| 19 | + "cmd": [PYTHON, "scripts/check_protocol_record_consistency.py"], |
| 20 | + }, |
| 21 | + { |
| 22 | + "name": "object_envelope", |
| 23 | + "label": "Object envelope", |
| 24 | + "layer": "object-envelope floor", |
| 25 | + "cmd": [PYTHON, "scripts/check_power_posing_object_envelope.py"], |
| 26 | + }, |
15 | 27 | { |
16 | 28 | "name": "verdict_grammar", |
17 | 29 | "label": "Verdict grammar", |
18 | | - "layer": "judgment wording", |
| 30 | + "layer": "judgment wording bridge", |
19 | 31 | "cmd": [PYTHON, "scripts/check_power_posing_verdict_grammar.py"], |
20 | 32 | }, |
21 | 33 | { |
22 | 34 | "name": "status_legend", |
23 | 35 | "label": "Status legend", |
24 | | - "layer": "judgment wording", |
| 36 | + "layer": "judgment wording bridge", |
25 | 37 | "cmd": [PYTHON, "scripts/check_power_posing_status_legend.py"], |
26 | 38 | }, |
27 | 39 | { |
28 | 40 | "name": "claim_page_layering", |
29 | 41 | "label": "Claim page layering", |
30 | | - "layer": "claim page", |
| 42 | + "layer": "claim page public layer", |
31 | 43 | "cmd": [PYTHON, "scripts/check_power_posing_claim_page_layering.py"], |
32 | 44 | }, |
33 | 45 | { |
34 | 46 | "name": "claim_page_pressure_coverage", |
35 | 47 | "label": "Claim pressure coverage", |
36 | | - "layer": "claim page", |
| 48 | + "layer": "claim page public layer", |
37 | 49 | "cmd": [PYTHON, "scripts/check_power_posing_claim_page_pressure_coverage.py"], |
38 | 50 | }, |
39 | 51 | { |
40 | 52 | "name": "source_page_layering", |
41 | 53 | "label": "Source page layering", |
42 | | - "layer": "source page", |
| 54 | + "layer": "source page public layer", |
43 | 55 | "cmd": [PYTHON, "scripts/check_power_posing_source_page_layering.py"], |
44 | 56 | }, |
45 | 57 | { |
46 | 58 | "name": "source_page_role_anchors", |
47 | 59 | "label": "Source role anchors", |
48 | | - "layer": "source page", |
| 60 | + "layer": "source page public layer", |
49 | 61 | "cmd": [PYTHON, "scripts/check_power_posing_source_page_role_anchors.py"], |
50 | 62 | }, |
| 63 | + { |
| 64 | + "name": "reference_metadata", |
| 65 | + "label": "Reference metadata", |
| 66 | + "layer": "source page public layer", |
| 67 | + "cmd": [PYTHON, "scripts/check_power_posing_reference_metadata.py"], |
| 68 | + }, |
51 | 69 | { |
52 | 70 | "name": "snapshot_section_layering", |
53 | 71 | "label": "Snapshot section layering", |
54 | | - "layer": "snapshot release view", |
| 72 | + "layer": "snapshot release-view layer", |
55 | 73 | "cmd": [PYTHON, "scripts/check_power_posing_snapshot_section_layering.py"], |
56 | 74 | }, |
57 | 75 | { |
58 | 76 | "name": "snapshot_subsection_semantics", |
59 | 77 | "label": "Snapshot semantics", |
60 | | - "layer": "snapshot release view", |
| 78 | + "layer": "snapshot release-view layer", |
61 | 79 | "cmd": [PYTHON, "scripts/check_power_posing_snapshot_subsection_semantics.py"], |
62 | 80 | }, |
63 | 81 | { |
64 | 82 | "name": "snapshot_consistency", |
65 | 83 | "label": "Snapshot consistency", |
66 | | - "layer": "snapshot release view", |
| 84 | + "layer": "snapshot release-view layer", |
67 | 85 | "cmd": [PYTHON, "scripts/check_power_posing_snapshot_consistency.py"], |
68 | 86 | }, |
69 | | - { |
70 | | - "name": "reference_metadata", |
71 | | - "label": "Reference metadata", |
72 | | - "layer": "reference surface", |
73 | | - "cmd": [PYTHON, "scripts/check_power_posing_reference_metadata.py"], |
74 | | - }, |
75 | 87 | { |
76 | 88 | "name": "public_surface", |
77 | 89 | "label": "Public surface", |
78 | | - "layer": "public surface", |
| 90 | + "layer": "page emission layer", |
79 | 91 | "cmd": [PYTHON, "scripts/check_power_posing_public_surface.py"], |
80 | 92 | }, |
81 | | - { |
82 | | - "name": "public_layer_atlas", |
83 | | - "label": "Atlas governance", |
84 | | - "layer": "atlas governance", |
85 | | - "cmd": [PYTHON, "scripts/check_power_posing_public_layer_atlas.py"], |
86 | | - "hint": "atlas governance (boundary + threshold views)", |
87 | | - "summary_label": "atlas governance", |
88 | | - }, |
89 | 93 | { |
90 | 94 | "name": "page_emission_validation", |
91 | 95 | "label": "Page emission", |
92 | | - "layer": "page emission", |
| 96 | + "layer": "page emission layer", |
93 | 97 | "cmd": [PYTHON, str(PAGE_GENERATOR), "--check"], |
94 | 98 | }, |
| 99 | + { |
| 100 | + "name": "public_layer_atlas", |
| 101 | + "label": "Public-layer orchestration boundary", |
| 102 | + "layer": "public-layer orchestration boundary", |
| 103 | + "cmd": [PYTHON, "scripts/check_power_posing_public_layer_atlas.py"], |
| 104 | + "hint": "atlas governance (boundary + threshold views)", |
| 105 | + "summary_label": "public-layer orchestration boundary", |
| 106 | + }, |
95 | 107 | ] |
96 | 108 |
|
97 | 109 | LAYER_ORDER = [ |
98 | | - "judgment wording", |
99 | | - "claim page", |
100 | | - "source page", |
101 | | - "snapshot release view", |
102 | | - "reference surface", |
103 | | - "public surface", |
104 | | - "atlas governance", |
105 | | - "page emission", |
| 110 | + "protocol consistency floor", |
| 111 | + "object-envelope floor", |
| 112 | + "judgment wording bridge", |
| 113 | + "claim page public layer", |
| 114 | + "source page public layer", |
| 115 | + "snapshot release-view layer", |
| 116 | + "page emission layer", |
| 117 | + "public-layer orchestration boundary", |
106 | 118 | ] |
107 | 119 |
|
108 | 120 | ATLAS_GOVERNANCE_HEADERS = {"Boundary view", "Threshold view"} |
@@ -194,20 +206,25 @@ def emit_failure_focus( |
194 | 206 | if not failures: |
195 | 207 | return |
196 | 208 |
|
197 | | - governance_failures = [f for f in failures if f.get("summary_label") == "atlas governance"] |
198 | | - other_failures = [f for f in failures if f.get("summary_label") != "atlas governance"] |
| 209 | + governance_failures = [ |
| 210 | + f for f in failures if f.get("summary_label") == "public-layer orchestration boundary" |
| 211 | + ] |
| 212 | + other_failures = [ |
| 213 | + f for f in failures if f.get("summary_label") != "public-layer orchestration boundary" |
| 214 | + ] |
199 | 215 | failing_layers = [ |
200 | 216 | str(entry["layer"]) |
201 | 217 | for entry in layer_summary |
202 | | - if str(entry["status"]) == "FAIL" and str(entry["layer"]) != "atlas governance" |
| 218 | + if str(entry["status"]) == "FAIL" |
| 219 | + and str(entry["layer"]) != "public-layer orchestration boundary" |
203 | 220 | ] |
204 | 221 |
|
205 | 222 | print() |
206 | 223 | print("Failure focus") |
207 | 224 |
|
208 | 225 | if governance_failures: |
209 | 226 | failure = governance_failures[0] |
210 | | - line = "- atlas governance: FAIL" |
| 227 | + line = "- public-layer orchestration boundary: FAIL" |
211 | 228 | hint = failure.get("hint", "") |
212 | 229 | if hint: |
213 | 230 | line += f" ({hint})" |
@@ -273,7 +290,7 @@ def main() -> None: |
273 | 290 | print(f"- failed: {len(failures)}") |
274 | 291 | if governance_summary is not None: |
275 | 292 | governance_status, governance_hint = governance_summary |
276 | | - summary_line = f"- atlas governance: {governance_status}" |
| 293 | + summary_line = f"- public-layer orchestration boundary: {governance_status}" |
277 | 294 | if governance_hint: |
278 | 295 | summary_line += f" ({governance_hint})" |
279 | 296 | print(summary_line) |
|
0 commit comments