mustflow 2.116.1 → 2.116.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/package.json +1 -1
  2. package/templates/default/i18n.toml +72 -6
  3. package/templates/default/locales/en/.mustflow/skills/INDEX.md +37 -11
  4. package/templates/default/locales/en/.mustflow/skills/compiler-engineering-review/SKILL.md +477 -0
  5. package/templates/default/locales/en/.mustflow/skills/compiler-engineering-review/references/compiler-diagnostics-abi-linker-checklist.md +778 -0
  6. package/templates/default/locales/en/.mustflow/skills/compiler-engineering-review/references/compiler-generators-properties-checklist.md +501 -0
  7. package/templates/default/locales/en/.mustflow/skills/compiler-engineering-review/references/compiler-test-strategy-differential-checklist.md +498 -0
  8. package/templates/default/locales/en/.mustflow/skills/compiler-engineering-review/references/debug-symbol-symbolication-checklist.md +412 -0
  9. package/templates/default/locales/en/.mustflow/skills/compiler-engineering-review/references/ir-design-ssa-pass-pipeline-checklist.md +759 -0
  10. package/templates/default/locales/en/.mustflow/skills/compiler-engineering-review/references/miscompile-reduction-ir-checklist.md +434 -0
  11. package/templates/default/locales/en/.mustflow/skills/cross-platform-filesystem-safety/SKILL.md +55 -36
  12. package/templates/default/locales/en/.mustflow/skills/cross-platform-filesystem-safety/references/path-containment-handle-checklist.md +251 -0
  13. package/templates/default/locales/en/.mustflow/skills/file-upload-security-review/SKILL.md +133 -32
  14. package/templates/default/locales/en/.mustflow/skills/file-upload-security-review/references/file-upload-parser-ssrf-resource-checklist.md +306 -0
  15. package/templates/default/locales/en/.mustflow/skills/formal-verification-review/SKILL.md +310 -0
  16. package/templates/default/locales/en/.mustflow/skills/formal-verification-review/references/formal-concurrency-model-checking-smt-checklist.md +457 -0
  17. package/templates/default/locales/en/.mustflow/skills/formal-verification-review/references/formal-contracts-modeling-checklist.md +434 -0
  18. package/templates/default/locales/en/.mustflow/skills/formal-verification-review/references/formal-memory-bounds-ci-checklist.md +509 -0
  19. package/templates/default/locales/en/.mustflow/skills/fuzz-harness-review/SKILL.md +439 -0
  20. package/templates/default/locales/en/.mustflow/skills/fuzz-harness-review/references/fuzz-harness-campaign-checklist.md +379 -0
  21. package/templates/default/locales/en/.mustflow/skills/fuzz-harness-review/references/fuzz-oracle-triage-ci-checklist.md +307 -0
  22. package/templates/default/locales/en/.mustflow/skills/idempotency-integrity-review/SKILL.md +48 -28
  23. package/templates/default/locales/en/.mustflow/skills/idempotency-integrity-review/references/operation-ordering-stale-write-checklist.md +259 -0
  24. package/templates/default/locales/en/.mustflow/skills/input-boundary-validation-review/SKILL.md +329 -0
  25. package/templates/default/locales/en/.mustflow/skills/input-boundary-validation-review/references/input-boundary-security-checklist.md +319 -0
  26. package/templates/default/locales/en/.mustflow/skills/input-event-synchronization-review/SKILL.md +306 -0
  27. package/templates/default/locales/en/.mustflow/skills/input-event-synchronization-review/references/input-session-state-checklist.md +298 -0
  28. package/templates/default/locales/en/.mustflow/skills/input-event-synchronization-review/references/remote-input-transport-interaction-checklist.md +328 -0
  29. package/templates/default/locales/en/.mustflow/skills/interpreter-engineering-review/SKILL.md +353 -0
  30. package/templates/default/locales/en/.mustflow/skills/interpreter-engineering-review/references/interpreter-diagnostics-recovery-checklist.md +267 -0
  31. package/templates/default/locales/en/.mustflow/skills/interpreter-engineering-review/references/interpreter-execution-closure-performance-checklist.md +428 -0
  32. package/templates/default/locales/en/.mustflow/skills/interpreter-engineering-review/references/interpreter-gc-verification-checklist.md +457 -0
  33. package/templates/default/locales/en/.mustflow/skills/interpreter-engineering-review/references/interpreter-semantics-runtime-checklist.md +391 -0
  34. package/templates/default/locales/en/.mustflow/skills/modal-loop-reentrancy-review/SKILL.md +294 -0
  35. package/templates/default/locales/en/.mustflow/skills/modal-loop-reentrancy-review/references/modal-loop-reentrancy-checklist.md +290 -0
  36. package/templates/default/locales/en/.mustflow/skills/modal-loop-reentrancy-review/references/nested-modal-state-lifetime-checklist.md +297 -0
  37. package/templates/default/locales/en/.mustflow/skills/name-resolution-integrity-review/SKILL.md +252 -0
  38. package/templates/default/locales/en/.mustflow/skills/name-resolution-integrity-review/references/dns-network-resolution-checklist.md +394 -0
  39. package/templates/default/locales/en/.mustflow/skills/name-resolution-integrity-review/references/language-symbol-resolution-checklist.md +282 -0
  40. package/templates/default/locales/en/.mustflow/skills/name-resolution-integrity-review/references/module-package-loader-resolution-checklist.md +352 -0
  41. package/templates/default/locales/en/.mustflow/skills/parser-engineering-review/SKILL.md +103 -17
  42. package/templates/default/locales/en/.mustflow/skills/parser-engineering-review/references/cst-ast-lowering-checklist.md +260 -0
  43. package/templates/default/locales/en/.mustflow/skills/parser-engineering-review/references/lexer-tokenization-checklist.md +397 -0
  44. package/templates/default/locales/en/.mustflow/skills/parser-engineering-review/references/tree-serialization-compatibility-checklist.md +164 -0
  45. package/templates/default/locales/en/.mustflow/skills/parser-engineering-review/references/tree-traversal-rewrite-checklist.md +209 -0
  46. package/templates/default/locales/en/.mustflow/skills/race-condition-review/SKILL.md +68 -11
  47. package/templates/default/locales/en/.mustflow/skills/race-condition-review/references/race-reproduction-memory-model-checklist.md +268 -0
  48. package/templates/default/locales/en/.mustflow/skills/routes.toml +151 -0
  49. package/templates/default/locales/en/.mustflow/skills/session-handoff-integrity-review/SKILL.md +343 -0
  50. package/templates/default/locales/en/.mustflow/skills/session-handoff-integrity-review/references/session-auth-stream-resume-checklist.md +413 -0
  51. package/templates/default/locales/en/.mustflow/skills/session-handoff-integrity-review/references/session-handoff-protocol-checklist.md +485 -0
  52. package/templates/default/locales/en/.mustflow/skills/two-phase-transition-integrity-review/SKILL.md +267 -0
  53. package/templates/default/locales/en/.mustflow/skills/two-phase-transition-integrity-review/references/admission-decision-recovery-checklist.md +308 -0
  54. package/templates/default/locales/en/.mustflow/skills/two-phase-transition-integrity-review/references/two-phase-transition-checklist.md +229 -0
  55. package/templates/default/locales/en/.mustflow/skills/ui-dispatch-lifecycle-review/SKILL.md +300 -0
  56. package/templates/default/locales/en/.mustflow/skills/ui-dispatch-lifecycle-review/references/ui-affinity-event-loop-checklist.md +277 -0
  57. package/templates/default/locales/en/.mustflow/skills/ui-dispatch-lifecycle-review/references/ui-dispatch-lifecycle-checklist.md +292 -0
  58. package/templates/default/manifest.toml +115 -1
