Commit Graph
13 Commits
Author SHA1 Message Date
gib edc4b88990 Watch: snooze finished threads, name the files a file approval would edit, Settle on finished notifications, an instant launch from the saved feed, plain Loading states, and no more cancelled errors
Gateway / check (push) Successful in 9s
Gateway / image (push) Successful in 22s
Gateway: an approval push for a file change says which files it would edit
2026-11-02 14:45:34 -05:00
gib d10df56cc9 Watch: the Subagents section on the thread screen collapses behind a header with the count and how many wait or work, and opens on its own when one waits 2026-11-02 14:12:45 -05:00
gib bfcbb69550 Watch: what changed on Recent cards and the thread screen, search in All threads, a switching complication with Allow and Deny in the Smart Stack, and question options on notifications 2026-11-02 13:56:10 -05:00
gib d916bfbab5 Watch: activity line on working cards, All threads browsing, a thread's subagents, Load earlier, and markdown messages 2026-11-02 13:10:02 -05:00
gib 6bc9cac6ca Watch: notification switches, a model list and Ask before acting on new threads, and Ask before acting on a thread 2026-11-02 12:10:48 -05:00
gib a5222e14e8 Watch: keep Recent past 10 behind an N more row with a full list, and settle all in one call 2026-11-01 22:32:19 -05:00
gib cf8995e63f Watch: show subagent requests on the parent's card, and settle threads by swipe, Settle all and the thread screen 2026-11-01 20:26:38 -05:00
gib 7ca0362745 Watch: status, environment and notifications screens
A gear on the feed opens a status overview that leads with what is wrong:
offline hosts, hosts on a fallback route, tokens expiring within 7 days,
and push problems, with healthy hosts folded into one row. Each host opens
its route ladder with Reconnect. The notifications page shows registration,
the last push, Send test and Unpair. Demo mode gains a Laptop on its VPN
fallback, and snapshot tests render the three screens.
2026-11-01 15:16:18 -05:00
gibandClaude Opus 5.5 27469dbc77 Watch: share with the complication through a Keychain group, not an App Group
Automatic signing with an App Store Connect API key registers bundle IDs and
profiles but cannot create or assign App Groups, so the archive failed. A
keychain-access-groups entry needs no portal setup. The demo flag and last
summary move into the same group; tests cover the round trip and the
migration of a pre-complication token.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-01 11:15:31 -05:00
gibandClaude Opus 5.5 67992dbf43 Watch: snapshot tests render the complication and multi-select screenshots
ImageRenderer draws the real views with demo data, since the watch simulator
is not drivable here. README covers the widget target and how to add it.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-01 11:06:38 -05:00
gibandClaude Opus 5.5 0994fd7d5a Watch: waiting-count complication and multi-select questions
A WidgetKit extension (accessoryCircular, Rectangular, Inline, Corner) shows
GET /v1/summary. The device token moves to the App Group's Keychain access
group on launch so the extension can read it without re-pairing; the app
reloads the timeline when its feed counts change and on notifications.
Multi-select questions toggle options and send an array of values.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-01 11:06:38 -05:00
gibandClaude Opus 5.5 7ad1045be4 Watch: treat an empty threadId in a push as no thread
The gateway sends threadId "" on host notifications; tapping one now opens
the feed instead of a thread that does not exist.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-01 02:35:58 -05:00
gibandClaude Opus 5.5 bdfb79b891 Watch app MVP: XcodeGen project, gateway client, pair, feed, thread, new thread, notifications
SwiftUI watch-only app in watch/, generated by XcodeGen. Codable models mirror
gateway/src/contract.ts, with lenient string enums so new phases or decisions
still decode. A DemoGateway serves fixtures from the docs/api.md examples for
previews and demo mode. Swift Testing covers decoding the documented JSON,
request encoding, notification action parsing and the small view helpers.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-01 02:33:15 -05:00