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
This commit is contained in:
gib committed 2026-11-02 14:45:34 -05:00
1 parent 4dc4e57dac
commit edc4b88990
35 files changed
+1162 -144

No files matched your search

+8 -1
View File
@@ -7,6 +7,8 @@ enum Route: Hashable, Sendable {
case newThread
/// Every thread in Recent, past the feed's first 10.
case recent
/// Finished threads snoozed for later.
case snoozed
/// The status overview, and from it one host or the notifications page.
case status
case host(id: String)
@@ -20,7 +22,8 @@ enum Route: Hashable, Sendable {
static let scheme = "wristcode"
/// `wristcode://thread/<hostId>/<threadId>`, `wristcode://new`, `wristcode://recent`, `wristcode://status`,
/// `wristcode://thread/<hostId>/<threadId>`, `wristcode://new`, `wristcode://recent`, `wristcode://snoozed`,
/// `wristcode://status`,
/// `wristcode://host/<hostId>`, `wristcode://notifications`, `wristcode://threads`,
/// `wristcode://projects/<hostId>`, `wristcode://project/<hostId>/<projectId>` or `wristcode://search?q=<query>`.
var url: URL {
@@ -37,6 +40,8 @@ enum Route: Hashable, Sendable {
components.host = "new"
case .recent:
components.host = "recent"
case .snoozed:
components.host = "snoozed"
case .status:
components.host = "status"
case let .host(id):
@@ -72,6 +77,8 @@ enum Route: Hashable, Sendable {
self = .newThread
case "recent":
self = .recent
case "snoozed":
self = .snoozed
case "status":
self = .status
case "host" where parts.count == 1 && !parts[0].isEmpty: