patch main #19 / 31
aaronrene · 48 days ago · Jul 18, 2026 · Diff

Add Check if OK ad-hoc honesty path (skill + CLI + same freeze engine).

sha256:c30580993e5f407cd86f2f0348dc897c3cdcc288483e19f390dc4720b2358069 sha
+151 ~21 −7 symbols
sha256:07b0c8bf2dd3b923d01727035b73584bf54f0509324999aae037a3fb3e1dee53 snapshot
+151
symbols added
~21
symbols modified
−7
symbols removed
0
dead code introduced
Semantic Changes 179 symbols
+ Side check — {{TOPIC}} section Side check — {{TOPIC}} L1–49
+ Freeze-contract declaration section Freeze-contract declaration L7–18
+ code[yaml] variable variable code[yaml] L9–17
+ Ground-truth edge section Ground-truth edge L24–30
+ Review record section Review record L44–49
+ table section table L46–49
+ Scope section Scope L18–24
+ Test matrix (seven tiers) section Test matrix (seven tiers) L30–44
+ table section table L32–41
~ .cursor/skills/check-if-ok/SKILL.md .md 9 symbols added
+ Check if OK section Check if OK L9–101
+ Hard stops section Hard stops L86–95
+ How the operator runs it section How the operator runs it L27–42
+ code[bash] variable variable code[bash] L33–38
+ Purpose section Purpose L15–27
+ table section table L19–23
+ Read first section Read first L95–101
+ Thinking sessions (always-on) section Thinking sessions (always-on) L77–86
+ Workflow (execute in this session) section Workflow (execute in this session) L42–77
~ cli/commands/check_if_ok.py .py 13 symbols added
+ CliContext import import CliContext L10–10
+ ConfigError import import ConfigError L8–8
+ Namespace import import Namespace L5–5
+ PathEscapeError import import PathEscapeError L11–11
+ annotations import import annotations L3–3
+ confine_path import import confine_path L11–11
+ format_config_error import import format_config_error L12–12
+ load_config import import load_config L7–7
+ resolve_config_path import import resolve_config_path L11–11
+ resolve_repo_root import import resolve_repo_root L11–11
+ run_review import import run_review L9–9
+ scaffold_side_check import import scaffold_side_check L13–13
+ run_check_if_ok function function run_check_if_ok L16–90
+ Side check — {{TOPIC}} section Side check — {{TOPIC}} L1–49
+ Freeze-contract declaration section Freeze-contract declaration L7–18
+ code[yaml] variable variable code[yaml] L9–17
+ Ground-truth edge section Ground-truth edge L24–30
+ Review record section Review record L44–49
+ table section table L46–49
+ Scope section Scope L18–24
+ Test matrix (seven tiers) section Test matrix (seven tiers) L30–44
+ table section table L32–41
~ cursor/skills/check-if-ok/SKILL.md .md 9 symbols added
+ Check if OK section Check if OK L9–101
+ Hard stops section Hard stops L86–95
+ How the operator runs it section How the operator runs it L27–42
+ code[bash] variable variable code[bash] L33–38
+ Purpose section Purpose L15–27
+ table section table L19–23
+ Read first section Read first L95–101
+ Thinking sessions (always-on) section Thinking sessions (always-on) L77–86
+ Workflow (execute in this session) section Workflow (execute in this session) L42–77
~ docs/PHASE-CHECK-IF-OK.md .md 9 symbols added
+ Phase — Check if OK (ad-hoc honesty) section Phase — Check if OK (ad-hoc honesty) L1–47
+ Deliverables section Deliverables L24–36
+ table section table L26–35
+ Freeze-contract declaration section Freeze-contract declaration L5–18
+ code[yaml] variable variable code[yaml] L7–17
+ Intent section Intent L18–24
+ Non-goals section Non-goals L36–42
+ Review record section Review record L42–47
+ table section table L44–47
+ Path import import Path L6–6
+ annotations import import annotations L3–3
+ date import import date L5–5
+ scaffold_side_check import import scaffold_side_check L8–8
+ test_reuse_preserves_operator_edits function function test_reuse_preserves_operator_edits L11–28
~ tests/e2e/test_check_if_ok_cycle.py .py 8 symbols added
+ Path import import Path L5–5
+ annotations import import annotations L3–3
+ git_status_runner import import git_status_runner L8–8
+ kit_root import import kit_root L7–7
+ pass_provider_factory import import pass_provider_factory L8–8
+ run_cli import import run_cli L8–8
+ write_config import import write_config L8–8
+ test_scaffold_then_check_and_review_agree function function test_scaffold_then_check_and_review_agree L11–39
+ Path import import Path L6–6
+ annotations import import annotations L3–3
+ date import import date L5–5
+ git_status_runner import import git_status_runner L9–9
+ kit_root import import kit_root L8–8
+ pass_provider_factory import import pass_provider_factory L9–9
+ run_cli import import run_cli L9–9
+ scaffold_side_check import import scaffold_side_check L10–10
+ write_config import import write_config L9–9
+ test_check_if_ok_runs_same_review_engine function function test_check_if_ok_runs_same_review_engine L27–44
+ test_path_escape_refused function function test_path_escape_refused L47–55
+ test_scaffold_only_creates_artifact function function test_scaffold_only_creates_artifact L13–24
+ Path import import Path L7–7
+ annotations import import annotations L3–3
+ date import import date L6–6
+ scaffold_side_check import import scaffold_side_check L9–9
+ time import import time L5–5
+ test_scaffold_under_budget function function test_scaffold_under_budget L12–17
+ Path import import Path L6–6
+ annotations import import annotations L3–3
+ date import import date L5–5
+ git_status_runner import import git_status_runner L11–11
+ kit_root import import kit_root L10–10
+ pytest import import pytest L8–8
+ render_side_check_markdown import import render_side_check_markdown L12–12
+ run_cli import import run_cli L11–11
+ scaffold_side_check import import scaffold_side_check L12–12
+ write_config import import write_config L11–11
+ test_cli_rejects_escape function function test_cli_rejects_escape L20–28
+ test_scaffold_body_has_no_secret_placeholders function function test_scaffold_body_has_no_secret_placeholders L31–42
+ test_scaffold_rejects_escape function function test_scaffold_rejects_escape L15–17
+ Path import import Path L6–6
+ annotations import import annotations L3–3
+ date import import date L5–5
+ scaffold_side_check import import scaffold_side_check L8–8
+ test_many_topics_do_not_collide function function test_many_topics_do_not_collide L11–21
+ Path import import Path L6–6
+ annotations import import annotations L3–3
+ date import import date L5–5
+ pytest import import pytest L8–8
+ render_side_check_markdown import import render_side_check_markdown L11–11
+ resolve_artifact_path import import resolve_artifact_path L11–11
+ resolve_footprint import import resolve_footprint L10–10
+ scaffold_side_check import import scaffold_side_check L11–11
+ slugify_topic import import slugify_topic L11–11
+ test_footprint_includes_check_if_ok_skill_and_rule function function test_footprint_includes_check_if_ok_skill_and_rule L72–76
+ test_render_includes_frozen_true_and_seven_tiers function function test_render_includes_frozen_true_and_seven_tiers L24–35
+ test_resolve_artifact_path_default_under_reviews function function test_resolve_artifact_path_default_under_reviews L38–44
+ test_scaffold_creates_then_reuses function function test_scaffold_creates_then_reuses L47–64
+ test_scaffold_path_escape_refused function function test_scaffold_path_escape_refused L67–69
+ test_skill_documents_same_engine_as_review function function test_skill_documents_same_engine_as_review L79–85
+ test_slugify_topic_normalizes function function test_slugify_topic_normalizes L19–21
~ tools/check_if_ok/__init__.py .py 8 symbols added
+ __all__ variable variable __all__ L14–21
+ DEFAULT_REVIEWS_DIR import import DEFAULT_REVIEWS_DIR L5–5
+ ScaffoldResult import import ScaffoldResult L5–5
+ annotations import import annotations L3–3
+ render_side_check_markdown import import render_side_check_markdown L5–5
+ resolve_artifact_path import import resolve_artifact_path L5–5
+ scaffold_side_check import import scaffold_side_check L5–5
+ slugify_topic import import slugify_topic L5–5
~ tools/check_if_ok/scaffold.py .py 12 symbols added
+ DEFAULT_REVIEWS_DIR variable variable DEFAULT_REVIEWS_DIR L15–15
+ ScaffoldResult class class ScaffoldResult L27–32
+ _SLUG_RE variable variable _SLUG_RE L17–17
+ Path import import Path L12–12
+ annotations import import annotations L7–7
+ dataclass class import dataclass L10–10
+ date import import date L11–11
+ re import import re L9–9
+ render_side_check_markdown function function render_side_check_markdown L35–98
+ resolve_artifact_path function function resolve_artifact_path L101–117
+ scaffold_side_check function function scaffold_side_check L120–165
+ slugify_topic function function slugify_topic L20–23
~ cli/main.py .py 1 symbol added, 3 symbols modified
+ run_check_if_ok import import run_check_if_ok L29–29
~ main
~ docs/OVERSEER-HANDOVER.md .md 7 symbols added, 7 symbols removed, 3 symbols modified
NEXT SESSION — Merge landing clarity + DNS (▶ NEXT) section NEXT SESSION — Merge landing clarity + DNS (▶ NEXT) L9–74
Paste-ready prompt — Merge landing clarity + DNS (Operator + Auto) section Paste-ready prompt — Merge landing clarity + DNS (Operator + Auto) L45–74
code variable variable code L47–69
THE ONE NEXT STEP — Model: Operator + Auto section THE ONE NEXT STEP — Model: Operator + Auto L32–45
table section table L35–42
What just landed section What just landed L21–32
table section table L24–30
+ NEXT SESSION — Merge Check if OK + landing clarity / DNS (▶ NEXT) section NEXT SESSION — Merge Check if OK + landing clarity / DNS (▶ NEXT) L9–67
+ Paste-ready prompt — Merge Check if OK + optional landing/DNS (Operator + Auto) section Paste-ready prompt — Merge Check if OK + optional landing/DNS (Operator + Auto) L43–67
+ code variable variable code L45–62
+ THE ONE NEXT STEP — Model: Operator + Auto section THE ONE NEXT STEP — Model: Operator + Auto L30–43
+ table section table L33–40
+ What just landed section What just landed L19–30
+ table section table L22–28

0 comments

No comments yet. Be the first to start the discussion.

To add a comment, use the Muse CLI: muse hub commit comment sha256:c30580993e5f407cd86f2f0348dc897c3cdcc288483e19f390dc4720b2358069 --body "your comment"