Jesse_Chen and Claude Opus 5.5
75166802d8
docs(tasks): staging re-test of the home first-load fix
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-01 01:57:16 +08:00
Jesse_Chen and Claude Opus 5.5
ca1353ebe4
docs(home): first-load fix records — stylesheet-blocked early reads (BUG-1127)
...
Independent Staging Quality Gate / validate (push) Successful in 12m58s
Independent Staging Quality Gate / publish (push) Successful in 3m32s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-01 01:36:37 +08:00
Jesse_Chen and Claude Opus 5.5
c2265dabb2
fix(home): early boot reads load as an async data: script so stylesheets no longer hold them back (BUG-1127)
...
An inline classic script after the stylesheets waited for them to download;
on staging the reads left at 2.4-3.1 s. Measurement script gains
--css-delay and --ua iphone.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-01 01:36:35 +08:00
Jesse_Chen and Claude Opus 5.5
6e2f0af5a2
docs(tasks): home first-load fix — early reads blocked behind stylesheets (BUG-1127)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-01 01:28:05 +08:00
Jesse_Chen and Claude Opus 5.5
e600cff55f
docs(tasks): Claude acceptance of the home first-load round
...
Independent Staging Quality Gate / validate (push) Successful in 17m54s
Independent Staging Quality Gate / publish (push) Successful in 4m6s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-01 01:02:56 +08:00
Jesse_Chen and Claude Opus 5.5
856f611fcf
docs(home): records for the home first-load round (BUG-1127..1130); measurement script lint fix
...
Progress with before/after, T4 evidence (supportsImmutableAssets has no
effect under self-hosted standalone) in BLOCKED.md, device checklist,
changelog, board row to 待验收.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-01 00:57:52 +08:00
Jesse_Chen and Claude Opus 5.5
e2c3791fad
fix(home): onboarding slot uses a module-level lazy (no component chosen during render); warm-snapshot tests load the city table like the boot does
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-01 00:45:30 +08:00
Jesse_Chen and Claude Opus 5.5
31d0737897
chore(home): measurement script for the cold home boot (TASK-home-first-load §7)
...
Not part of CI.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-01 00:40:17 +08:00
Jesse_Chen and Claude Opus 5.5
8112f62b51
perf(fonts): heading serif slices served from public/ under content-hashed names, cached for good (BUG-1128)
...
Bundled media carry Next's per-deploy ?dpl= and were downloaded again after
every release. Bytes unchanged; /fonts/serif-sc/* is immutable. Overturns the
serif-headings contract line "bundled by Next, not served from public/"
per TASK-home-first-load-20260930 decision 2.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-01 00:40:11 +08:00
Jesse_Chen and Claude Opus 5.5
ed4f513383
test(home): storage stub matches HomeBootstrapStorage
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-01 00:34:03 +08:00
Jesse_Chen and Claude Opus 5.5
b743b16b00
perf(home): city table, sealed-holdout JSON and the onboarding shell leave the first screen (BUG-1130)
...
The China city table loads on demand; old code-only profiles load it before
the people list settles, so they resolve exactly as before. The gate keeps
the six holdout fields it reads, pinned to the JSON by a test. The
onboarding shell is preloaded before reveal only when the profile is
incomplete.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-01 00:31:53 +08:00
Jesse_Chen and Claude Opus 5.5
2fd1e2b05d
perf(home): the HTML sends the cold-boot reads before the bundle runs (BUG-1127)
...
An inline classic script on / starts account, people list, sessions and
models; the boot takes each once from one global, falls back to the normal
request on failure, drops another person's or another account's list, and
trusts nothing older than 30s. Paths and init come from one shared module.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-01 00:19:56 +08:00
Jesse_Chen and Claude Opus 5.5
ab656e0dea
perf(home): cold boot reads account, people list, sessions and entry summary in one round (BUG-1127)
...
The sessions read guesses the remembered person and is dropped when the
people list settles on another; a first sign-in no longer re-reads the
people list it just fetched.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-01 00:15:12 +08:00
Jesse_Chen and Claude Opus 5.5
80ea7b0bc1
fix(loading): home loading screen title uses the body face (BUG-1129)
...
The screen paints before the bundle runs; the serif title pulled 3-4 font
slices onto the critical path next to the first-screen JS.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-01 00:06:51 +08:00
Jesse_Chen and Claude Opus 5.5
6a74a23093
docs(tasks): Claude acceptance of varga-resolution review branch (P0 opening 42501) and fix brief (BUG-1131 reserved)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-01 00:02:18 +08:00
Jesse_Chen and Claude Opus 5.5
5ea36d0f21
docs(tasks): home first load — add first-screen JS diet and early boot requests (BUG-1130, BUG-1127)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-01 00:00:55 +08:00
Jesse_Chen and Claude Opus 5.5
1810f1a81f
docs(tasks): home first load — serial boot requests, per-deploy cache loss, serif on the loading screen (BUG-1127..1129)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 23:51:42 +08:00
Jesse_Chen and Claude Opus 5.5
d87ec44aab
fix(reports): switching editions replaces the reader instead of stacking it (BUG-1126)
...
Independent Staging Quality Gate / validate (push) Successful in 14m44s
Independent Staging Quality Gate / publish (push) Successful in 3m32s
The reader and the fact tables were siblings keyed by the same language, so
React left the first edition's reader on screen and appended the new one.
Distinct keys per sibling; whole-page switch test with real engine fact tables.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 17:13:28 +08:00
Jesse_Chen and Claude Opus 5.5
5604c11bb4
docs(tasks): report language switch leaves the old edition on screen (BUG-1126)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 16:36:18 +08:00
Jesse_Chen and Claude Opus 5.5
da3ed2f3ab
chore(polish): integrate toasts, reports paging, loading motion; login centring floor for short windows; load-more uses notifyError; round records
...
Independent Staging Quality Gate / validate (push) Successful in 18m44s
Independent Staging Quality Gate / publish (push) Successful in 3m34s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 13:55:02 +08:00
Jesse_Chen and Claude Opus 5.5
3e0c615fd8
feat(ui): action results and errors are top-centre toasts, never inline bars; login card centred (BUG-1121, BUG-1122)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 13:46:01 +08:00
Jesse_Chen and Claude Opus 5.5
d327ca9c95
feat(loading): chart wait lights houses up in order, people archive uses the orbit, today's line no longer jumps in after reveal (BUG-1125)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 13:45:55 +08:00
Jesse_Chen and Claude Opus 5.5
9a616107c2
feat(reports): 我的报告 enters on a static shell and joins the prefetch; 过往的报告 pages 10 at a time with 加载更多 (BUG-1123, BUG-1124)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 13:45:44 +08:00
Jesse_Chen and Claude Opus 5.5
90b1b6fba9
fix(chart): symbol bubble no longer flickers (global tooltip rule switched the stage's pointer events off); rounded chart tables (BUG-1120)
...
Independent Staging Quality Gate / validate (push) Successful in 13m17s
Independent Staging Quality Gate / publish (push) Successful in 3m41s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 11:19:38 +08:00
Jesse_Chen and Claude Opus 5.5
3e29b697db
fix(settings): gender is set only in the people archive; drop the 个人资料 duplicate (BUG-1119)
...
Independent Staging Quality Gate / publish (push) Canceled after 0s
Independent Staging Quality Gate / validate (push) Canceled after 7m59s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 11:11:47 +08:00
Jesse_Chen and Claude Opus 5.5
3177ffe61d
fix(account): deletion freeze trigger reads amount via jsonb so shared inserts don't fail; list the new tables (BUG-1118)
...
Independent Staging Quality Gate / validate (push) Successful in 12m54s
Independent Staging Quality Gate / publish (push) Successful in 3m31s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 10:15:06 +08:00
Jesse_Chen and Claude Opus 5.5
2f6581fff3
docs(tasks): combined progress, lawyer list and device checklist for the compliance round
...
Independent Staging Quality Gate / validate (push) Failing after 11m35s
Independent Staging Quality Gate / publish (push) Skipped
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 09:54:35 +08:00
Jesse_Chen and Claude Opus 5.5
4c40b4152d
test(security): the capability audit lists admin/reply-quality
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 09:42:11 +08:00
Jesse_Chen and Claude Opus 5.5
12e315a9bb
feat(reply-quality): 👎 keeps a snapshot of the turn; admin 对话质量记录
...
A 👎 now saves, server side, the rated turn plus the context window the
model read for it (reconstructed from the stored session with the same
consultationHistoryWindow the consult route uses), model and run facts.
👍 is only counted. Switching to 👍 or clearing deletes the snapshot.
Bodies are blanked after 90 days; the row cascades on session delete
and on account deletion.
- Optional 不满意原因 panel under the answer after a 👎 (five reasons,
200-char note, "会把这一轮对话发给我们排查").
- Admin 对话质量记录: 👍 /👎 stats by day and model, list without text,
audited snapshot open, 处理状态 + note (support.quality.read/write).
- Privacy draft: what a 👎 keeps, why, 90 days, deletion.
- Migration 20260930050000 is add-only; set_reply_rating() replaced with
the same signature.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 09:42:11 +08:00
Jesse_Chen and Claude Opus 5.5
c1b4868cd9
test(security): the capability audit lists the new compliance pages (terms, privacy, admin feedback, admin account deletions)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 09:42:11 +08:00
Jesse_Chen and Claude Opus 5.5
4f3d8d7c62
feat(compliance): content moderation on model input and output — local lexicon, Aliyun adapter, free completion, admin log
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 09:42:11 +08:00
Jesse_Chen and Claude Opus 5.5
e742da268d
feat(account): keep complaints on deletion, clear their typed-in contact; say so in the privacy draft
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 09:42:11 +08:00
Jesse_Chen and Claude Opus 5.5
96adbce3a9
feat(account): self-service deletion with a 7-day cooling-off period
...
Request signs out everywhere and freezes paid routes (423 + DB triggers);
signing in within 7 days shows the pending gate with 撤销注销. A periodic
idempotent worker purges personal content afterwards and keeps finance
rows against a tombstoned identity. Read-only admin list.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 09:42:11 +08:00
Jesse_Chen and Claude Opus 5.5
3c8123d912
feat(support): in-app feedback & complaints with admin handling; persist reply ratings
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 09:42:11 +08:00
Jesse_Chen and Claude Opus 5.5
8f58eccecf
feat(legal): terms and privacy pages, login consent recorded per version, re-consent gate (draft text, placeholders)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 09:42:11 +08:00
Jesse_Chen and Claude Opus 5.5
788a84a4c0
chore(legal): one place for the operator's name and contact channels (placeholders)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 09:42:04 +08:00
Jesse_Chen and Claude Fable 5.1
f898df5505
docs(tasks): implementation brief for varga-resolution (chart-type) rectification delivery (BUG-1115..1117 reserved)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-09-30 09:41:38 +08:00
Jesse_Chen and Claude Fable 5.1
c2c5140d47
docs(tasks): Claude acceptance for the varga-resolution research (BUG-1105 resolved, research stage)
...
Independent Staging Quality Gate / validate (push) Successful in 11m52s
Independent Staging Quality Gate / publish (push) Successful in 3m35s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-09-30 09:35:31 +08:00
Jesse_Chen and Claude Fable 5.1
08ee688ab6
chore(research): remove the 08:49 partial varga-resolution script and artifacts superseded by the complete study (BUG-1105)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-09-30 09:34:51 +08:00
Jesse_Chen and Claude Fable 5.1
52bfbb2ac5
research(rectification): varga-resolution M1–M3 and robustness on v5 — segment posterior, segment-aware probe order, domain-targeted vargas (BUG-1105)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-09-30 09:34:36 +08:00
Jesse_Chen and Claude Fable 5.1
f798366f89
research(rectification): varga-resolution M0 — per-minute ascendant segments and six-probe interval chart types on v5 (BUG-1105)
...
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-09-30 09:34:08 +08:00
jesse-ux and Claude Code
3263db0f36
Merge latest staging before publishing BUG-1105 research
...
Independent Staging Quality Gate / validate (push) Successful in 12m39s
Independent Staging Quality Gate / publish (push) Successful in 3m34s
Co-Authored-By: Claude Code <noreply@anthropic.com >
2026-09-30 08:50:03 +08:00
jesse-ux and Claude Code
bedb4d7bd1
research(rectification): archive partial varga-resolution study (BUG-1105)
...
Archive research scripts, regression tests, M1 results and safe M0 smoke. Keep the incomplete study and failing quick gate explicit. Exclude full M0 JSON, raw logs and unrelated oracle newline changes.
Co-Authored-By: Claude Code <noreply@anthropic.com >
2026-09-30 08:49:54 +08:00
Jesse_Chen and Claude Opus 5.5
5208f19b76
docs(tasks): verification for the 09-30 01:00 feedback round
...
Independent Staging Quality Gate / validate (push) Successful in 12m57s
Independent Staging Quality Gate / publish (push) Successful in 3m27s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 08:23:36 +08:00
Jesse_Chen and Claude Opus 5.5
ce5054c003
docs: changelog, progress and device checklist for the 09-30 01:00 feedback (BUG-1109..1114)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 01:26:24 +08:00
Jesse_Chen and Claude Opus 5.5
4461648feb
feat(home): daily line from a fixed sentence library; prefetch it so landing on home never swaps text (BUG-1109, BUG-1110)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 01:26:06 +08:00
Jesse_Chen and Claude Opus 5.5
921992a492
fix(home,chart,ephemeris): drop the unfinished-rectification hint, full chart-type captions, orbit instead of 还没拿到, constellation icon (BUG-1111..1114)
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 01:11:47 +08:00
Jesse_Chen and Claude Opus 5.5
82db6373d6
docs(tasks): verification for the export sheet redesign
...
Independent Staging Quality Gate / validate (push) Successful in 12m13s
Independent Staging Quality Gate / publish (push) Successful in 3m46s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 00:47:28 +08:00
Jesse_Chen and Claude Opus 5.5
7950ae93d3
feat(reports): redesign the export sheet — edition, whole or chosen chapters, size on the button
...
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 00:44:28 +08:00
Jesse_Chen and Claude Opus 5.5
94fbf37674
fix(reports): one opening screen, one-row phone bar, roomier export sheet, keep the chapter across editions (BUG-1106..1108)
...
Independent Staging Quality Gate / publish (push) Canceled after 0s
Independent Staging Quality Gate / validate (push) Canceled after 9m19s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-09-30 00:38:17 +08:00