writing-skills
writing-skills
Use when creating new skills, editing existing skills, or verifying skills work before deployment
quicknode-ci-integrationBuild a fork-safe QuickNode CI contract lane with mocked default tests and a protected read-only integration check. Use when preventing chain, network, method, SDK, or secret drift before deployment. Trigger with: "test QuickNode in CI", "add a QuickNode contract test", "secure QuickNode GitHub Actions".
Independent GitHub snapshot · Automated classification · Original documentation governs
name: quicknode-ci-integration description: 'Build a fork-safe QuickNode CI contract lane with mocked default tests and a protected read-only integration check. Use when preventing chain, network, method, SDK, or secret drift before deployment. Trigger with: "test QuickNode in CI", "add a QuickNode contract test", "secure QuickNode GitHub Actions".' allowed-tools: Read, Grep, Write, Edit, Bash(npm:*) version: 2.0.0 argument-hint: '[test-command-and-protected-environment]' model: inherit effort: high license: MIT author: Jeremy Longshore jeremy@intentsolutions.io tags:
Keep pull-request tests deterministic and credential-free. Run a minimal live QuickNode read only after trust has been established, with environment protection and no secrets exposed to forked code.
Use Read and Grep to find workflow triggers, fork behavior, secret references, generated code, endpoint fixtures, and commands that can sign or submit transactions.
Use Write or Edit to test JSON-RPC request IDs, chain-ID validation, result-versus-error parsing, timeout behavior, rate-limit classification, and redaction with fixtures. Mock at the transport boundary.
Permit one documented, low-cost read method in a trusted environment. Assert chain identity and response shape rather than a volatile block value. Never load a funded signer or production write credential.
Do not expose QuickNode secrets to untrusted pull requests or execute fork-controlled code in a privileged pull_request_target context. Require environment approval or a trusted post-merge lane.
Use Bash(npm:*) to run the existing pinned test command. Commit lockfile changes with SDK upgrades, pin third-party workflow actions by immutable revision under repository policy, and reject install scripts not already reviewed.
Record exact commit, command, offline results, live method, chain ID, latency, and redaction check. Make the live lane fail closed when its credential is expected but absent.
Use Read and Grep for CI discovery, Write/Edit for fixtures and workflow changes, and Bash(npm:*) only for repository-defined package and test commands. Do not invoke live RPC from an untrusted event.
A public fork runs parser and retry fixtures only. A protected main-branch job reads eth_chainId, verifies the expected network, and stores no endpoint URL in logs.
| Failure | Response |
|---|---|
| Fork can access secrets | Disable the lane and correct the event boundary |
| Live block assertion flakes | Assert response contract and chain identity instead |
| Credential silently absent | Fail the protected lane with a configuration error |
| Test can submit transactions | Replace the credential and constrain the adapter |