fix(free-loop): surface Circle read errors, honor search --pick, name missing params, document --live-probe - #179
Merged
Merged
Conversation
… missing params, document --live-probe Found on an end-to-end walk of the CLI (2026-09-02): - doctor: every failed Circle read collapsed to "could not read (Circle API issue …)" with the CLI's stderr dropped, so a transient burst looked like an empty wallet. circle.mjs now records the last read failure (deprecation noise filtered) and doctor prints it under the warning with a rerun hint. - search: `--pick` was silently dropped even though the ranker's own footer advertises it — forward it and print the plan. And when the top pick's indexed URL needs query params (Gloria AI → ticker), the ranker withholds the exec hint and the next-step footer printed nothing; it now names the params and the exact `selat run … --param … --dry-run` line. - skill compare: refuses without --live-probe, but --help, the top-level help, and the README all omitted the flag. Documented it, added the flag to every example, and the refusal now prints the exact retry. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.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.
Summary
Four gaps in the free half of the loop, found on an end-to-end walk of
selaton 2026-09-02 (v0.16.15):could not read (Circle API issue …)with the CLI's stderr dropped, so a transient burst looked exactly like an empty wallet or a broken install.circle.mjsnow records the last read failure (lastCircleReadError(), Node deprecation noise filtered) and doctor prints it under the warning with a rerun hint — for the Gateway read, the on-chain reads, and the policy reads.search --pickwas a silent no-op. The ranker's own footer advertises it, butselat searchdropped the flag and printed the plain shortlist again. It is now forwarded and prints the plan (still free — a plan is never a settlement).ticker), and the footer printed nothing. It now names the params and the exactselat run … --param … --dry-runline.skill comparerefuses without--live-probe, but nothing documented the flag. The compare help, the top-level help example, and the README all omitted it. Documented, added to every example, and the refusal now prints the exact retry.Verification
search-params-next-step,doctor-circle-read-error— the latter drivescircle.mjswith a stub binary);npm test→ 542/542.selat search "summarize the latest news on gold prices"ends with the Gloria "needs a parameter" block;--pickprints the plan;selat doctorwith a stub Circle CLI returning 503 showscircle said: …under each warning.Companion selat-pay PR (the paid half of the same walk — x402 v1 body-only challenges were unpayable): branch
fix/x402-v1-body-challengein SELAT-AI/selat-pay.🤖 Generated with Claude Code