Repository navigation
fix(cli): select GAMEPAD runners after package publication - #243
Merged
Merged
Conversation
Co-Authored-By: Codex <codex@openai.com>
Add the proposed GAMEPAD types, exact fire-and-forget envelopes, selected runtime injection, synchronous cached reads, and npm/JSR public entrypoints. Test mutation isolation, independent listeners, source trust and built SDK imports. Co-Authored-By: Codex <codex@openai.com>
Co-Authored-By: Codex <codex@openai.com>
Co-Authored-By: Codex <codex@openai.com>
Co-Authored-By: Codex <codex@openai.com>
Co-Authored-By: Codex <codex@openai.com>
Co-Authored-By: Codex <codex@openai.com>
Co-Authored-By: Codex <codex@openai.com>
Co-Authored-By: Codex <codex@openai.com>
Co-Authored-By: Codex <codex@openai.com>
Co-Authored-By: Codex <codex@openai.com>
Co-Authored-By: Codex <codex@openai.com>
A throwing listener stopped delivery to every later listener, including neutral focus-loss snapshots. Each listener now runs in its own try/catch and the error is rethrown from a microtask so it is still reported. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The runtime prelude embedded createGamepadStateTools.toString(), which breaks inside the opaque iframe once a bundler or coverage transform adds helper references (__name, cov_*). The prelude now uses a literal JS source kept equivalent to @napplet/nap/gamepad by a vector test, and isolates throwing onChange listeners the same way the nap binding does. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
NAP-GAMEPAD's Web Projection Guidance gives allow="gamepad 'none'" for napplet frames. No NIP-5D or NAP text covers hid or usb, so the harness no longer adds them to its loading model. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
installGamepadShim subscribed immediately, so every napplet using the default domain set sent gamepad.subscribe and received controller state for its lifetime, and the conformance prelude's own subscribe was credited to the napplet under test. NAP-GAMEPAD lets the binding subscribe "before or on first use"; both bindings now wait for the first read or onChange. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Replace the domain === 'gamepad' special case in the shared validator with an optional forbiddenReason on EnvelopeSpec. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The snippet closed its onChange subscription in the same synchronous block, so the handler could never run. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The release step hard-wrapped every existing CHANGELOG entry and left runs of spaces in the new ones. Earlier entries now match main and only the new version sections are added. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
dskvr
marked this pull request as ready for review
October 13, 2026 01:51
Co-Authored-By: Codex <noreply@openai.com>
Record the shared npm ETARGET failure across all five standalone platforms and restore the existing changelog formatting. Co-Authored-By: Codex <noreply@openai.com>
Raise the Paja minimum to 0.21.0 and update the lockfile to its compatible core/NAP peer graph. Verify the packed 0.3.4 release with strict npm and pnpm installs while retaining GAMEPAD correlation-id validation. Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com> # Conflicts: # .planning/STATE.md # skills/napplet-design/SKILL.md
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Select conformance CLI 0.3.4 and Kehto CLI 0.5.5 in the private runner cache so napplet CLI 0.9.1 uses the GAMEPAD-capable tools. Update the runner assertions and release metadata together.
All five standalone jobs previously failed because conformance CLI 0.3.4 was not published. The prerequisite #242 is now merged; its npm publication and JSR publication succeeded. The required npm tarballs download successfully. This follow-up includes released
mainand targetsmain.Validation:
3732571086d9e9a2276d682b49720ddbade82e2b: standalone smoke on all five platforms, CI, conformance, and AI-slop. The Linux x64 job initially hit a Chromium startup SIGSEGV after successful provisioning; one rerun of that unchanged job passed. The crash was not reproduced or separately fixed. Link checking is path-filtered and was not triggered because this PR changes no site/docs files.The standalone smoke test is unchanged. Protocol and runner-cache behavior are outside this version-selection change. Investigation evidence is in
.planning/debug/pr243-unpublished-runner.md.