fix(fleet-state): guard empty spotlight history + reconcile Sandbox note - #207
Merged
aaronjmars merged 1 commit intoMay 22, 2026
Conversation
Two small follow-ups to aeonfun#203, both surfaced by an AntFleet bench review of the fleet-state skill on the post-aeonfun#203 main. 1) Empty spotlight history aborts the digest When `.history` in contributor-spotlight-history.json is empty (fresh install, no spotlight has run yet), the first jq emits nothing → SPOTLIGHT_PICK is "" → `echo "" | jq ...` produces a parse error and the digest exits non-zero. That contradicts the "degrade gracefully" intent stated a few lines up in the same section. Guard the secondary jq extractions so missing history leaves both fork+date empty and the existing `SPOTLIGHT_DATE older than 8 days` branch handles the downstream stale-render case. 2) Sandbox note contradicts Step 2's gh api calls The Sandbox note at the bottom claims "No `curl`, no `gh api` calls". But Step 2 ("Resolve parent repo") calls both `gh api repos/<self>` and `gh repo view` when PARENT_OVERRIDE is empty. An operator reading the security/sandbox section would believe the skill is hermetic local I/O when it actually shells out to GitHub on every non-override run. Update the note to disclose the one call honestly, and document the PARENT_OVERRIDE escape hatch for the operator who wants hermetic.
|
Triage: ACCEPTED — clean against the contribution rubric (scope ✓ / format ✓ / originality ✓ / size ✓). |
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.
Two small follow-ups to #203, both surfaced by an AntFleet review of the fleet-state skill on the post-#203
main.1)
[Bug · High]Empty spotlight history aborts the digestskills/fleet-state/SKILL.mdlines 113-117. Whencontributor-spotlight-history.json's.historyis empty (fresh install, no spotlight has ever run), the first jq emits nothing →SPOTLIGHT_PICKbecomes the empty string → the subsequentecho "$SPOTLIGHT_PICK" | jq -r '.fork // empty'produces a parse error and the run aborts non-zero.That contradicts the "degrade gracefully — a missing source produces a partial section, not a hard failure" intent stated a few lines up in the same section. Guarded with
if [ -n "$SPOTLIGHT_PICK" ]so missing history leaves both fields empty and the existingSPOTLIGHT_DATE older than 8 daysstaleness branch handles the downstream render.2)
[Docs-gap · Low]Sandbox note contradicts Step 2'sgh apicallsskills/fleet-state/SKILL.mdlines 79-86 (Step 2 body) vs line 415 (Sandbox note). The Sandbox note claimsNo curl, no gh api calls, no env-var-in-headers. But Step 2 ("Resolve parent repo") calls bothgh api repos/<self>andgh repo viewwhenPARENT_OVERRIDEis empty.An operator reading the security/sandbox section would believe the skill is hermetic local I/O when it actually shells out to GitHub on every non-override run. Note updated to disclose the one call honestly, with
PARENT_OVERRIDEdocumented as the escape hatch.Both findings surfaced by AntFleet review
1939cc1eon bench replay of #203. Receipt: AntFleet#32🤖 Generated with Claude Code