From the round-1 review of #265.
Where: .claude/skills/update-xmech-page/SKILL.md steps 1 and 7, and scripts/fleet/build_site_audit.py.
The step 7 rewrite dropped "pinned_at_utc (ISO, with its offset)". Step 1 says only to write the pins to $SNAP/revisions.json "with the pin time", and gives no layout. The builder now reads pins["mechs"][<Mech>]["sha" / "commit_date"], pins["claw"] and pins["pinned_at_utc"], and copies the pin time into the audit unchecked. A pin time with no offset, or unreadable, would only surface later as the nightly's AUDIT failure.
Fix:
- give the layout and the pin-time format in step 1;
- have the builder validate the pin time with
check_cards.pin_time() and refuse one that is unreadable or in the future.
From the round-1 review of #265.
Where:
.claude/skills/update-xmech-page/SKILL.mdsteps 1 and 7, andscripts/fleet/build_site_audit.py.The step 7 rewrite dropped "pinned_at_utc (ISO, with its offset)". Step 1 says only to write the pins to
$SNAP/revisions.json"with the pin time", and gives no layout. The builder now readspins["mechs"][<Mech>]["sha" / "commit_date"],pins["claw"]andpins["pinned_at_utc"], and copies the pin time into the audit unchecked. A pin time with no offset, or unreadable, would only surface later as the nightly's AUDIT failure.Fix:
check_cards.pin_time()and refuse one that is unreadable or in the future.