diff options
| author | Christian Cleberg <[email protected]> | 2026-07-15 23:36:36 -0500 |
|---|---|---|
| committer | Christian Cleberg <[email protected]> | 2026-07-15 23:36:36 -0500 |
| commit | 9e6d3d5f16c23ada226477f3ed1e2b957b4d95f6 (patch) | |
| tree | 6e50ea2a6125db337dcb005f2ae881a4a9038fe2 /Hutch | |
| parent | 0ad430c79eedac4140680e3aaca238969ac711b1 (diff) | |
| download | hutch-9e6d3d5f16c23ada226477f3ed1e2b957b4d95f6.tar.gz hutch-9e6d3d5f16c23ada226477f3ed1e2b957b4d95f6.tar.bz2 hutch-9e6d3d5f16c23ada226477f3ed1e2b957b4d95f6.zip | |
docs: record the API traps and Swift 6 blockers
Adds a SourceHut API traps section for the two things that cost this work real
time and that the schema will not tell you:
- Thread.updated is the root email's insert time, not thread activity. It never
advances on a reply, while the schema describes threads as ordered "most
recently bumped". Every inbox surface trusted it.
- The schema dumps in Docs/API omit inputFields and enumValues, so they answer
"what shape is this mutation's input" and "what does this enum accept" with an
empty array rather than an error. Both questions have to go to the real SDL.
Phase 3 picks up the Swift 6 language mode blockers and the three view models
still reading client.responseCache directly, which was previously buried as a
footnote inside completed Phase 1.
Also corrects the Phase 0 record. It credited eff81f3 with fixing an
Identifiable collision between same-subject threads. There is no such collision
to fix: deduplicateThreads merges those threads before anything renders, and the
test that motivated the change built its summaries by hand and skipped that
step. The change stands on clarity; the claimed bug was not real.
Diffstat (limited to 'Hutch')
0 files changed, 0 insertions, 0 deletions