@@ -0,0 +1,310 @@
1
+ ---
2
+ mustflow_doc: skill.formal-verification-review
3
+ locale: en
4
+ canonical: true
5
+ revision: 2
6
+ lifecycle: mustflow-owned
7
+ authority: procedure
8
+ name: formal-verification-review
9
+ description: Apply this skill when formal specifications, Hoare-style contracts, weakest preconditions, loop or object invariants, termination variants, ghost state, frame conditions, refinement maps, state or trace invariants, inductive invariants, linearizability, concurrency or failure model checking, bounded model checking, state-space reduction, SMT encodings, solver outcomes, theorem-prover proofs, safety or liveness properties, fairness assumptions, counterexamples, proof trust boundaries, vacuity checks, assumption manifests, verification debt, or proof CI are created, changed, reviewed, debugged, or reported.
10
+ metadata:
11
+ mustflow_schema: "1"
12
+ mustflow_kind: procedure
13
+ pack_id: mustflow.core
14
+ skill_id: mustflow.core.formal-verification-review
15
+ command_intents:
16
+ - changes_status
17
+ - changes_diff_summary
18
+ - lint
19
+ - build
20
+ - test_related
21
+ - test
22
+ - test_audit
23
+ - docs_validate_fast
24
+ - test_release
25
+ - mustflow_check
26
+ ---
27
+
28
+ # Formal Verification Review
29
+
30
+ <!-- mustflow-section: purpose -->
31
+ ## Purpose
32
+
33
+ Review formal verification as a scoped claim about an explicit model, assumptions, and observation,
34
+ not as proof that an entire program or deployed system is universally correct.
35
+
36
+ Keep modeled state, implementation state, safety, progress, termination, fairness, bounds, external
37
+ assumptions, solver completeness, trusted tooling, counterexamples, refinement, runtime validation,
38
+ verification cost, and CI status as separate evidence layers.
39
+
40
+ <!-- mustflow-section: use-when -->
41
+ ## Use When
42
+
43
+ - A precondition, postcondition, invariant, variant, frame condition, ghost variable, lemma, axiom,
44
+ proof harness, model, theorem, or refinement relation changes.
45
+ - State-machine safety, liveness, fairness, concurrency, retry, ownership, memory, integer, array,
46
+ pointer, ABI, or boundary properties are formally checked.
47
+ - Concurrent histories, linearization, weak-memory behavior, message loss or duplication, crash and
48
+ recovery boundaries, idempotent effects, or adversarial schedules are modeled or checked.
49
+ - Abstraction direction, stuttering refinement, symmetry, partial-order reduction, context or failure
50
+ bounds, lossy exploration, CEGAR, induction, or solver theory selection changes proof coverage.
51
+ - A model checker, bounded checker, SMT-backed verifier, proof assistant, symbolic executor, abstract
52
+ interpreter, or translation validator produces a correctness or counterexample claim.
53
+ - Scope, bit width, unwind depth, state count, time horizon, solver timeout, unknown result,
54
+ unsupported feature, trusted stub, external function, or generated-code boundary affects evidence.
55
+ - Formal artifacts are placed in change gates, periodic verification, canary, release, assumption,
56
+ counterexample, baseline, resource-metric, or proof-debt workflows.
57
+
58
+ <!-- mustflow-section: do-not-use-when -->
59
+ ## Do Not Use When
60
+
61
+ - Only ordinary runtime tests or test organization change with no formal model, proof obligation, or
62
+ bounded symbolic claim; use the matching test skill.
63
+ - Only compiler IR translation validation, miscompile localization, or compiler-stage refinement is
64
+ in scope; use `compiler-engineering-review` as the owner and this skill only for proof boundaries.
65
+ - Only a concrete race, lock, atomic, schedule, or database interleaving is implemented or debugged
66
+ without a formal model; use `race-condition-review`.
67
+ - Only application validation, schema checking, input sanitization, or static typing changes; use the
68
+ matching validation, schema, or type skill.
69
+ - Only memory cleanup or retained-reference ownership changes without formal obligations; use
70
+ `memory-lifetime-review`.
71
+
72
+ <!-- mustflow-section: required-inputs -->
73
+ ## Required Inputs
74
+
75
+ - Exact claim: state space, inputs, observations, preconditions, postconditions, safety, progress,
76
+ liveness, termination, refinement, equivalence, or bounded counterexample property.
77
+ - Model-to-reality ledger: modeled state, transitions, atomic actions, omitted failures, environment,
78
+ scheduler, clocks, resources, implementation fields, events, and external effects.
79
+ - Contract ledger: caller and callee obligations, success and every failure outcome, reads, writes,
80
+ unchanged state, old or ghost state, alias and ownership assumptions, and exception or cancellation.
81
+ - Numeric and memory semantics: mathematical versus fixed-width values, overflow, casts, shifts,
82
+ allocation identity, offset, bounds, alignment, initialization, provenance, aliasing, lifetime,
83
+ deallocation, and external resource behavior.
84
+ - Progress ledger: loop or recursion variant, scheduler and fairness guarantees, timeout or retry
85
+ model, deadlock, starvation, livelock, and total versus partial correctness decision.
86
+ - Bound ledger: instance scope, integer width, trace length, loop unwind, recursion depth, object or
87
+ node count, context-switch and failure count, solver resource limit, abstraction,
88
+ under-approximation, reduction mode, lossy search, and completeness signal.
89
+ - Trust ledger: verifier, solver, kernel, libraries, axioms, admitted facts, stubs, externals, model
90
+ extraction or generation, code generator, compiler, runtime, FFI, operating system, and hardware.
91
+ - Result ledger: valid, invalid, counterexample, unknown, timeout, unsupported, incomplete bound,
92
+ tool failure, flaky or unstable proof, and actual resource consumption.
93
+ - CI ledger: toolchain pins, assumption manifest, contract compatibility, proof-debt baseline,
94
+ counterexample promotion, refinement map, owner, cadence, budget, and configured command intents.
95
+
96
+ Read [Formal Contracts and Modeling Checklist](references/formal-contracts-modeling-checklist.md) when
97
+ contracts, weakest preconditions, invariants, variants, ghost or old state, frame conditions, state
98
+ models, safety, liveness, fairness, tool selection, scope, or trusted bases are in scope.
99
+
100
+ Read [Formal Memory, Bounds, and CI Checklist](references/formal-memory-bounds-ci-checklist.md) when
101
+ machine integers, casts, indexing, pointers, allocation lifetime, bounded checking, unwinding,
102
+ external stubs, counterexample replay, assumption manifests, verification cost, proof brittleness,
103
+ refinement maps, or CI operation is in scope.
104
+
105
+ Read [Formal Concurrency, Model Checking, and SMT Checklist](references/formal-concurrency-model-checking-smt-checklist.md)
106
+ when state, action, or trace properties, inductive-invariant strengthening, linearizability,
107
+ stuttering refinement, adversarial scheduling, network or crash behavior, weak memory, state-space
108
+ reduction, model-based test derivation, SMT theories, SSA, quantifiers, unsat cores, or solver
109
+ evidence are in scope.
110
+
111
+ <!-- mustflow-section: preconditions -->
112
+ ## Preconditions
113
+
114
+ - The task matches the Use When conditions and does not match the exclusions.
115
+ - The property authority and modeled observation are identified, or the missing design decision is
116
+ reported before proof success or failure is interpreted.
117
+ - The selected repository instructions and command contract have been checked.
118
+
119
+ <!-- mustflow-section: allowed-edits -->
120
+ ## Allowed Edits
121
+
122
+ - Update formal specifications, contracts, invariants, variants, ghost state, frame conditions,
123
+ lemmas, proof harnesses, state models, refinement maps, trusted stubs, assumption manifests,
124
+ counterexample fixtures, verification configuration, CI metadata, proof metrics, focused tests,
125
+ and directly synchronized docs or templates.
126
+ - Add runtime guards at unverified external boundaries and promote reproducible counterexamples into
127
+ deterministic regression or property fixtures when the repository owns those surfaces.
128
+ - Do not weaken a contract, add an assumption, reduce a bound, suppress an unknown result, or widen
129
+ the trusted base merely to make verification green without explicit review evidence.
130
+ - Do not claim implementation, binary, deployment, hardware, or environmental correctness beyond
131
+ the proven model and trust boundary.
132
+
133
+ <!-- mustflow-section: procedure -->
134
+ ## Procedure
135
+
136
+ 1. State the theorem or counterexample claim precisely. Name the quantified inputs, initial states,
137
+ allowed transitions, observation, terminal conditions, and whether the claim is bounded,
138
+ conditional, partial, total, probabilistic, or universal.
139
+ 2. Map the model to reality. Record each model variable and action against implementation fields,
140
+ events, storage, callbacks, failures, retries, scheduling, and external effects. Mark every omitted
141
+ behavior and justify why the property does not depend on it.
142
+ 3. Select a verification family by property. Use state exploration for bounded concurrent or
143
+ relational counterexamples, contract and SMT verification for executable imperative obligations,
144
+ and kernel-checked proof when a reusable theorem or certified construction is the product. Do not
145
+ choose by syntax preference or tutorial convenience.
146
+ 4. Separate state, action, and trace properties. Use state predicates for snapshots, action
147
+ predicates for one-step deltas, and trace or history predicates for ordering, duplication,
148
+ monotonicity, and linearizability. Do not erase a forbidden history because the final state looks
149
+ acceptable.
150
+ 5. Prove safety through a genuinely inductive strengthening. Check initialization, preservation,
151
+ and implication to the desired property as separate obligations. Treat a preservation failure
152
+ from an unreachable state as evidence that the induction hypothesis is too weak, not as a reason
153
+ to increase a finite trace bound indefinitely.
154
+ 6. Define the abstraction direction. For safety, prefer a justified over-approximation that permits
155
+ at least the implementation behaviors relevant to the property. Mark under-approximations,
156
+ lossy state storage, bounded schedules, and omitted identities as bug-finding evidence only unless
157
+ a separate completeness or cutoff argument closes the gap.
158
+ 7. Model nondeterminism as an adversarial choice over every permitted schedule, message outcome,
159
+ failure boundary, retry, timeout race, callback, and external response. Constrain only behavior
160
+ the real protocol or platform forbids, and record the evidence for each constraint.
161
+ 8. Justify every atomic action and state-space reduction. Show that hidden intermediate states are
162
+ unobservable to threads, callbacks, cancellation, recovery, and external systems. Validate
163
+ symmetry, partial-order, transition coarsening, and other reductions against the property and
164
+ keep lossy exploration modes out of universal claims.
165
+ 9. Define preconditions as caller obligations. Keep hostile or ordinary invalid input inside the
166
+ function's explicit failure domain unless it is genuinely outside the API definition. Require a
167
+ satisfiable witness for each important precondition set.
168
+ 10. Derive obligations backward from the postcondition. Use weakest-precondition reasoning to place
169
+ assertions, branch conditions, and intermediate lemmas where the final guarantee actually needs
170
+ them instead of adding plausible facts by intuition.
171
+ 11. Build loop and recursion proofs with three separate duties: initialization, preservation, and
172
+ postcondition derivation. State a well-founded variant for termination. Report partial correctness
173
+ honestly when termination is not proved.
174
+ 12. Express progress through processed prefixes, remaining work, or another inductive decomposition.
175
+ A true but weak bound is not an invariant if it cannot connect loop exit to the final property.
176
+ 13. Preserve old state with ghost values or snapshots before destructive updates. Prove content,
177
+ permutation, ownership, or history properties separately from shape properties such as sorting or
178
+ structural validity.
179
+ 14. Write frame conditions. Name what may be read, what may be changed, and what must remain equal to
180
+ its prior state on success, failure, exception, cancellation, timeout, retry, and partial work.
181
+ 15. Model aliases and memory regions, not only pointer inequality. Use allocation identity plus
182
+ half-open offset ranges where possible, and prove address arithmetic before using a range result.
183
+ 16. Treat object invariants as shared obligations across constructors and every public transition.
184
+ If callbacks or reentrancy can occur during a temporarily broken state, restore the invariant
185
+ before exposure or make the transition atomic at the modeled boundary.
186
+ 17. Separate normal and abnormal postconditions. Give success, typed failure, exception, cancellation,
187
+ timeout, partial write, rollback, and retry paths explicit state guarantees.
188
+ 18. Match actual machine semantics. Model fixed width, signedness, overflow, wrapping, traps, checked
189
+ failures, casts, shifts, pointers, floating point, and debug or release differences rather than
190
+ silently proving a mathematical-integer program.
191
+ 19. Separate safety, progress, termination, and liveness. State scheduler and fairness assumptions
192
+ only when the implementation or operating environment actually provides them. A fairness axiom
193
+ is part of the claim, not proof that a real scheduler is fair.
194
+ 20. Make boundedness visible. Record object scope, integer width, trace length, unwind depth,
195
+ recursion, and resource limits. Require a completeness or unwinding assertion when claiming all
196
+ permitted executions fit inside a bound; otherwise report only the explored domain.
197
+ 21. Test reachability and vacuity. Require initial-state witnesses, branch or error-state cover
198
+ properties, and periodic negative controls that invert a postcondition, remove behavior, or inject
199
+ an invariant violation. A proof that survives a meaningful defect is not trusted evidence.
200
+ 22. Encode SMT obligations with the executable semantics they claim to represent. Choose integer,
201
+ bit-vector, floating-point, array, string, datatype, and uninterpreted-function theories
202
+ deliberately; expose path conditions through SSA or an equivalent transition relation; and keep
203
+ quantifier instantiation, loop unwinding, and memory-domain assumptions visible.
204
+ 23. Classify every tool outcome. Keep valid, invalid, counterexample, unknown, timeout, unsupported,
205
+ incomplete bound, tool failure, and unstable proof distinct. Never convert absence of a found
206
+ counterexample into proof outside the tool's completeness contract.
207
+ 24. Treat solver evidence as an artifact to validate. Replay satisfiable models against the original
208
+ semantics, preserve the submitted formula and options for unsatisfiable outcomes, distinguish an
209
+ unsat core from a proof certificate, and use an independent checker or solver diversity when the
210
+ risk warrants it.
211
+ 25. Record the trusted computing base. Include kernels, solvers, axioms, admitted facts, libraries,
212
+ externals, stubs, extraction, generated code, compilers, runtimes, FFI, operating system, and
213
+ hardware that the final claim depends on.
214
+ 26. Isolate external boundaries. Treat file, network, clock, randomness, native library, allocator,
215
+ database, and FFI contracts as assumptions unless separately verified. Validate their concrete
216
+ inputs and outputs at runtime before entering the verified core.
217
+ 27. Check memory and arithmetic obligations before operations. Prove overflow-safe additions and
218
+ multiplications, cast and shift domains, index construction, allocation lifetime, initialization,
219
+ alignment, valid representation, alias rules, and exactly-once release across failures.
220
+ 28. Replay counterexamples against the real implementation when possible. Preserve the formal trace,
221
+ input, bound, model version, implementation version, and translation step. Promote a confirmed
222
+ case into an ordinary regression or property seed without deleting the original formal artifact.
223
+ 29. Maintain an executable refinement map. Translate implementation events and state into model
224
+ actions and variables, or generate implementation tests from model transitions. A prose-only map
225
+ drifts as soon as fields, retries, or atomic boundaries change.
226
+ 30. Derive model-based tests from the same transition and observation vocabulary. Use them to check
227
+ the refinement adapter, concrete fault injection, short histories, and retained counterexamples;
228
+ do not present generated tests as a substitute for exhaustive or deductive evidence.
229
+ 31. Pin the verification environment. Version the verifier, solver, libraries, options, target,
230
+ container or runtime identity, and proof dependencies. Upgrade them separately from feature work
231
+ and compare result taxonomy, assumptions, proof cost, and counterexample changes.
232
+ 32. Operate verification in bounded lanes. Keep changed obligations and fast bounded checks in change
233
+ gates, broader scopes and repeated complexity checks in periodic lanes, and full models, larger
234
+ bounds, supported targets, and extraction or binary evidence in canary or release lanes.
235
+ 33. Track proof cost and brittleness. Store solver resource counts, states, obligations, scope,
236
+ memory, time, and variance. Split large proof contexts, isolate lemmas, and control triggers or
237
+ facts when small edits or repeated runs cause unstable resource use. Do not retry until green.
238
+ 34. Keep one assumption manifest. Register axioms, admitted proofs, externals, stubs, fairness,
239
+ scopes, bounds, numeric domains, environment models, and trusted generated artifacts. Treat a new
240
+ assumption or enlarged trusted base as a reviewable risk change.
241
+ 35. Check logical contract compatibility. A stronger precondition or weaker postcondition is a
242
+ consumer-facing regression. Where supported, prove that the old precondition implies the new
243
+ precondition and the new postcondition implies the old guarantee under the same observation.
244
+ 36. Ratchet verification debt. Baseline admitted facts, unproved obligations, unsupported features,
245
+ incomplete mappings, and unstable proofs. Prevent new debt in changed scope and retire existing
246
+ debt incrementally rather than claiming complete coverage or abandoning verification.
247
+
248
+ <!-- mustflow-section: postconditions -->
249
+ ## Postconditions
250
+
251
+ - The claim states its model, quantified domain, observation, assumptions, bounds, completeness,
252
+ property class, and trusted base.
253
+ - Preconditions, success and failure postconditions, frames, invariants, variants, old state, machine
254
+ semantics, aliases, memory, external boundaries, and reachability are explicit or reported missing.
255
+ - Tool results preserve valid, invalid, unknown, timeout, unsupported, incomplete, and unstable states
256
+ without false-green normalization.
257
+ - Counterexamples, refinement mappings, assumption changes, contract compatibility, proof cost,
258
+ verification debt, and CI cadence have observable ownership.
259
+
260
+ <!-- mustflow-section: verification -->
261
+ ## Verification
262
+
263
+ Use configured oneshot command intents when available:
264
+
265
+ - `changes_status`
266
+ - `changes_diff_summary`
267
+ - `lint`
268
+ - `build`
269
+ - `test_related`
270
+ - `test`
271
+ - `test_audit`
272
+ - `docs_validate_fast`
273
+ - `test_release`
274
+ - `mustflow_check`
275
+
276
+ Prefer narrow configured model, proof, contract, bounded-check, counterexample-replay, assumption,
277
+ refinement, proof-cost, and vacuity intents when the selected repository exposes them. Do not invent
278
+ raw verifier, solver, proof assistant, model checker, container, or unbounded exploration commands.
279
+
280
+ <!-- mustflow-section: failure-handling -->
281
+ ## Failure Handling
282
+
283
+ - If a claim omits a realistic failure, scheduler, numeric, memory, FFI, or environment behavior,
284
+ narrow the claim or repair the model before treating a green result as evidence.
285
+ - If a precondition set has no witness, a branch is unreachable, or a negative control does not fail,
286
+ classify the result as vacuous until reachability and sensitivity are restored.
287
+ - If a bounded checker lacks completeness or unwinding evidence, report the explored bound and stop
288
+ short of an unbounded claim.
289
+ - If the tool returns unknown, timeout, unsupported, incomplete, or unstable, preserve that state;
290
+ do not retry, suppress, or translate it into success.
291
+ - If a counterexample does not replay, inspect the model-to-implementation map, abstraction, runtime
292
+ environment, bound, and tool semantics before discarding either side.
293
+ - If proof execution is unconfigured or too broad for the current lane, stop at specification review,
294
+ static consistency, focused fixtures, and a manual verification plan.
295
+
296
+ <!-- mustflow-section: output-format -->
297
+ ## Output Format
298
+
299
+ - Formal claim, property class, observation, and authority
300
+ - Model-to-implementation map and omitted behaviors
301
+ - Preconditions, postconditions, frames, invariants, variants, ghost or old state, and reachability
302
+ - Safety, progress, termination, liveness, fairness, scope, bound, and completeness decisions
303
+ - Numeric, memory, alias, lifetime, external, and failure-path obligations
304
+ - Tool family, result taxonomy, trusted base, assumptions, and proof-cost evidence
305
+ - Counterexample, replay, regression promotion, and refinement-map evidence
306
+ - Contract compatibility, verification debt, cadence, and owner decisions
307
+ - Files changed
308
+ - Configured command intents run
309
+ - Missing or skipped proof, solver, model, replay, refinement, vacuity, and release evidence
310
+ - Remaining model, assumption, bound, trust, drift, brittleness, or verification-debt risk