Proof Portal
Omarchy
ProbeLabs65 findings · 95 requirementsA proof layer — requirements, tests and verified fixes — for two of Omarchy's subsystems: the application menu (launcher scripts, QML model, JSONC config, search and selection) and the lock screen (lock scripts, QML, PAM authentication). Scope is deliberately limited to those components of omacom/omarchy; the rest of the distribution is not covered.
omarchy #7564
https://github.com/omacom/omarchy
- AcceptingMake the keybindings menu's Lua bind scan safe against load-time config reads (linked #12052, #12124, #7025). No requirement was added or changed — the intent is declared only in the PR.
- Affects2 files · 2 requirements in 1 area (2 via the changed files) · mapping is file-level, so this is an upper bound · 1 changed file traces to no requirement · 1 changed file is outside the verification scope.
- Works?Shown: all 2 behavioral claims observed passing; coverage of 1 changed file was not measured.
- Unresolved1 weakened protection · 15 missing evidence · 1 spec question · 1 item needs a judgement.
- DecisionPolicy approver: decide whether the weakened protections are accepted under the prior approved policy — evaluated at 54bed97 (head 7b49d0b, base 9f3abc1).
What am I accepting?
Intended change
Approved intent (spec changes)
No requirement is added, modified or deleted by this change — the intent is not codified in the spec. See the spec question ↓
Behavior that must be preserved
2 requirements are in reach (2 whose traced file changed); none is intended to change — each must keep holding. Listed by area under What could it affect? ↓
What could it affect?
2 requirements · 1 areaChanged code
- Modifiedbuild_lua_bind_cache()modifiedfile-level trace onlykeybindings_cache_key()modifiedfile-level trace only
- Modifiedmake_home()addedno requirementcache_has_ssh()deletedscan_has_ssh()addedno requirement
- Added
1 changed file traces to no requirement — read directly
1 changed file is outside the verification scope (e.g. reproducers) — listed for transparency.
Customer promises reached2
Code changed (file-level — an upper bound) 2
- Binds Hyprland reports as dispatcher __lua are shown with resolved keys from the…menuSW-REQ-260922-0W96
- A code:N binding shows the keysym resolved from the compiled keymapmenuSW-REQ-260922-9DMS
Important boundaries
No interface contract is recorded as crossed by this change.
Uncertainty in this analysis
one coherent change · code is mapped to requirements by whole file, so “reached” is an upper bound
8 analysis limits · how this was computed
Engine note (spec clusters): All 2 touched requirement(s) are related in the intent graph (satisfies/parent, sibling or shared component).
Scope method: changed units from review.diff (function-granular where a parser exists, else file-granular) traced against the requirements' implemented_by/verified_by targets and local annotations; touched requirements clustered in the intent graph (satisfies/parent incl. siblings under a parent with <= 20 children, shared component, interface contracts); uncodified connections from call-level impact paths (review.changes impactPath); removed-code traces from trace targets and removed diff lines
- Function-level mapping comes from trace targets
path:symbol/ line ranges (authored + derived) and function-local annotations; a whole-file trace is file-level (weak) and says nothing about which function a requirement needs. - Intent relations: requirement level = satisfies/parent or siblings under a parent with <= 20 children; component level = shared component (incl. traces.components); contract level = an interface requirement naming both components. A missing spec edge can make a real dependency look uncodified, and a broad contract can make an uncodified dependency look related — every candidate is a question for a reviewer, not a verdict on the code or the spec.
- Removed-code traces: targets naming a removed/renamed/moved function or a deleted file, and requirement ids cited on removed diff lines that the evaluated file no longer cites. remainingTraces counts the requirement's other code targets at the evaluated revision without re-checking that each still resolves.
- Renamed/moved detection is best effort: a removed and an added function with the same name in different files are "moved"; a different name with >= 80% identical normalized body lines (>= 3 lines) is "renamed"; anything else is removed + added.
- Scope clusters are seeded only by directly touched requirements (spec changes and code_changed); behavior_affected requirements are what the change reaches and are judged by the uncodified-connection rule instead.
- Uncodified connections need call-level impact (review.effects — C/C++ only today): this package has none, so NO uncodified connection could be detected. Absence of such candidates proves nothing here.
- Units are function-granular only where a parser extracts function boundaries (tree-sitter languages, plus C/C++ function-like macros); other changed files are one file-granular unit, and hunks outside any function are attributed to the file only when no function of that file changed.
- When a changed function is traced only at FILE level, every requirement of its file is a from-side seed: a relation through any of them counts as codified, so a coarse trace can MASK an uncodified connection (and inflate scope clusters — see coarse_trace).
Why should I believe it works?
observed results only — AI opinion never counts as evidenceBehavioral claims → observed results
All 2 claims observed passing.
The 2 claims, as a table
| Requirement | Claim | Observed | Tests | Disclosures |
|---|---|---|---|---|
| SW-REQ-260922-0W96 | Still holds | Observed passing | 2✓ 0✗ 0∅ 0? | |
| SW-REQ-260922-9DMS | Still holds | Observed passing | 2✓ 0✗ 0∅ 0? |
Changed-code coverage
0 of 0 changed decision lines reached by tests
Not measured for bin/omarchy-menu-keybindings.
What remains unresolved?
24 open disclosures — each listed once, introduced firstIntroduced failures0
None — every blocking finding also failed at the base.
Missing evidence15
- highMissing evidence
1 changed code file traces to no requirement: that behaviour has no stated intent and no claim to check.
- mediumUnresolved findingintroduced by this change
Removed behaviour at bin/omarchy-agent-usage-codex:fetch_codex_rpc: Removed behaviour: a child process inherits the environment and cwd; shell-based exec applies quoting / globbing; output is buffered (size limits); concurrent spawns contend and can fail under a burst (base "stderr=subprocess.DEVNULL," → head "no test preserves it"); not approved as a compatibility change.
compat:cf-01e0e8ffcb6df230 - mediumUnresolved findingintroduced by this change
Removed behaviour at bin/omarchy-agent-usage-codex:scan_pi_sessions: Removed behaviour: regex \s: which whitespace it matches (ASCII-only or Unicode incl. BOM / NBSP / U+2028) depends on the engine and flags (base "[rg, \"--json\", \"-e\", r'\"provider\"\\s*:\\s*\"openai-codex\"', \"-e"… → head "no test preserves it"); not approved as a compatibility change.
compat:cf-08ed84e4dc5f0058 - mediumUnresolved findingintroduced by this change
Removed behaviour at test/shell.d/image-picker-test.sh: Removed behaviour: regex \s: which whitespace it matches (ASCII-only or Unicode incl. BOM / NBSP / U+2028) depends on the engine and flags (base "/source: item\\.sourceActivated && item\\.thumbnailPath \\? Uti"… → head "no test preserves it"); not approved as a compatibility change.
compat:cf-259caa478e99554f - mediumUnresolved findingintroduced by this change
Removed behaviour at bin/omarchy-agent-usage-claude:usable_cached_limits: Removed behaviour: reading a file returns its bytes as stored: a BOM, CRLF line endings and invalid UTF-8 are preserved (base "return [entry for entry in entries if isinstance(entry, dict"… → head "no test preserves it"); not approved as a compatibility change.
compat:cf-2a96da5d4878d9e3 - mediumUnresolved findingintroduced by this change
Removed behaviour at pocs/crs-260930-g166-c07-c09.sh: Removed behaviour: regex anchors ^ / $: input boundaries vs line boundaries depends on the multiline flag (base "COND=\"$(sed -n '48p' \"$REPO/bin/omarchy-apply-lock\" | sed \"s"… → head "no test preserves it"); not approved as a compatibility change.
compat:cf-352c959f73e10258 - mediumUnresolved findingintroduced by this change
Removed behaviour at test/shell.d/update-mise-grok-test.sh: Removed behaviour: regex anchors ^ / $: input boundaries vs line boundaries depends on the multiline flag (base "sed -i 's/^ x) .*/ x) exit 1 ;;/' \"$test_tmp/bin/mise\"" → head "no test preserves it"); not approved as a compatibility change.
compat:cf-3793d6d7ef12af8a - mediumUnresolved findingintroduced by this change
Removed behaviour at test/qml/lock/shell.qml: Removed behaviour: a child process inherits the environment and cwd; shell-based exec applies quoting / globbing; output is buffered (size limits); concurrent spawns contend and can fail under a burst (base "function exec(argv) {" → head "no test preserves it"); not approved as a compatibility change.
compat:cf-53dcbde4a5395f69 - mediumUnresolved findingintroduced by this change
Removed behaviour at bin/omarchy-agent-usage-codex:scan_native_codex_sessions: Removed behaviour: reading a file returns its bytes as stored: a BOM, CRLF line endings and invalid UTF-8 are preserved (base "with path.open(errors=\"replace\") as handle:" → head "no test preserves it"); not approved as a compatibility change.
compat:cf-6c10978933fc8a74 - mediumUnresolved findingintroduced by this change
Removed behaviour at pocs/crs-260930-g166-c07-c09.sh: Removed behaviour: regex anchors ^ / $: input boundaries vs line boundaries depends on the multiline flag (base "LINE62=\"$(sed -n '62p' \"$REPO/bin/omarchy-apply-lock\" | sed "… → head "no test preserves it"); not approved as a compatibility change.
compat:cf-9802630089492c78 - mediumUnresolved findingintroduced by this change
Removed behaviour at bin/omarchy-agent-usage-claude:scan_projects: Removed behaviour: reading a file returns its bytes as stored: a BOM, CRLF line endings and invalid UTF-8 are preserved (base "with path.open(\"r\", encoding=\"utf-8\", errors=\"replace\") as h"… → head "no test preserves it"); not approved as a compatibility change.
compat:cf-a1ad6798a3fab1e9 - mediumUnresolved findingintroduced by this change
Removed behaviour at test/qml/lock/shell.qml: Removed behaviour: a child process inherits the environment and cwd; shell-based exec applies quoting / globbing; output is buffered (size limits); concurrent spawns contend and can fail under a burst (base "exec([Quickshell.env(\"MCDC_WTYPE\")].concat(args))" → head "no test preserves it"); not approved as a compatibility change.
compat:cf-cf43f59ecd3406ba - mediumUnresolved findingintroduced by this change
Removed behaviour at bin/omarchy-agent-usage-claude:registered_accounts: Removed behaviour: reading a file returns its bytes as stored: a BOM, CRLF line endings and invalid UTF-8 are preserved (base "if isinstance(entry, dict) and not limit_window_open(entry, "… → head "no test preserves it"); not approved as a compatibility change.
compat:cf-d43ad3b553110b94 - mediumUnresolved findingintroduced by this change
Removed behaviour at pocs/crs-260930-ttvk-qml-static.sh: Removed behaviour: regex anchors ^ / $: input boundaries vs line boundaries depends on the multiline flag (base "sed -n '/function startFingerprint/,/^ }/p' \"$F\" > \"$T\"" → head "no test preserves it"); not approved as a compatibility change.
compat:cf-e591be08f233cdb2 - mediumMissing evidence
No test of the requirements in scope is tagged with an obligation class (<requirement>:<class>:<evidence>), so none of the 2 obligation cells in scope has an observed outcome.
testResults
Spec questions and disagreements1— the engine raises · an AI may argue · a human decides
Other items needing a judgement1
- mediumMissing evidence
Backward compatibility was not fully checked (differential not_checked: no behaviour-diff result recorded for 9f3abc104cc3..54bed97693f5; run `proof change behavior-diff --base 9f3abc104cc3 --head 54bed97693f5`), so a compatibility change can go unnoticed.
compat.source:differential
Limitations
- The baseline run evaluated 1e43373287af, which is neither the base nor the merge-base, so pre-existing attribution may be wrong.
1 record
review.baseline - Coverage of some changed files was not measured by a fresh artifact.
1 record
- 1 changed file is outside the approved verification scope, so the audit does not verify it; listed for transparency.
1 record
- 13 checks were skipped by configuration and produced no verdict.
13 records
build_matrix_completedescription_grammar_enumeration_completedocumentation_coveragedocumented_claim_verifieddual_path_guards_equivalentknown_issue_closure_platform_boundlemma_binding_freshnessno_authored_change_surface_reviewedsecurity_surface_coveredsignal_fixtures_validspec_lint_mediation_contract_contradictedspec_lint_na_denies_property_enforced_unevenlyspec_lint_na_denies_property_the_code_manages
- Which of the 2 relevant tests run the changed code is unknown — no test↔changed-code mapping was measured. The tests → audit trail
- The impact analysis has 8 stated limits — listed under What could it affect? ↑
Exceptions and weakened protections2
This change weakens a protection
The PR's own policy is Changed unclassified relative to the approved policy at 9f3abc104c. Readiness is judged against the approved policy — the PR cannot change it.
- tightenedproof.yaml:project.checks.code_mcdc.targets∅ → {"enabled":true,"id":"lock-js-fingerprintmodel","js_glob":"FingerprintModel.js","language":"js","min_condition_percent":100,"min_decision_percent":100,"runner":"node","scope":"shell/plugins/lock","test_command":"lock-node"}, {"enabled":true,"id":"menu-js-emojisearch","js_glob":"EmojiSearch.js","lang… (Required item added)
- changed (unclassified)proof.yaml:project.checks.proof_complexity_clean.max_variables130 → 140 (Unclassified)
- changed (unclassified)proof.yaml:project.checks.test_results.commands∅ → lock-node, menu-live, plugins-shell (List item added)
- changed (unclassified)proof.yaml:project.commands.tests.lock-node∅ → {"command":"set -e; . test/junit/junit.sh; junit_begin lock-node; node --test --test-reporter=spec --test-reporter-destination=stdout --test-reporter=junit --test-reporter-destination=\"$JUNIT_PART\" test/node/fingerprintmodel-replay.test.mjs || junit_fail $?; junit_end","language":"js"} (Setting added or removed)
- changed (unclassified)proof.yaml:project.commands.tests.lock-shell.commandset -e; B=/usr/bin/bash; . test/junit/junit.sh; junit_begin lock-shell; for t in apply-lock system-lock sleep-lock hyprland-session-locked lock-blank-fingerprint lock-fingerprint-indicator lock-password-overflow lock-stranded-recovery lock-missing-pam; do junit_run "$B" "test/shell.d/$t-test.sh"; do… → set -e; B=/usr/bin/bash; . test/junit/junit.sh; junit_begin lock-shell; for t in apply-lock system-lock sleep-lock hyprland-session-locked lock-blank-fingerprint lock-fingerprint-indicator lock-fingerprint-retry lock-fingerprint-service lock-autorepeat lock-password-overflow lock-stranded-recovery l… (Unclassified)
- changed (unclassified)proof.yaml:project.commands.tests.menu-live∅ → {"command":"/usr/bin/env bash test/junit/live-session.sh menu-live test/shell.d/menu-compositor-test.sh test/shell.d/menu-acceptance-test.sh","language":"bash"} (Setting added or removed)
- changed (unclassified)proof.yaml:project.commands.tests.menu-node.commandset -e; . test/junit/junit.sh; junit_begin menu-node; node --test --test-reporter=spec --test-reporter-destination=stdout --test-reporter=junit --test-reporter-destination="$JUNIT_PART" test/node/menumodel-replay.test.mjs || junit_fail $?; junit_end → set -e; . test/junit/junit.sh; junit_begin menu-node; node --test --test-reporter=spec --test-reporter-destination=stdout --test-reporter=junit --test-reporter-destination="$JUNIT_PART" test/node/menumodel-replay.test.mjs test/node/emojisearch-replay.test.mjs || junit_fail $?; junit_end (Unclassified)
- changed (unclassified)proof.yaml:project.commands.tests.menu-shell.commandset -e; B=/usr/bin/bash; . test/junit/junit.sh; junit_begin menu-shell; for t in menu menu-pointer-lifecycle tray-menu menu-plugin menu-dispatcher menu-dmenu menu-timezone menu-share menu-guards; do junit_run "$B" "test/shell.d/$t-test.sh"; done; if command -v flock >/dev/null 2>&1 && [ -d /proc ];… → set -e; B=/usr/bin/bash; . test/junit/junit.sh; junit_begin menu-shell; for t in menu menu-pointer-lifecycle tray-menu menu-plugin menu-dispatcher menu-dmenu menu-timezone menu-share menu-guards; do junit_run "$B" "test/shell.d/$t-test.sh"; done; if command -v flock >/dev/null 2>&1 && [ -d /proc ];… (Unclassified)
- changed (unclassified)proof.yaml:project.commands.tests.plugins-shell∅ → {"command":"set -e; B=/usr/bin/bash; . test/junit/junit.sh; junit_begin plugins-shell; junit_run \"$B\" test/shell.d/emojis-test.sh; junit_end","language":"bash"} (Setting added or removed)
- tightenedproof.yaml:project.verification_scope.completeness.production_include∅ → bin/omarchy-theme-remov*, shell/plugins/emojis/EmojiSearch.js, shell/services/AppSearch.js (Required item added)
- tightenedproof.yaml:project.verification_scope.include∅ → bin/omarchy-theme-remov*, default/systemd/system-sleep/fprintd-resume, default/systemd/system/fprintd.service.d/10-stop-timeout.conf, shell/plugins/emojis/EmojiSearch.js, shell/services/AppSearch.js, test/bdiff/*, test/bdiff/**, test/junit/*, test/junit/live-session.sh, test/qml/lock/** (+10 more) (Required item added)
- highWeakened protection · introduced by this changeneeds prior-policy signoff
The change modifies policy in a way the engine cannot prove is not a weakening (8 changes); a policy approver must judge it under the prior policy.
policy:proof.yaml:project.checks.proof_complexity_clean.max_variablespolicy:proof.yaml:project.checks.test_results.commandspolicy:proof.yaml:project.commands.tests.lock-nodepolicy:proof.yaml:project.commands.tests.lock-shell.commandpolicy:proof.yaml:project.commands.tests.menu-livepolicy:proof.yaml:project.commands.tests.menu-node.command2 more records
policy:proof.yaml:project.commands.tests.menu-shell.commandpolicy:proof.yaml:project.commands.tests.plugins-shell
- infoWeakened protection
The change tightens policy (3 settings); readiness is still evaluated against the approved (base) policy.
policy:proof.yaml:project.checks.code_mcdc.targetspolicy:proof.yaml:project.verification_scope.completeness.production_includepolicy:proof.yaml:project.verification_scope.include
No pre-existing failure — nothing failed at the base too.
What decision is mine?
Next decision
Human judgementbecause a protection is weakened
Should the 1 protection reduction this change makes be accepted under the prior approved policy?
Required authority
Policy approver — under the approved policy at 9f3abc104c
Requires signoff under the PRIOR approved policy
Accepted identities: GitHub login or portal user · enforced by the portal / GitHub
Evaluated revision
- Evaluated
- 54bed97693f5Synthetic merge
- PR head
- 7b49d0bb606d
- Base
- 9f3abc104cc3quattro-proof
- Policy
- sha256:aa07aea6a6…
Compared against base audit run-f5b0e01eb640 at 1e43373287af — failed checks are split into pre-existing vs introduced.
An immutable record of this revision — freshness is judged on the PR page.
Producer not verified (evidence is informational, not assurance). Provenance
Acceptance: none recorded in this evidence. Readiness is not acceptance, and the merge state is GitHub's.
Audit trail
the verbatim record — every disclosure, the AI review, risk rules, call routes, tests, audit checks, provenance
Every disclosure, by consequence0 block · 16 prevent ready · 2 need judgement · 6 for information
0 block · 16 prevent ready · 2 need judgement · 6 for information · 1 weakened protection
This change weakens a protection
The PR's own policy is Changed unclassified relative to the approved policy at 9f3abc104c. Readiness is judged against the approved policy — the PR cannot change it.
- tightenedproof.yaml:project.checks.code_mcdc.targets∅ → {"enabled":true,"id":"lock-js-fingerprintmodel","js_glob":"FingerprintModel.js","language":"js","min_condition_percent":100,"min_decision_percent":100,"runner":"node","scope":"shell/plugins/lock","test_command":"lock-node"}, {"enabled":true,"id":"menu-js-emojisearch","js_glob":"EmojiSearch.js","lang… (Required item added)
- changed (unclassified)proof.yaml:project.checks.proof_complexity_clean.max_variables130 → 140 (Unclassified)
- changed (unclassified)proof.yaml:project.checks.test_results.commands∅ → lock-node, menu-live, plugins-shell (List item added)
- changed (unclassified)proof.yaml:project.commands.tests.lock-node∅ → {"command":"set -e; . test/junit/junit.sh; junit_begin lock-node; node --test --test-reporter=spec --test-reporter-destination=stdout --test-reporter=junit --test-reporter-destination=\"$JUNIT_PART\" test/node/fingerprintmodel-replay.test.mjs || junit_fail $?; junit_end","language":"js"} (Setting added or removed)
- changed (unclassified)proof.yaml:project.commands.tests.lock-shell.commandset -e; B=/usr/bin/bash; . test/junit/junit.sh; junit_begin lock-shell; for t in apply-lock system-lock sleep-lock hyprland-session-locked lock-blank-fingerprint lock-fingerprint-indicator lock-password-overflow lock-stranded-recovery lock-missing-pam; do junit_run "$B" "test/shell.d/$t-test.sh"; do… → set -e; B=/usr/bin/bash; . test/junit/junit.sh; junit_begin lock-shell; for t in apply-lock system-lock sleep-lock hyprland-session-locked lock-blank-fingerprint lock-fingerprint-indicator lock-fingerprint-retry lock-fingerprint-service lock-autorepeat lock-password-overflow lock-stranded-recovery l… (Unclassified)
- changed (unclassified)proof.yaml:project.commands.tests.menu-live∅ → {"command":"/usr/bin/env bash test/junit/live-session.sh menu-live test/shell.d/menu-compositor-test.sh test/shell.d/menu-acceptance-test.sh","language":"bash"} (Setting added or removed)
- changed (unclassified)proof.yaml:project.commands.tests.menu-node.commandset -e; . test/junit/junit.sh; junit_begin menu-node; node --test --test-reporter=spec --test-reporter-destination=stdout --test-reporter=junit --test-reporter-destination="$JUNIT_PART" test/node/menumodel-replay.test.mjs || junit_fail $?; junit_end → set -e; . test/junit/junit.sh; junit_begin menu-node; node --test --test-reporter=spec --test-reporter-destination=stdout --test-reporter=junit --test-reporter-destination="$JUNIT_PART" test/node/menumodel-replay.test.mjs test/node/emojisearch-replay.test.mjs || junit_fail $?; junit_end (Unclassified)
- changed (unclassified)proof.yaml:project.commands.tests.menu-shell.commandset -e; B=/usr/bin/bash; . test/junit/junit.sh; junit_begin menu-shell; for t in menu menu-pointer-lifecycle tray-menu menu-plugin menu-dispatcher menu-dmenu menu-timezone menu-share menu-guards; do junit_run "$B" "test/shell.d/$t-test.sh"; done; if command -v flock >/dev/null 2>&1 && [ -d /proc ];… → set -e; B=/usr/bin/bash; . test/junit/junit.sh; junit_begin menu-shell; for t in menu menu-pointer-lifecycle tray-menu menu-plugin menu-dispatcher menu-dmenu menu-timezone menu-share menu-guards; do junit_run "$B" "test/shell.d/$t-test.sh"; done; if command -v flock >/dev/null 2>&1 && [ -d /proc ];… (Unclassified)
- changed (unclassified)proof.yaml:project.commands.tests.plugins-shell∅ → {"command":"set -e; B=/usr/bin/bash; . test/junit/junit.sh; junit_begin plugins-shell; junit_run \"$B\" test/shell.d/emojis-test.sh; junit_end","language":"bash"} (Setting added or removed)
- tightenedproof.yaml:project.verification_scope.completeness.production_include∅ → bin/omarchy-theme-remov*, shell/plugins/emojis/EmojiSearch.js, shell/services/AppSearch.js (Required item added)
- tightenedproof.yaml:project.verification_scope.include∅ → bin/omarchy-theme-remov*, default/systemd/system-sleep/fprintd-resume, default/systemd/system/fprintd.service.d/10-stop-timeout.conf, shell/plugins/emojis/EmojiSearch.js, shell/services/AppSearch.js, test/bdiff/*, test/bdiff/**, test/junit/*, test/junit/live-session.sh, test/qml/lock/** (+10 more) (Required item added)
- highWeakened protection · introduced by this changeneeds prior-policy signoff
The change modifies policy in a way the engine cannot prove is not a weakening (8 changes); a policy approver must judge it under the prior policy.
policy:proof.yaml:project.checks.proof_complexity_clean.max_variablespolicy:proof.yaml:project.checks.test_results.commandspolicy:proof.yaml:project.commands.tests.lock-nodepolicy:proof.yaml:project.commands.tests.lock-shell.commandpolicy:proof.yaml:project.commands.tests.menu-livepolicy:proof.yaml:project.commands.tests.menu-node.command2 more records
policy:proof.yaml:project.commands.tests.menu-shell.commandpolicy:proof.yaml:project.commands.tests.plugins-shell
Prevents a ready verdict16
- Weakened protectionpolicy_changed_unclassified— shown above
- highMissing evidence
1 changed code file traces to no requirement: that behaviour has no stated intent and no claim to check.
- mediumUnresolved findingintroduced by this change
Removed behaviour at bin/omarchy-agent-usage-codex:fetch_codex_rpc: Removed behaviour: a child process inherits the environment and cwd; shell-based exec applies quoting / globbing; output is buffered (size limits); concurrent spawns contend and can fail under a burst (base "stderr=subprocess.DEVNULL," → head "no test preserves it"); not approved as a compatibility change.
compat:cf-01e0e8ffcb6df230 - mediumUnresolved findingintroduced by this change
Removed behaviour at bin/omarchy-agent-usage-codex:scan_pi_sessions: Removed behaviour: regex \s: which whitespace it matches (ASCII-only or Unicode incl. BOM / NBSP / U+2028) depends on the engine and flags (base "[rg, \"--json\", \"-e\", r'\"provider\"\\s*:\\s*\"openai-codex\"', \"-e"… → head "no test preserves it"); not approved as a compatibility change.
compat:cf-08ed84e4dc5f0058 - mediumUnresolved findingintroduced by this change
Removed behaviour at test/shell.d/image-picker-test.sh: Removed behaviour: regex \s: which whitespace it matches (ASCII-only or Unicode incl. BOM / NBSP / U+2028) depends on the engine and flags (base "/source: item\\.sourceActivated && item\\.thumbnailPath \\? Uti"… → head "no test preserves it"); not approved as a compatibility change.
compat:cf-259caa478e99554f - mediumUnresolved findingintroduced by this change
Removed behaviour at bin/omarchy-agent-usage-claude:usable_cached_limits: Removed behaviour: reading a file returns its bytes as stored: a BOM, CRLF line endings and invalid UTF-8 are preserved (base "return [entry for entry in entries if isinstance(entry, dict"… → head "no test preserves it"); not approved as a compatibility change.
compat:cf-2a96da5d4878d9e3 - mediumUnresolved findingintroduced by this change
Removed behaviour at pocs/crs-260930-g166-c07-c09.sh: Removed behaviour: regex anchors ^ / $: input boundaries vs line boundaries depends on the multiline flag (base "COND=\"$(sed -n '48p' \"$REPO/bin/omarchy-apply-lock\" | sed \"s"… → head "no test preserves it"); not approved as a compatibility change.
compat:cf-352c959f73e10258 - mediumUnresolved findingintroduced by this change
Removed behaviour at test/shell.d/update-mise-grok-test.sh: Removed behaviour: regex anchors ^ / $: input boundaries vs line boundaries depends on the multiline flag (base "sed -i 's/^ x) .*/ x) exit 1 ;;/' \"$test_tmp/bin/mise\"" → head "no test preserves it"); not approved as a compatibility change.
compat:cf-3793d6d7ef12af8a - mediumUnresolved findingintroduced by this change
Removed behaviour at test/qml/lock/shell.qml: Removed behaviour: a child process inherits the environment and cwd; shell-based exec applies quoting / globbing; output is buffered (size limits); concurrent spawns contend and can fail under a burst (base "function exec(argv) {" → head "no test preserves it"); not approved as a compatibility change.
compat:cf-53dcbde4a5395f69 - mediumUnresolved findingintroduced by this change
Removed behaviour at bin/omarchy-agent-usage-codex:scan_native_codex_sessions: Removed behaviour: reading a file returns its bytes as stored: a BOM, CRLF line endings and invalid UTF-8 are preserved (base "with path.open(errors=\"replace\") as handle:" → head "no test preserves it"); not approved as a compatibility change.
compat:cf-6c10978933fc8a74
Show all 16 (6 more)
- mediumUnresolved findingintroduced by this change
Removed behaviour at pocs/crs-260930-g166-c07-c09.sh: Removed behaviour: regex anchors ^ / $: input boundaries vs line boundaries depends on the multiline flag (base "LINE62=\"$(sed -n '62p' \"$REPO/bin/omarchy-apply-lock\" | sed "… → head "no test preserves it"); not approved as a compatibility change.
compat:cf-9802630089492c78 - mediumUnresolved findingintroduced by this change
Removed behaviour at bin/omarchy-agent-usage-claude:scan_projects: Removed behaviour: reading a file returns its bytes as stored: a BOM, CRLF line endings and invalid UTF-8 are preserved (base "with path.open(\"r\", encoding=\"utf-8\", errors=\"replace\") as h"… → head "no test preserves it"); not approved as a compatibility change.
compat:cf-a1ad6798a3fab1e9 - mediumUnresolved findingintroduced by this change
Removed behaviour at test/qml/lock/shell.qml: Removed behaviour: a child process inherits the environment and cwd; shell-based exec applies quoting / globbing; output is buffered (size limits); concurrent spawns contend and can fail under a burst (base "exec([Quickshell.env(\"MCDC_WTYPE\")].concat(args))" → head "no test preserves it"); not approved as a compatibility change.
compat:cf-cf43f59ecd3406ba - mediumUnresolved findingintroduced by this change
Removed behaviour at bin/omarchy-agent-usage-claude:registered_accounts: Removed behaviour: reading a file returns its bytes as stored: a BOM, CRLF line endings and invalid UTF-8 are preserved (base "if isinstance(entry, dict) and not limit_window_open(entry, "… → head "no test preserves it"); not approved as a compatibility change.
compat:cf-d43ad3b553110b94 - mediumUnresolved findingintroduced by this change
Removed behaviour at pocs/crs-260930-ttvk-qml-static.sh: Removed behaviour: regex anchors ^ / $: input boundaries vs line boundaries depends on the multiline flag (base "sed -n '/function startFingerprint/,/^ }/p' \"$F\" > \"$T\"" → head "no test preserves it"); not approved as a compatibility change.
compat:cf-e591be08f233cdb2 - mediumMissing evidence
No test of the requirements in scope is tagged with an obligation class (<requirement>:<class>:<evidence>), so none of the 2 obligation cells in scope has an observed outcome.
testResults
Needs a human judgement2
- mediumMissing evidence
Backward compatibility was not fully checked (differential not_checked: no behaviour-diff result recorded for 9f3abc104cc3..54bed97693f5; run `proof change behavior-diff --base 9f3abc104cc3 --head 54bed97693f5`), so a compatibility change can go unnoticed.
compat.source:differential
For information6
- mediumStale input
The baseline run evaluated 1e43373287af, which is neither the base nor the merge-base, so pre-existing attribution may be wrong.
review.baseline - lowMissing evidence
Coverage of some changed files was not measured by a fresh artifact.
- infoMissing evidence
1 changed file is outside the approved verification scope, so the audit does not verify it; listed for transparency.
- infoMissing evidence
13 checks were skipped by configuration and produced no verdict.
- infoWeakened protection
The change tightens policy (3 settings); readiness is still evaluated against the approved (base) policy.
policy:proof.yaml:project.checks.code_mcdc.targetspolicy:proof.yaml:project.verification_scope.completeness.production_includepolicy:proof.yaml:project.verification_scope.include
Routine evidence:178 checks passed · 27 advisory · 1 not applicable · 2 verifying tests passed · 2 claims observed passing
AI review — supporting commentarynone recorded for this package
No AI review has been recorded for this package.
Why the engine rates this risk level3 rules fired
- 1 changed source file(s) not measured by any fresh coverage artifact: bin/omarchy-menu-keybindings.
- 5 changed function(s) have no function-level requirement trace: bin/omarchy-menu-keybindings:build_lua_bind_cache (modified), bin/omarchy-menu-keybindings:keybindings_cache_key (modified), pocs/crs-260930-jvx8-c01.sh:make_home (added), pocs/crs-260930-jvx8-c01.sh:cache_has_ssh (deleted), pocs/crs-260930-jvx8-c01.sh:scan_has_ssh (added); 2 requirement(s) match only at file level (possibly affected).
- 1 changed code file(s) map to no requirement: test/shell.d/menu-keybindings-lua-scan-test.sh.
Relevant tests2
- Passedtest/shell.d/keybindings-menu-test.sh
- Passedtest/shell.d/keybindings-menu-test.sh:1:keybindings-menu-test.sh:1test/shell.d/keybindings-menu-test.shunknown whether it runs the changed codeSW-REQ-260922-0W96SW-REQ-260922-9DMS
Audit checks219 project-wide
219 project-wide audit checks (178 passed · 13 skipped or not run · 28 not applicable) — the rest are unchanged against the baseline run. Open Audit checks
All 219 checks exactly as recorded in this package
- Not applicableaccepted_risks_reviewednot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Not applicableapproved_guarantee_ki_conflictnot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Not applicableassumptions_statusnot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Skippedbuild_matrix_completeskippedNot requiredSame as baseline
raw status skip · severity warning
- Not applicablecode_signal_deadline_cast_unreviewednot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Not applicableconcern_adjudicatednot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Not applicabledefect_review_currentnot_applicableNot requiredAdvisorySame as baseline
raw status info · severity warning
- Not applicabledeployment_tvl_verifiednot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Skippeddescription_grammar_enumeration_completeskippedNot requiredSame as baseline
raw status skip · severity warning
- Skippeddocumentation_coverageskippedNot requiredSame as baseline
raw status skip · severity warning
- Skippeddocumented_claim_verifiedskippedNot requiredSame as baseline
raw status skip · severity warning
- Skippeddual_path_guards_equivalentskippedNot requiredSame as baseline
raw status skip · severity warning
- Not applicablefailing_test_blocks_approvalnot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Not applicablehigh_severity_obligation_without_vectornot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Skippedknown_issue_closure_platform_boundskippedNot requiredSame as baseline
raw status skip · severity error
- Not applicableknown_issue_completenot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Not applicableknown_issue_platform_coveragenot_applicableNot requiredAdvisorySame as baseline
raw status skip · severity warning
- Not applicableknown_issue_recheck_duenot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Not applicableknown_issue_sibling_dispositionnot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Not applicableknown_issue_template_transfernot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Skippedlemma_binding_freshnessskippedNot requiredSame as baseline
raw status skip · severity warning
- Not applicablelemma_branch_coveragenot_applicableNot requiredSame as baseline
raw status skip · severity warning
- Not applicablepoc_quality_checkednot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Not applicableproblem_report_class_mitigation_evidencenot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Not applicableproblem_reports_reviewednot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Not applicableprocess_checklistnot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Not applicableproperty_based_test_coveragenot_applicableNot requiredAdvisorySame as baseline
raw status warn · severity warning
- Not applicableresidual_kill_hygienenot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Skippedsecurity_surface_coveredskippedNot requiredSame as baseline
raw status skip · severity error
- Skippedsignal_fixtures_validskippedNot requiredSame as baseline
raw status skip · severity error
- Not applicablespec_lint_exemplar_missing_on_newnot_applicableNot requiredAdvisorySame as baseline
raw status info · severity warning
- Not applicablespec_lint_hazard_consequencenot_applicableNot requiredAdvisorySame as baseline
raw status info · severity warning
- Not applicablespec_lint_ki_banned_markersnot_applicableNot requiredAdvisorySame as baseline
raw status info · severity warning
- Skippedspec_lint_mediation_contract_contradictedskippedNot requiredSame as baseline
raw status skip · severity warning
- Skippedspec_lint_na_denies_property_enforced_unevenlyskippedNot requiredSame as baseline
raw status skip · severity warning
- Skippedspec_lint_na_denies_property_the_code_managesskippedNot requiredSame as baseline
raw status skip · severity warning
- Not applicablesurface_coveragenot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Not applicableunresearched_p0_vectorsnot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Not applicablevector_campaign_closurenot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Not applicablevector_campaign_hygienenot_applicableNot requiredAdvisorySame as baseline
raw status pass · severity warning
- Passacceptance_criteria_witnessedpassedNot requiredSame as baseline
raw status pass · severity warning
- Passacceptance_witness_qualitypassedNot requiredSame as baseline
raw status pass · severity warning
- Passambiguity_reviewedpassedNot requiredSame as baseline
raw status pass · severity warning
- Passannotation_validitypassedNot requiredSame as baseline
raw status pass · severity error
- Passapproval_motivation_presentpassedNot requiredSame as baseline
raw status pass · severity error
- Passapprovals_currentpassedNot requiredSame as baseline
raw status pass · severity error
- Passassume_contract_consistencypassedNot requiredSame as baseline
raw status pass · severity warning
- Passautolink_cleanpassedNot requiredSame as baseline
raw status pass · severity warning
- Passbehavioral_implications_verifiedpassedNot requiredSame as baseline
raw status pass · severity warning
- Passbuild_passespassedNot requiredSame as baseline
raw status pass · severity error
- Passcatalog_completenesspassedNot requiredSame as baseline
raw status pass · severity error
- Passcatalog_semantic_bindings_reviewedpassedNot requiredSame as baseline
raw status pass · severity warning
- Passcatalog_version_pinnedpassedNot requiredSame as baseline
raw status pass · severity warning
- Passchange_evidence_completepassedNot requiredSame as baseline
raw status pass · severity warning
- Passchange_record_landspassedNot requiredSame as baseline
raw status pass · severity warning
- Passchanged_requirements_reviewedpassedNot requiredSame as baseline
raw status pass · severity error
- Passcircular_deps_cleanpassedNot requiredSame as baseline
raw status pass · severity error
- Passcode_mcdc_coveragepassedNot requiredSame as baseline
raw status pass · severity warning
- Passcode_mcdc_measurepassedNot requiredSame as baseline
raw status pass · severity error
- Passcode_predicates_modeledpassedNot requiredSame as baseline
raw status pass · severity warning
- Passcode_signal_obligations_reviewedpassedNot requiredSame as baseline
raw status pass · severity warning
- Passcode_signal_suppressions_reviewedpassedNot requiredSame as baseline
raw status pass · severity warning
- Passcode_signal_unbindablepassedNot requiredSame as baseline
raw status pass · severity warning
- Passconsistency_pair_coveragepassedNot requiredSame as baseline
raw status pass · severity warning
- Passcontract_alignment_cleanpassedNot requiredSame as baseline
raw status pass · severity warning
- Passcoverage_metpassedNot requiredSame as baseline
raw status pass · severity warning
- Passcoverage_thresholdpassedNot requiredSame as baseline
raw status pass · severity warning
- Passcross_component_cleanpassedNot requiredSame as baseline
raw status pass · severity warning
- Passcross_level_completepassedNot requiredSame as baseline
raw status pass · severity warning
- Passcross_spec_consistency_cleanpassedNot requiredSame as baseline
raw status pass · severity warning
- Passcvss_severity_consistentpassedNot requiredSame as baseline
raw status pass · severity warning
- Passdata_constraint_z3_coveragepassedNot requiredSame as baseline
raw status pass · severity warning
- Passdata_constraints_completepassedNot requiredSame as baseline
raw status pass · severity warning
- Passdecomposition_reviewedpassedNot requiredSame as baseline
raw status pass · severity warning
- Passdeletion_without_retirementpassedNot requiredSame as baseline
raw status pass · severity error
- Passdescription_delta_reviewedpassedNot requiredSame as baseline
raw status pass · severity error
- Passdifferential_conformancepassedNot requiredSame as baseline
raw status pass · severity warning
- Passdisclosure_safepassedNot requiredSame as baseline
raw status pass · severity error
- Passdocumentation_enforcedpassedNot requiredSame as baseline
raw status pass · severity warning
- Passevidence_diversitypassedNot requiredSame as baseline
raw status pass · severity warning
- Passfixture_staleness_cleanpassedNot requiredSame as baseline
raw status pass · severity warning
- Passflip_fixtures_existpassedNot requiredSame as baseline
raw status pass · severity warning
- Passflip_test_alignmentpassedNot requiredSame as baseline
raw status pass · severity warning
- Passformalization_lemma_verdict_consistencypassedNot requiredSame as baseline
raw status pass · severity warning
- Passfuzz_evidence_carrier_validpassedNot requiredSame as baseline
raw status pass · severity warning
- Passgaps_cleanpassedNot requiredSame as baseline
raw status pass · severity warning
- Passhigh_severity_reproducer_gradepassedNot requiredSame as baseline
raw status pass · severity error
- Passintegration_evidence_witnessedpassedNot requiredSame as baseline
raw status pass · severity warning
- Passinterface_contract_duplicatespassedNot requiredSame as baseline
raw status pass · severity warning
- Passinterface_coveragepassedNot requiredSame as baseline
raw status pass · severity warning
- Passinterface_formalization_completepassedNot requiredSame as baseline
raw status pass · severity warning
- Passinterface_staleness_cleanpassedNot requiredSame as baseline
raw status pass · severity warning
- Passknown_issue_affected_requirements_presentpassedNot requiredSame as baseline
raw status pass · severity warning
- Passknown_issue_mirror_anchor_relevantpassedNot requiredSame as baseline
raw status pass · severity warning
- Passknown_issue_poc_quality_effectivepassedNot requiredSame as baseline
raw status pass · severity warning
- Passknown_issue_reproducer_consistentpassedNot requiredSame as baseline
raw status pass · severity warning
- Passknown_issue_reproducer_present_and_resolvespassedNot requiredSame as baseline
raw status pass · severity warning
- Passknown_issue_security_remediation_presentpassedNot requiredSame as baseline
raw status pass · severity warning
- Passknown_issue_severity_prose_consistentpassedNot requiredSame as baseline
raw status pass · severity warning
- Passknown_issues_reviewedpassedNot requiredSame as baseline
raw status pass · severity warning
- Passl0_stakeholder_completepassedNot requiredSame as baseline
raw status pass · severity error
- Passl1_system_completepassedNot requiredSame as baseline
raw status pass · severity error
- Passl2_software_completepassedNot requiredSame as baseline
raw status pass · severity error
- Passlevels_connectedpassedNot requiredSame as baseline
raw status pass · severity error
- Passlint_cleanpassedNot requiredSame as baseline
raw status pass · severity warning
- Passmcdc_coveragepassedNot requiredSame as baseline
raw status pass · severity warning
- Passmcdc_ignore_classifiedpassedNot requiredSame as baseline
raw status pass · severity warning
- Passmcdc_known_issue_disposition_stalepassedNot requiredSame as baseline
raw status pass · severity error
- Passmcdc_verifies_witnessespassedNot requiredSame as baseline
raw status pass · severity warning
- Passmcdc_witness_drives_codepassedNot requiredSame as baseline
raw status pass · severity warning
- Passmirror_completepassedNot requiredSame as baseline
raw status pass · severity warning
- Passmirror_stalepassedNot requiredSame as baseline
raw status pass · severity warning
- Passnegative_path_witness_requiredpassedNot requiredSame as baseline
raw status pass · severity error
- Passnonbool_inputs_constrainedpassedNot requiredSame as baseline
raw status pass · severity warning
- Passobligation_baselinepassedNot requiredSame as baseline
raw status pass · severity warning
- Passobligation_completenesspassedNot requiredSame as baseline
raw status pass · severity error
- Passobligation_decomposition_completepassedNot requiredSame as baseline
raw status pass · severity warning
- Passobligation_delegation_resolvespassedNot requiredSame as baseline
raw status pass · severity error
- Passobligation_enforcement_backedpassedNot requiredSame as baseline
raw status pass · severity warning
- Passobligation_evidence_completepassedNot requiredSame as baseline
raw status pass · severity warning
- Passobligation_profile_evidence_completepassedNot requiredSame as baseline
raw status pass · severity warning
- Passobligation_suppression_rationalepassedNot requiredSame as baseline
raw status pass · severity warning
- Passobligation_suppression_reviewerpassedNot requiredSame as baseline
raw status pass · severity warning
- Passobligation_witness_groundedpassedNot requiredSame as baseline
raw status pass · severity warning
- Passorphan_code_cleanpassedNot requiredSame as baseline
raw status pass · severity warning
- Passorphan_tests_cleanpassedNot requiredSame as baseline
raw status pass · severity warning
- Passpartition_evidence_completepassedNot requiredSame as baseline
raw status pass · severity warning
- Passproof_complexity_cleanpassedNot requiredSame as baseline
raw status pass · severity warning
- Passproperty_fixtures_existpassedNot requiredSame as baseline
raw status pass · severity warning
- Passquality_cleanpassedNot requiredSame as baseline
raw status pass · severity warning
- Passretired_cleanuppassedNot requiredSame as baseline
raw status pass · severity warning
- Passrole_prompt_hygienepassedNot requiredSame as baseline
raw status pass · severity warning
- Passrole_references_resolvepassedNot requiredSame as baseline
raw status pass · severity warning
- Passsecurity_relevance_consistentpassedNot requiredSame as baseline
raw status pass · severity warning
- Passslow_tests_cleanpassedNot requiredSame as baseline
raw status pass · severity error
- Passsoftware_formalization_completepassedNot requiredSame as baseline
raw status pass · severity warning
- Passsolver_latency_cleanpassedNot requiredSame as baseline
raw status pass · severity warning
- Passsolver_modeling_opportunitypassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_ac_inverse_coveragepassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_ac_subset_of_satisfiespassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_acceptance_review_currentpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_assumption_dispositionpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_audit_ignore_reasonpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_auto_modifier_without_humanpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_circularity_self_citationpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_complementary_flags_uninteractedpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_data_constraint_parseablepassedNot requiredSame as baseline
raw status pass · severity error
- Passspec_lint_decomposition_adds_refinementpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_degenerate_input_obligation_missingpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_evidence_tag_existspassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_formalization_qualitypassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_fretish_bare_responsepassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_fretish_tautologypassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_governance_yaml_data_pathspassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_hallucinated_symbolspassedNot requiredSame as baseline
raw status pass · severity error
- Passspec_lint_hazard_review_currentpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_id_shape_canonicalpassedNot requiredSame as baseline
raw status pass · severity error
- Passspec_lint_inline_impact_review_driftpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_input_domain_obligation_missingpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_ki_attacker_coherencepassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_ki_history_chronologypassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_ki_open_actionabilitypassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_ki_prose_shapepassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_ki_stale_status_refspassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_numbering_gaps_has_tombstonepassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_obligation_checklist_emptypassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_obligation_coverage_gappassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_operational_invariant_varpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_parent_field_vs_satisfiespassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_pinned_delimiter_undispositionedpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_plan_of_record_currentpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_prose_ste100passedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_reject_combination_composition_witnessedpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_req_type_vs_descriptionpassedNot requiredSame as baseline
raw status pass · severity error
- Passspec_lint_review_cadence_currentpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_satisfies_target_retiredpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_source_doc_hedgingpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_source_native_yaml_tracepassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_spec_conformance_review_groundedpassedNot requiredSame as baseline
raw status pass · severity error
- Passspec_lint_status_vs_reviewpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_sw_informal_witnessedpassedNot requiredSame as baseline
raw status pass · severity error
- Passspec_lint_threat_surface_presentpassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_trace_review_evidence_currentpassedNot requiredSame as baseline
raw status pass · severity error
- Passspec_lint_unjoined_effect_halvespassedNot requiredSame as baseline
raw status pass · severity warning
- Passspec_lint_yaml_escape_artefactpassedNot requiredSame as baseline
raw status pass · severity error
- Passsrs_generatespassedNot requiredSame as baseline
raw status pass · severity error
- Passsrs_no_uncheckedpassedNot requiredSame as baseline
raw status pass · severity error
- Passstakeholder_acceptance_criteriapassedNot requiredSame as baseline
raw status pass · severity warning
- Passstakeholder_requirements_existpassedNot requiredSame as baseline
raw status pass · severity error
- Passsubmission_validatedpassedNot requiredSame as baseline
raw status pass · severity error
- Passsuspect_cleanpassedNot requiredSame as baseline
raw status pass · severity error
- Passsys_has_software_childpassedNot requiredSame as baseline
raw status pass · severity warning
- Passsystem_formalization_completepassedNot requiredSame as baseline
raw status pass · severity error
- Passsystem_requirements_linkedpassedNot requiredSame as baseline
raw status pass · severity error
- Passtable_completepassedNot requiredSame as baseline
raw status pass · severity warning
- Passtable_consistentpassedNot requiredSame as baseline
raw status pass · severity warning
- Passtable_equivalencepassedNot requiredSame as baseline
raw status pass · severity warning
- Passtest_command_propagates_failurepassedNot requiredSame as baseline
raw status pass · severity warning
- Passtests_passpassedNot requiredSame as baseline
raw status pass · severity error
- Passtrivial_lemmapassedNot requiredSame as baseline
raw status pass · severity warning
- Passtrusted_outputs_from_untrusted_inputspassedNot requiredSame as baseline
raw status pass · severity warning
- Passunder_modeled_requirements_cleanpassedNot requiredSame as baseline
raw status pass · severity warning
- Passvacuity_cleanpassedNot requiredSame as baseline
raw status pass · severity warning
- Passvalidate_passespassedNot requiredSame as baseline
raw status pass · severity error
- Passvariable_driftpassedNot requiredSame as baseline
raw status pass · severity warning
- Passvariable_orphans_cleanpassedNot requiredSame as baseline
raw status pass · severity warning
- Passvariables_declaredpassedNot requiredSame as baseline
raw status pass · severity error
- Passverification_chain_completepassedNot requiredSame as baseline
raw status pass · severity warning
- Passverification_plan_evidencepassedNot requiredSame as baseline
raw status pass · severity warning
- Passverification_scope_completepassedNot requiredSame as baseline
raw status pass · severity warning
- Passverification_state_consistentpassedNot requiredSame as baseline
raw status pass · severity warning
- Passverify_passespassedNot requiredSame as baseline
raw status pass · severity error
- Passwaivers_reviewedpassedNot requiredSame as baseline
raw status pass · severity error
- Passz3_cross_layer_consistencypassedNot requiredSame as baseline
raw status pass · severity warning
- Passz3_properties_verifiedpassedNot requiredSame as baseline
raw status pass · severity warning
How this evidence was producedunverified producer · no evidence records attached
Evaluated as this PR applied onto the audit baseline 9f3abc10 (commit 54bed976), not the PR's own branch — findings reflect the PR's change on the audited code. Freshness still tracks the PR head it represents, 7b49d0bb.
- Repository
- https://github.com/omacom/omarchy
- Pull request
- #7564
- Evaluated tree
- Synthetic mergesynthetic_merge
- PR head commit
- 7b49d0bb606d14a5e71cef6b11d85ab6b5b5f639
- Evaluated commit
- 54bed97693f5ce09b9e4639b7649af281dbdaad5
- Audit baseline
- 9f3abc104cc367a0a98151e8ea4698a7381e9b8b
- Spec revision
- e37bcf03118408163258123088a4ddf50097a38d
- Policy revision
- 9f3abc104cc367a0a98151e8ea4698a7381e9b8b
- Package digest
- sha256:efd4a97f54e60d2e3d6593df702428a3b4433e40008f04b705eed87d29c715d3
- Schema version
- reqproof.evidence-package.v1
- Canonicalization
- v1
- Engine version
- 0.1.0-dev
- Assembler version
- 0.1.0-dev+geeb5981c
- Package identity
- epkg-b7b7371bc5bba60a914e84746503d94c03e367dc94379b749b60cd577ed12e73
- Assembled
- Oct 5, 2026 · 6 days ago
- Canonical digest
- sha256:efd4a97f54e60d2e3d6593df702428a3b4433e40008f04b705eed87d29c715d3