docs: Record V1.1.7 in Script A's history, and update CLAUDE / ARCHITECTURE

Script A's Version History gains the reboot-cycle macro, the Script B timeout
fix, the tmp/ rule and the stress knobs.

CLAUDE.md: current status to V1.1.7, a Script 5 paragraph, tmp/ in the folder
list, and two gotchas rewritten - the timeout one now covers both restore
positions, and --runtime is described as the job's overall limit rather than
"a 24 hour ceiling". Dropped the stale "TR518 not scripted yet" line.

ARCHITECTURE.md: Script 5 in the tree and in Key Features, tmp/ in the tree,
constraint 14 extended with "copy the :label along with the goto", and two
known issues added for the parts not yet run on hardware.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014RetWKFZFG1ZHcitQAyhwM
This commit is contained in:
2026-09-04 22:44:21 +08:00
co-authored by Claude Opus 5
parent 1fbdcc23d6
commit 1a06367ade
4 changed files with 173 additions and 14 deletions
@@ -289,6 +289,58 @@
; once the load line is active - reading back 0.859
; after 'normal' is the load line, not a failed write
; tools/Multiphase_Normal.txt Bench command reference for the above
; 5_Blanton_Script_Reboot_Cycle.ttl Created Reboot-cycle run - a STANDALONE script, not
; chained to A -> B -> C and not using hw-test-session:
; every cycle is a fresh boot, so there is nothing to
; carry over and nothing to tear down
; while 1: login -> sudo -i -> date -s -> fans -> wait_init
; -> Check Pt1..Pt13 -> show uptime -> reboot ->
; wait 'Booting in blind mode'
; cnt_cycle is printed in the banner of every round
; Pt1 DUT info (boot/version/fwutil/syseeprom/ssdhealth/
; TPM/NVMe) Pt2 BMC info + source the bash tools
; Pt3 mgmt ping Pt4 NFC poll (20 s)
; Pt5 SSD stress Pt6 USB stress (node from
; usb_target.sh, not a fixed sda1)
; Pt7 BMC USB net Pt8 100G port status + 15 s traffic
; Pt9 BER sweep Pt10 NVMe error info
; Pt11 platform data Pt12 dmesg i2c
; Pt13 PCIe error counters + ras-mc-ctl
; !! there is NO exit condition - the only way to stop it
; is to close the Tera Term macro
; !! NOT verified on hardware yet
; The cdc_ncm probe sets timeout = 15 and restores it to 0
; BEFORE the if, so both branches are covered in one line -
; the ping block below it waits on a 'sleep 10', which is
; already two thirds of the cap on a loaded DUT
; The probe was copied from Script B without its :skip_ping
; label, so 'goto skip_ping' had no target. Tera Term only
; raises that when it actually jumps, i.e. only when the
; NCM interface is missing - the label is now there
; Renumbered the second 'Check Pt12' (PCIe error counters)
; to Pt13; Pt1..Pt13 are now unique
; ScriptB Restore timeout = 0 on the cdc_ncm success path too
; It was only restored at :skip_ping, which the success
; path reaches several waits later - until then every wait
; was capped at 15 s instead of blocking
; .gitignore Ignore tmp/ - scripts not yet verified on hardware
; blanton_reboottest.sh (the bash port of the reboot cycle,
; for running without Tera Term) lives there until it has
; been run on a DUT. Unverified scripts must not reach the
; publish bundle: the tester cannot tell which ones to
; trust once they are side by side in Blanton_Script/
; config.ttl Add SSD_RUNTIME / SSD_COUNT / USB_RUNTIME / USB_COUNT
; The SSD and USB stress durations were hard-coded in
; ScriptB (--runtime 86400 --passes 5 / 1); they are now
; declared in one place per site
; !! --runtime is the job's OVERALL limit, not per pass:
; qfx5252-stress-* stops at RUNTIME seconds whatever
; --passes says. RUNTIME 600 = a 10 minute stress,
; not 600 x COUNT. For a 24 h soak set RUNTIME 86400
; ScriptB Build the SSD / USB stress commands from those knobs
; sprintf2 cmd_ssd ... SSD_RUNTIME SSD_COUNT, and the same
; for USB; the old hard-coded lines are left commented out
; next to them
; =============================================================================
include "config.ttl"