# Neon Shared Intent Selection Report

- target: `https://riddlenode.com/neon-lab/`
- source PR: `davisdiehl/lilarcade#534`
- source commit: `ba19ca3`
- integrations PR: `riddledc/integrations#757`
- package: `@riddledc/riddle-proof-packs@0.8.4`
- status: `shared_intent_selection_ready`
- evidence role: `interaction_snapshots`

## Plain-English Catch Card

### Title

Neon stopped hiding smoke/full loop selection in app-only script code.

### Summary

The one-intent smoke lane and the fuller intent matrix now share a reusable Riddle Proof intent-selection receipt, so a proof run can say exactly which mix claims were requested, selected, or rejected before it starts ranking candidates for review.

### What Went Wrong

The fast RiddleNode smoke loop was useful, but the selected-intent behavior lived only in LilArcade's matrix script. That made the loop faster, but it did not yet make smoke/full lane selection a reusable Riddle Proof concept.

### What Riddle Caught

The next layer belonged in `@riddledc/riddle-proof-packs`: `selectAudioMixIntentSet()` now emits `riddle-proof.audio-mix-intent-selection.v1` with requested ids, selected ids, unknown ids, counts, and the proof/taste boundary. LilArcade consumes that receipt and still treats unknown CLI ids as fatal.

### Why It Matters

Fast proof loops need a shared vocabulary. A smoke run should not merely "filter an array"; it should leave evidence that the run intentionally scoped itself to one bounded objective claim before a fuller matrix is attempted.

### What Changed

Integrations published `@riddledc/riddle-proof-packs@0.8.4` with `selectAudioMixIntentSet()`. LilArcade PR #534 now uses that helper in `scripts/neonRatchetIntentMatrix.mjs`, includes the selection receipt in the plan, and verifies the live RiddleNode smoke loop through the shared path.

### What This Does Not Prove

It does not prove subjective mix quality, does not choose a musically best candidate, and does not promote anything to LilArcade production. It proves that smoke/full intent scoping is now a reusable proof-pack receipt and that the current RiddleNode Neon target still produced a metric-supported review packet.

### Technical Receipt

`intentSelection.version=riddle-proof.audio-mix-intent-selection.v1`; requested ids `guitar-down-little`; selected ids `guitar-down-little`; unknown ids `[]`; total intent count `3`; selected intent count `1`; status `intent_selection_ready`; recommendation `guitar -0.02`; supported candidates `2`; rejected candidates `0`; findings `0`; surrogate review `approved_for_development_review`.

## Live RiddleNode Receipt

The smoke loop published the Neon-only bundle to RiddleNode, ran shared fast/layout/playback gates, then ran one single-browser intent-matrix proof through the shared selection path.

| Receipt | Value |
| --- | --- |
| Package | `@riddledc/riddle-proof-packs@0.8.4` |
| Selection version | `riddle-proof.audio-mix-intent-selection.v1` |
| Requested intent ids | `guitar-down-little` |
| Selected intent ids | `guitar-down-little` |
| Unknown intent ids | `none` |
| Total intent count | `3` |
| Selected intent count | `1` |
| Recommendation | `guitar -0.02` |
| Supported candidates | `2` |
| Rejected candidates | `0` |
| Findings | `0` |
| Surrogate review | `approved_for_development_review` |

## Validation

- `pnpm --filter @riddledc/riddle-proof-packs test` passed.
- `pnpm test` passed in `riddledc/integrations`.
- `@riddledc/riddle-proof-packs@0.8.4` published through trusted publishing.
- `node --test scripts/__tests__/neonRatchetIntentMatrix.test.mjs` passed: 9/9.
- `npm run test:neon` passed: 107/107.
- `npm run build` passed locally.
- `npm run proof:sequencer:riddlenode-smoke-loop` passed against `https://riddlenode.com/neon-lab/`.
- GitHub CI passed for LilArcade PR #534 at `ba19ca3`.

## Artifacts

- `shared-intent-selection-plan.json`
- `shared-intent-matrix-summary.md`
- `shared-intent-matrix-summary.json`
- `guitar-shared-selection-human-review-packet.md`
- `guitar-shared-selection-human-review-packet.json`
- `shared-selection-surrogate-review.md`
- `shared-selection-surrogate-review.json`
- `shared-selection-generated-profile.json`
- `shared-selection-intent-matrix.png`

## Boundary

This is workflow proof and candidate-review proof. It shows that intent scoping for smoke/full audio-mix loops is now reusable proof-pack behavior and that the live RiddleNode target can still produce a compact, metric-supported review packet. It does not prove the candidate sounds better.
