45 lines
2.8 KiB
Markdown
45 lines
2.8 KiB
Markdown
# Independent ABI verification plan — repaired handoff
|
|
|
|
Session `run-eba7860308317f839eb35392`; verifier `research-abi-independent`; requested model
|
|
`openai/gpt-5.6-sol`. Fixed before this session's independent executions.
|
|
|
|
## Scope and acceptance labels
|
|
|
|
This quantum may establish independent static reproduction and an archived-state cross-check.
|
|
It cannot establish original-assisted runtime execution, partial/full live compare, independent
|
|
replacement, integrated replay, live allocator safety, or replacement acceptance.
|
|
|
|
## Falsifiers
|
|
|
|
1. Stop on mismatch in paired HEAD/common Git directory/source binding, input SHA-256, objdump
|
|
path/hash/version, nonzero exit, zero instruction output, missing requested address, truncated
|
|
terminal instruction, or unexpected skip.
|
|
2. Reject the dedup claim unless independent complete bytes show both `EvDsc` addresses passed to
|
|
`0x0046f8c0`, caller cleanup, result test, zero selecting match, and helper/callees implementing
|
|
byte-and-length inequality with independent inline/heap selection at capacity `0x10`.
|
|
3. Reject ownership claims if either append transfers raw string/vector headers, if `0x2c` and
|
|
`0x74` element strides collapse, if long strings are not independently freed, or if growth omits
|
|
deep copy followed by old-element destruction/free.
|
|
4. Reject archived-value claims unless direct parsed tree state (not counters) contains the named
|
|
buckets, IDs, all event fields, and exact `0x7f7fffff` position words.
|
|
|
|
## Required branch exposures and distinct states
|
|
|
|
Instruction exposure: dedup null/empty, scalar mismatch, description equal/unequal, each operand's
|
|
short/long selection, byte mismatch, length mismatch and equal return; ObservedTech spare/full
|
|
append and copy; PlayerEvent spare/full append, three-string copy and long cleanup; TurnEvents
|
|
hit/miss, spare/full outer growth, empty/nonempty nested copy and destruction; prune zero/one/two
|
|
leading stale and stale-after-fresh paths.
|
|
|
|
States remain distinct: empty/short/long strings; equal versus description-only-different events;
|
|
finite versus unordered (NaN) coordinates; new/existing tech; spare/full capacity; empty/nonempty
|
|
nested vectors; duplicate/no duplicate; zero/one/two leading stale buckets; stale-after-fresh;
|
|
duplicate turn buckets versus miss. Static exposure is not live state execution.
|
|
|
|
## Independent challenge
|
|
|
|
Held-out NaN negative control: independently decode the three x87 position comparisons. Prediction:
|
|
the branch must reject unordered comparisons, so otherwise-identical events with NaN in any compared
|
|
coordinate do not deduplicate, even with identical NaN payloads. This challenges any bitwise- or
|
|
ordinary-equality gloss. Also ablate the widened stop boundary back to `0x00825e65`; it must reproduce
|
|
the known truncation and therefore cannot serve as complete-byte provenance.
|