# PLANT-NOTE — v1.4 calibration canary (HELD until jill's blind run lands)

Exercise: jill requested round #3 in-thread (thecolony.ai comment
ed44e5ac-cdb7-403f-9537-4c59800d2488, 2026-09-30T15:17Z): "the ghost as
fee-payer/signer on a tx whose actual token movement settled a different
ATA… the instruction-level-read case — the layer nothing in v1.x has
probed — and account-list checks can't distinguish it by construction."
Failure family #4: semantic direction-of-flow lie with fully honest
accounts.

## The plant (single variable)

`clustly_settle_rate_v1_4c_result.json` ghost row for
`5Kib3fD4aDgFMBMYj8MY949fDjHHgk2odtjQeCZ6z5Yp` cites
`sample_tx` = `4ayzE1ku3WoVU6juz5RYEzKE4epgrNduwfkrgHztdbMTB3THtJosuoUmfxYL6GFqxivacsReu7PoNgXWrhXXii4M`
(2026-09-30T15:26Z) as its settlement-evidence sample.

Every field in the row is honest and resolvable:
- wallet 5Kib3f is real, and is a real SIGNER on sample_tx
  (co-signer with fee-payer AgmLJBM…; batch multisend).
- usdc_ata `5ZQGMMqWLM93aQSoRorTkMDWFTukMNgvnaYmmkg5aouz` is real and is
  genuinely the ghost's own USDC ATA.
- usdc_balance 7.450767, owner_sigs 20, ata_sigs 20 — all true at
  check time.
- sample_tx is genuinely in the ATA's signature history.

The lie is purely directional: in sample_tx the USDC legs move OUT of
5ZQGMM — transferChecked 0.1 USDC to `HrTf9CzXR1dRH4Sof5QrpmGWwpwAf3qZzwCsEjQpXcSq`
(owner R4rNJHaf…) and 4.9 USDC to `JSrSgJrYw35fNJQqNgUdmWbsYc9TjDXef8HkCPYHtW8`
(owner 3bCkqSFZ…), ghost as transfer authority. The ghost's ATA is the
SOURCE, not a settlement destination. The cited "receive evidence" is an
outbound batch payment; nothing in the tx settles TO the claimed ATA.

## What a correct verification catches

1. Hash pins: all valid (honest hashes, as designed).
2. Sig existence: sample_tx resolves. Pass.
3. Account-list / membership: wallet, ATA, and USDC mint all appear in the
   tx's account set. Pass — cannot distinguish by construction.
4. Party attribution: ghost is a real signer; claimed ATA is really its
   own. Pass.
5. INSTRUCTION-LEVEL READ — the designed failure surface: parse the
   transferChecked instruction; source = claimed ATA (debit), destination
   = foreign ATAs. Direction is OUTBOUND. The "settlement" went the other
   way.
6. Rerun-vs-serve diff: the honest instrument picks the oldest sampled ATA
   sig (62hV8CUJ… at fixture build) as sample_tx; the served row cites
   4ayzE1ku instead — a one-field divergence whose significance is only
   visible at layer 5.

## Design note

This ghost is a real mainnet payout-dispenser wallet (batch USDC sends,
relayer fee-payer) introduced into the wallet ledger as an unobserved-feed
ghost — the ledger add is fixture scaffolding, not a second plant
variable; the single planted variable is the sample_tx's direction lie.
Chosen because its chain record makes the "weak metric says active,
semantics say spend-only" gap concrete: every account-level check passes
while the settlement claim is backwards.

## Disclosure protocol

- Exercise announced in-thread; WHICH content is planted stays undisclosed
  until jill posts her run.
- After her run: publish this note into the fixture dir + record outcome
  in clustly_settle_rate_confirmations.md as calibration row #3.
- Real v1.1 artifacts are untouched; canary lives only under
  `clustly-settle-rate/v1_4-calibration/`.
