Frank Song
70b019f710
feat: let extension skins declare base scheme
2026-06-30 18:17:40 +08:00
Frank Song
eff01bf322
Gate settled anchor fallbacks by raw index
2026-06-30 08:00:54 +08:00
Frank Song and Paperclip
afbb3e5010
Fix session stream resume after live stream end
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-29 19:52:02 +00:00
Frank Song and Paperclip
47d8ac94d3
Harden connection flapping aftercare
...
Keep sidebar retries boot-scoped, preserve immediate source-change cache rebuilds, and tighten session stream ownership before closing duplicate SSE sockets.
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-29 19:52:02 +00:00
Frank Song
cbb644da69
Reduce connection lost flapping under large session state
2026-06-29 19:52:02 +00:00
Frank Song
7f98952db0
test: harden anchor fallback harness
2026-06-29 19:37:37 +00:00
Frank Song
7cdcadcbc4
test: lock anchor fallback render ownership
2026-06-29 19:37:37 +00:00
Frank Song and Paperclip
fbb1e9567c
test: align new chat guard static coverage
...
Update the older #1432 static regression to assert the extracted reusable-empty helper owns the message-count and in-flight checks, while both New Chat entry points call the helper. This keeps the test aligned with the shared guard introduced in PR #5206 .
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-29 18:38:25 +00:00
Frank Song
28c2c37c1c
Fix new chat empty-session reuse guard
2026-06-29 18:38:25 +00:00
Frank Song and Paperclip
058372c15f
Preserve empty anchor tool args in parity helper
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-29 05:35:03 +00:00
Frank Song and Paperclip
e670320337
Tighten anchor runtime journal parity test
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-29 05:35:03 +00:00
Frank Song
e1bf1122a7
Test anchor runtime journal parity
2026-06-29 05:35:03 +00:00
Frank Song and Paperclip
73ff1cd53b
Merge origin/master into anchor fallback audit
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-28 17:13:55 +08:00
Frank Song and Paperclip
2ef838be8c
test(anchor): widen JS regex extraction guard
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-28 17:05:16 +08:00
Frank Song and Paperclip
767285f21f
Merge origin/master into anchor fallback audit
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-28 17:02:52 +08:00
Frank Song and Paperclip
f786a70887
Merge origin/master into anchor fallback audit
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-28 16:41:42 +08:00
Frank Song and Paperclip
5b96da8c1d
test(anchor): locate JS body after params
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-28 16:11:21 +08:00
Frank Song and Paperclip
a86d2d2060
Merge origin/master into anchor fallback audit
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-28 16:01:58 +08:00
Frank Song and Paperclip
51a0bee188
Merge origin/master into anchor fallback audit
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-28 15:40:48 +08:00
Frank Song and Paperclip
770d877467
test(anchor): harden JS helper extraction
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-28 15:32:45 +08:00
Frank Song and Paperclip
90fd37dbd3
Merge origin/master into anchor fallback audit
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-28 15:21:55 +08:00
Frank Song and Paperclip
9c0eecfbe9
test(anchor): include node stderr in behavior guard failures
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-28 15:03:19 +08:00
Frank Song and Paperclip
0f41d01d0f
Merge origin/master into anchor fallback audit
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-28 15:02:02 +08:00
Frank Song and Paperclip
02a8582711
test(anchor): skip node behavior check when node missing
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-28 14:32:22 +08:00
Frank Song and Paperclip
63d69a0c5e
Merge origin/master into anchor fallback audit
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-28 14:22:50 +08:00
Frank Song and Paperclip
ce4466bbf2
test(anchor): handle template interpolation in fallback guards
...
Teach the lightweight JavaScript extractor used by the anchor ownership tests to skip template literals with nested interpolation, so braces inside ${...} expressions cannot truncate the inspected function body.
Add a synthetic regression for nested template literals before the ownership-order assertions exercise static/ui.js.
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-28 13:31:27 +08:00
Frank Song and Paperclip
c5727846e0
Merge origin/master into anchor fallback audit
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-28 13:30:15 +08:00
Frank Song and Paperclip
3c27c697c1
Merge origin/master into anchor fallback audit
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-28 13:21:35 +08:00
Frank Song and Paperclip
ddb8ddd811
Merge current master into extension gallery source permissions
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-28 13:05:12 +08:00
Frank Song and Paperclip
d44c5a2f7b
Merge origin/master into anchor fallback audit
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-28 13:02:12 +08:00
Frank Song
06465bbd91
Improve extension gallery source and permissions display
2026-06-28 12:44:57 +08:00
Frank Song and Paperclip
2587eedb54
test(anchor): harden fallback ownership guards
...
Defer fixture file reads to test-time helpers so missing assets fail with clear assertion messages instead of import-time collection errors.
Use one Python-side function extractor for both source-structure checks and the Node behavior check, and skip JavaScript strings/comments while matching delimiters so braces inside literals do not truncate the inspected function body.
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-28 12:14:18 +08:00
Frank Song
571db9d81e
Document anchor fallback ownership
2026-06-28 12:09:12 +08:00
Frank Song and Paperclip
33e95277ca
Honor preserved extension diagnostics refresh failures
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-27 05:13:10 +00:00
Frank Song and Paperclip
71dd4a6ab8
Polish extension sidecar diagnostics refresh
...
Keep the Diagnostics tab content visible while status refreshes on repeat visits, and reject malformed or far-future sidecar runtime timestamps before rendering relative age text.
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-27 05:12:50 +00:00
Frank Song
d2eedd85f8
Show extension sidecar runtime status
2026-06-27 05:12:50 +00:00
Frank Song and Paperclip
d68760b288
Prove continuation index completeness before trusting it
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-26 16:27:40 +00:00
Frank Song and Paperclip
eda4c50cf5
Handle stale compression continuation index fallback
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-26 16:27:40 +00:00
Frank Song
0f87757a47
Use session index for compression continuations
2026-06-26 16:27:40 +00:00
Frank Song and Paperclip
ecf2eda433
Update pending user reattach regression
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-26 11:12:50 +00:00
Frank Song and Paperclip
2d21eff780
Fix pending user dedupe current-turn scope
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-26 11:12:50 +00:00
Frank Song
540d36d0b0
Fix inflight tail merge harness dependency
2026-06-26 11:12:50 +00:00
Frank Song
24b6e87aea
Scope active user turn dedupe to current turn
2026-06-26 11:12:50 +00:00
Frank Song
035a2609f1
Harden active user turn dedupe tests
2026-06-26 11:12:50 +00:00
Frank Song
709f133d76
Fix active user turn replay dedupe
2026-06-26 11:12:50 +00:00
Frank Song and Paperclip
f15f178b5e
Guard state db prefix keys with tool calls
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-26 10:43:28 +00:00
Frank Song and Paperclip
7a38b09af1
Fix lint for state db prefix key guard
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-26 10:43:28 +00:00
Frank Song and Paperclip
fd81b6cb08
Guard state db tail reads by prefix keys
...
Co-Authored-By: Paperclip <noreply@paperclip.ing >
2026-06-26 10:43:28 +00:00
Frank Song
dc9d6275cb
Address state db tail-window coordinate guards
2026-06-26 10:43:27 +00:00
Frank Song
91f7e7f816
Address state db tail window review
2026-06-26 10:43:27 +00:00
Frank Song
8bd31891e3
Bound state.db reads for paginated session loads
2026-06-26 10:43:27 +00:00
Frank Song
5b0e409d3b
Handle equal-timestamp tool-call tail ordering
2026-06-26 02:18:18 +00:00
Frank Song
7e8834d8ca
Fix tool-call tail ordering in session merge
2026-06-26 02:18:18 +00:00
Frank Song
fda5a241b2
Fix sidebar reconciliation review issues
2026-06-26 00:36:15 +00:00
Frank Song
0e2214b6bd
Fix WebUI state.db session reconciliation
2026-06-26 00:34:58 +00:00
Frank Song
6079b7ba24
Address compaction marker and redaction review
2026-06-26 00:12:09 +00:00
Frank Song
9f0864ea82
Fix compaction marker writeback and code redaction
2026-06-26 00:12:09 +00:00
Frank Song
8b1f8fe5ca
Add final stream writeback diagnostics
2026-06-25 16:42:53 +00:00
Frank Song
7d69b80012
Avoid repeated session loads in live usage metering
2026-06-25 16:12:18 +00:00
Frank Song
3fd88903b0
Remove contributor changelog entry
2026-06-25 22:55:27 +08:00
Frank Song
3bae596ae8
Reduce session index global lock window
2026-06-25 22:02:34 +08:00
Frank Song
5f17ba55ed
Fix gallery-installed extension activation
2026-06-25 07:10:17 +00:00
Frank Song
2aaad7a282
Fix final answer reasoning echo
2026-06-24 15:29:25 +08:00
Frank Song
cafeda63ca
Preserve processed Worklog duration during message merges
2026-06-24 11:32:27 +08:00
Frank Song
f653b1b8d9
feat: allow live worklog summary collapse
2026-06-23 23:22:16 +08:00
Frank Song
4c8e88ab2d
fix: dedupe live compact worklog process prose
2026-06-23 23:03:04 +08:00
Frank Song
1269289d01
fix: guard live worklog scroll rebuilds
2026-06-23 23:00:32 +08:00
Frank Song
a4470bd30c
Deduplicate live progress reasoning echoes
2026-06-23 12:51:16 +08:00
Frank Song
4bb6fd132f
Drop contributor changelog entry
2026-06-23 11:52:08 +08:00
Frank Song
61a7881056
Preserve scroll across live Worklog rebuilds
2026-06-23 11:42:36 +08:00
Frank Song
0567b056c0
fix(compression): guard state replay after compacted anchors
2026-06-22 18:37:05 +00:00
Frank Song
87ab74d1b9
fix(ui): preserve thinking detail scroll on rebuild
2026-06-23 00:11:51 +08:00
Frank Song
fce927d5ac
Fix pre-session toolsets staging
2026-06-19 18:35:04 +00:00
Frank Song
36e992415b
Fix post-start attach resilience for #4481
2026-06-19 17:51:36 +08:00
Frank Song
531c5787c6
fix: refine context reload fallback guard
2026-06-19 00:05:52 +08:00
Frank Song
9f174f6cc3
test: update session context fallback guard
2026-06-18 23:19:58 +08:00
Frank Song
f9d6b127e3
fix: preserve large context window on session reload
2026-06-18 23:13:19 +08:00
Frank Song
409fb59760
Add assistant turn anchor renderer snapshot adapter
2026-06-14 02:03:45 +08:00
Frank Song
0fdcd00858
Fix PWA final answer scroll refresh
2026-06-14 01:46:04 +08:00
Frank Song
c52c832d05
Add assistant turn anchor dual-run reconciler
2026-06-14 01:04:29 +08:00
Frank Song
aa96bc52bc
Add assistant turn anchor live shadow feed
2026-06-13 16:26:52 +08:00
Frank Song
59c2ccd9cf
feat(anchor): project activity scene rows
2026-06-13 13:23:27 +08:00
Frank Song
b990bd09dd
feat(anchor): project settled final answer through anchor
2026-06-13 13:23:15 +08:00
Frank Song
9f0e76c182
Preserve worklog detail disclosure state
2026-06-13 07:43:12 +08:00
Frank Song
d516f9dd00
fix(anchor): harden registry contract before wiring
2026-06-13 00:44:26 +08:00
Frank Song
53051ad4a3
fix(anchor): harden registry review findings
2026-06-12 16:15:09 +08:00
Frank Song
65cb2a8b46
feat(anchor): add shadow source registry harness
2026-06-12 15:52:28 +08:00
Frank Song
acd9d2e6f4
fix(anchor): carry normalizer hardening into registry slice
2026-06-12 15:52:28 +08:00
Frank Song
56a89ef11e
feat(anchor): add inert turn registry skeleton
2026-06-12 15:52:28 +08:00
Frank Song
d701828d72
fix(anchor): harden normalizer identity handling
2026-06-12 13:57:54 +08:00
Frank Song
2abff38ee1
fix(anchor): harden normalizer payload shaping
2026-06-12 13:57:54 +08:00
Frank Song
36123628d5
feat(anchor): add assistant turn source normalizer
2026-06-12 13:57:54 +08:00
Frank Song
02e72163a6
Fix tool-limit terminal failure annotation
2026-06-12 10:25:18 +08:00
Frank Song
136568fe81
fix(streaming): tighten tool limit terminal guards
2026-06-12 10:03:31 +08:00
Frank Song
08ba5a6676
Fix tool-limit terminal detection
2026-06-12 10:03:31 +08:00
Frank Song
ec23dac922
Handle tool limit terminal state
2026-06-12 10:03:31 +08:00
Frank Song
c4284dc77c
fix: hide Worklog reasoning with Thinking
2026-06-11 13:30:23 +08:00
Frank Song
10573ab8aa
Fix session media image rendering
2026-05-28 18:05:01 +08:00
Frank Song
9190ab4449
Fix empty partial activity tail recency
2026-05-28 15:30:49 +08:00
Frank Song
9ddf36f510
fix: reset _messagesTruncated flag on new session creation
...
newSession() did not reset _messagesTruncated or _oldestIdx, unlike
loadSession() which resets both at line 590. When a user switched from
a long session (messages > _INITIAL_MSG_LIMIT) to a new session, the
stale _messagesTruncated=true caused renderMessages() to show the
'Scroll up or click to load older messages' indicator on a fresh
conversation with only 1 message.
Add the same reset that loadSession() already performs so newSession()
starts with clean pagination state.
2026-05-28 12:13:30 +08:00