gstack/ios-qa
Garry Tan f31aff1bc6
fix(ios-qa): /auth/sessions no longer hands raw bearer tokens to any local process
The loopback sessions list echoed live tokens — a harvest-and-replay
primitive for anything on the machine (same class as the /health token leak
fixed in v1.63). The list now returns a device-salted 16-hex token_id plus
metadata; the salt is shared with the attempts log so identifiers correlate.
/auth/revoke keeps the list→revoke workflow alive by accepting token_id
alongside the caller's own raw token and identity. saltedHash() is exported
from audit.ts and writeAttempt now reuses it (was inlined).

Integration tests pin raw-token absence, the id shape/metadata, and the
token_id revoke round-trip (verified RED against the leaking handler).

List fix ported from time-attack/gstack (GStack 2); token_id revoke is ours.

Co-authored-by: Sina Matian <sina@time-attack.dev>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-14 12:35:47 -07:00
..
daemon fix(ios-qa): /auth/sessions no longer hands raw bearer tokens to any local process 2026-08-14 12:35:47 -07:00
docs v1.43.0.0 feat: iOS device-farm (5 skills, Mac daemon, Tailscale) (#1574) 2026-05-21 16:09:26 -07:00
scripts fix(ios-qa): generate app-owned bridge accessors deterministically 2026-07-14 16:35:30 -07:00
templates fix(ios-qa): make SwiftUI device taps observable and reliable 2026-07-14 16:35:30 -07:00
SKILL.md v1.62.0.0 feat: plan-mode auto-select at the review scope gate (#2533) 2026-08-12 11:12:28 -07:00
SKILL.md.tmpl docs(ios-qa): document regeneration and device verification flow 2026-07-14 16:35:30 -07:00