Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
bb45ec2
feat(web): Agent Inbox UI — the Claude Design hand-back over the real…
zaridan Jul 12, 2026
55105d6
feat(web): persistent app shell — folder rail across routes + convers…
zaridan Jul 12, 2026
e4c18f8
chore(lint): extend the ds-verbatim override for style/useTemplate (A…
zaridan Jul 12, 2026
981fbfa
fix(web): explicit aria-hidden on the decorative folder icon
zaridan Jul 12, 2026
6a5abcd
docs: UI fidelity mandate — the Claude Design prototype is the pixel …
zaridan Jul 12, 2026
6ae80f2
feat(web): global UI infrastructure — toasts, dark theme, shortcuts o…
zaridan Jul 12, 2026
0d70c6d
feat(web): shell chrome + the prototype's seven folders (HT-23 checkl…
zaridan Jul 12, 2026
e8f3a71
feat(web): inbox list fidelity — column band, sort, bulk actions, in-…
zaridan Jul 12, 2026
b93b3c4
feat(web): conversation view fidelity — full toolbar, newest-first th…
zaridan Jul 12, 2026
ab32bb2
feat(web): summoned composer + full keyboard layer (HT-23 checklist §…
zaridan Jul 12, 2026
fcaf37e
fix(web): shell layout to match the design — Manage in the left clust…
zaridan Jul 13, 2026
d76cb43
fix(web): no default row highlight in the inbox table (HT-23)
zaridan Jul 13, 2026
003c17b
fix(web): Manage gets a chevron; Settings icon becomes a cog (HT-23)
zaridan Jul 13, 2026
32156da
fix(web): conversation view fidelity pass — toolbar, subject row, con…
zaridan Jul 13, 2026
9a348d1
fix(web): remaining-screens fidelity pass + a real 401 crash bug (HT-23)
zaridan Jul 13, 2026
8fa1cbf
fix(web): rename error-boundary component off the reserved 'Error' na…
zaridan Jul 13, 2026
be0cc6f
fix(web): address CodeRabbit review — prod token guard, fetch timeout…
zaridan Jul 13, 2026
30c0c27
fix(web): route 401 to AuthFailure via error.digest, not message (HT-23)
zaridan Jul 13, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,12 @@ jobs:
- name: Typecheck
run: npm run typecheck

- name: Typecheck web
run: npm run -w web typecheck

- name: Build web
run: npm run -w web build

- name: Lint
run: npm run lint

Expand Down
4 changes: 4 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,10 @@ Adapted in our own words from Andrej Karpathy's observations on LLM coding pitfa

**Agents** are human support staff. **Assistants** are AI actors. Never conflate them — in schema, code, docs, or prose.

## UI fidelity (TJ, 2026-07-12)

The Agent Inbox UI's pixel source of truth is the Claude Design prototype — `Helpthread App.dc.html` in the "Helpthread Agent Inbox Design" project (the "Helpthread" design-system project carries the same components). **The dogfood site must match it exactly — the whole designed surface, not a subset.** Design-system files under `web/src/components/ds/` stay verbatim copies; improvements go upstream in the design project first. Any deviation — visual, copy, or interaction — requires TJ's explicit sign-off. Remaining gaps are tracked as the fidelity checklist on [HT-23](https://resonantiq.atlassian.net/browse/HT-23); the ticket is not done until the checklist is.

## Ecosystem

- **This repo**: engineering truth — charter, specs, ADRs, code.
Expand Down
18 changes: 18 additions & 0 deletions biome.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,24 @@
"preset": "recommended"
}
},
"overrides": [
{
"includes": ["web/src/components/ds/**"],
"linter": {
"rules": {
"correctness": { "noUnusedImports": "off" },
"complexity": { "useOptionalChain": "off" },
"style": { "useTemplate": "off" },
"suspicious": { "noExplicitAny": "off" },
"a11y": {
"noSvgWithoutTitle": "off",
"useKeyWithClickEvents": "off",
"noStaticElementInteractions": "off"
}
}
}
}
],
"javascript": {
"formatter": {
"quoteStyle": "single",
Expand Down
Loading
Loading