rdmsm4x-changelog-20260911-2354-rtty-build508-release
RTTy 0.3.833 Build 508 built, gated (10/10), notarized, deployed to five of six fleet Macs, published to rtty.app, and moved to App Store Connect (Standard 508 uploaded, Delivery 2ea2b9e3…) version 0.3.833 with build 508; go-to-market analysis delivered. Session 2026-09-11 16:29 → 2026-09-11 23:54:15 EDT EDT, lead claude@rdmsm4x/rtty-c0 (Fable 5.1 oversight), EPIC-20260911-01.
Scope
Hosts: rdmsm4x (build, gates, ASC, site), rdmbair15m5 (canary), rdmbair13m5, rdmpw3265m, rdmpw3275m (deploys). jdmbair13m5 powered off — not deployed.
What changed (app, all on main, pushed to origin + fleet; tag v0.3.833-build508 = 0d1f257)
- Automatic appearance resolves dark to Space Blue; Dark stays neutral (1ddc39f, 024f1d4).
- Monitoring modes Automatic/Active/Passive; managed-network detection needs one sufficient signal; Tailscale never switches alone (9b49dfd, a3988d0, 7b01b26).
- Every latency chart contiguous at any probe cadence — ISSUE-20260905-25 resolved (46cc28f); flows band dense buckets, aligned plot, legend below, continuous axis, Live mode, helper grouping in hue shades (0630f23…4a53a70).
- Menu-bar chart kind Latency/Application flows (2e02184); themed menu-bar panel (ff4220e).
- Mac App Store build: real sandboxed ICMP echo, discovered targets use it (4d796f1…2b4c2e3); ITSAppUsesNonExemptEncryption on the App Store channel (f7e04af).
- Settings consolidated to five groups, 106 controls preserved (11b2728). Render-audit test 2722 s → 12 s under Rosetta (1ca6ead).
- LIB_REVISIONS accepts ECSSystem 1c0d059, ECSUI 325195a, ECSTerminal bb4020a (be75d71).
Files touched outside the repo
- ~/Library/MobileDevice/Provisioning Profiles/rtty-direct-developerid-0efc0851.provisionprofile (copy of the 507 embedded Developer ID profile, mode 644).
- ~/dev/_handoff/rtty-build508-20260911/release/build508/{artifacts,logs,receipts,tools} — archive, seven gate logs, five receipts, installer.
- ~/dev/_handoff/rtty-appstore-508-20260911/ — Standard RTTy.pkg (sha256 05fa3273…), validate/upload logs.
- Fleet tickets: EPIC-20260911-01, ISSUE-20260911-10 (resolved), FEAT-20260911-01/-02 (resolved), ISSUE-20260905-25 (resolved), INC-20260911-01 (open), DEC-20260911-01 (proposed), ISSUE-20260911-12/-13/-14/-16 (workers).
- ~/.secrets/global.env: the credential-vault hook appended three junk RESULT_SECRET lines (from a worker's "RESULT=measured" output); no secret content; Rich may delete them.
Commands run (representative)
qa_release.sh (7 runs, run 7 passed 22:33–22:41 EDT); deploy_build508_fleet.zsh per host; npm run deploy:cloudflare (rtty.app version 63ee241e…); altool validate/upload (Delivery 2ea2b9e3…, VALID); sudo route add -net 17.156.104.0/24 192.168.1.1 -mtu 1500 (non-persistent, ISSUE-20260910-09).
Verification evidence
Gate log: native RTTyTests 1022/1 skipped/0 fail, LatencyCore 283, PrivilegedCapture 71; Rosetta same; notarization fdb6fad0-73dd-4f20-b55d-6cf6d47e49e2 Accepted, stapled, spctl Notarized Developer ID; live menu bar 13 ms. Receipts: four hosts accepted with executable b9b13a8d…; hub rdmsm4x accepted 23:56:07 EDT (executable b9b13a8d…, rollback 507 armed) — five of six hosts on 508. rtty.app: live dark image sha c3e264ed… matches local. ASC after reload: version 0.3.833, build 0.3.833 (508), description 2951, keywords 100, notes 3302, 5 screenshots.
Backups / undo
Each host keeps /Applications/.RTTy.app.rollback-build507-0d1f257; the installer restores it on failure. Site: previous images in the session scratchpad and git history (b3e1c2d). ASC: previous 0.3.831 text is in docs/app-store/LISTING-DRAFT-0.3.831-20260910.md; build 506 remains selectable.
Outstanding owner actions (Rich)
- ASC: review the listing, upload/replace screenshots if desired, App Privacy, Pricing, Age Rating, EU trader status, then Add for Review (deliberately not clicked).
- Small Business Program enrolment before the first sale month.
- jdmbair13m5: power on, then run deploy_build508_fleet.zsh jdmbair13m5.
- Decide DEC-20260911-01 (launch model) — docs/business/DECISION-MEMO-2026-09-11.md.
- Delete the three RESULT_SECRET junk lines from ~/.secrets/global.env.