Commit Graph
5473 Commits
Author SHA1 Message Date
Yichen Jiang fcbf0f0952 perf(skill): avoid catalog event copy 2026-07-27 17:12:08 +08:00
Yichen Jiang 55d7b71de3 Merge remote-tracking branch 'origin/master' into worktree/skill-catalog-hot-refresh
# Conflicts:
#	packages/ui/tui/README.i18n.yaml
2026-07-27 16:51:36 +08:00
Yichen Jiang b76659aa57 feat(skill): hot-refresh skill catalogs 2026-07-27 16:50:56 +08:00
Tianyi Cui a3b3e0244f Merge pull request #697 from deepseek-harness/exp/wine-windows-ci
ci: run the pull-request Windows blocking gates under Wine on hosted Linux
2026-07-27 16:43:05 +08:00
Tianyi Cui 0cc1ad4d90 Merge branch 'master' into exp/wine-windows-ci 2026-07-27 16:39:49 +08:00
Tianyi Cui a218fa3442 Merge pull request #676 from deepseek-harness/nih-imp-gates
refactor(scripts): consolidate gate scripts on mdast fences, parseArgs, and globSync
2026-07-27 16:37:55 +08:00
Tianyi Cui 321fda950f Merge branch 'master' into nih-imp-gates 2026-07-27 16:30:44 +08:00
Tianyi Cui 5e13376cbc Merge remote-tracking branch 'origin/master' into exp/wine-windows-ci 2026-07-27 16:27:25 +08:00
Tianyi Cui f51737bc6f Merge pull request #734 from deepseek-harness/worktree/ci-all-checks-ubuntu-20260727
ci: run required status aggregator on ubuntu-latest
2026-07-27 16:24:29 +08:00
Tianyi Cui b5a23e45f6 Merge pull request #735 from deepseek-harness/worktree/fix-ci-timing-flakes-20260727
test: stabilize timing-sensitive terminal checks
2026-07-27 16:19:08 +08:00
Tianyi Cui ab25c34ea0 Merge remote-tracking branch 'origin/master' into worktree/fix-ci-timing-flakes-20260727 2026-07-27 16:09:50 +08:00
imccyu 5f589da54d Merge pull request #706 from deepseek-harness/markdown-ui
feat: optimize chat ui
2026-07-27 16:08:48 +08:00
Tianyi Cui 5c4be796d1 Merge remote-tracking branch 'origin/worktree/fix-ci-timing-flakes-20260727' 2026-07-27 15:59:39 +08:00
Tianyi Cui c960e88cb8 Merge branch 'master' into worktree/fix-ci-timing-flakes-20260727 2026-07-27 15:58:44 +08:00
Tianyi Cui 9b8e6e6548 Merge remote-tracking branch 'origin/master' into worktree/fix-ci-timing-flakes-20260727 2026-07-27 15:58:37 +08:00
imccyu 52985d688d Merge branch 'master' into markdown-ui 2026-07-27 15:58:13 +08:00
Tianyi Cui 5be0118784 Merge pull request #674 from deepseek-harness/nih-imp-sse
refactor(llm-deepseek): replace hand-rolled SSE parser with eventsource-parser
2026-07-27 15:57:13 +08:00
Tianyi Cui 98877ca326 ci: drop recovered-runner fallback from retarget 2026-07-27 15:55:21 +08:00
Tianyi Cui 77a85f9b1a Merge remote-tracking branch 'origin/master' into worktree/fix-ci-timing-flakes-20260727 2026-07-27 15:53:08 +08:00
imccyu 228d503230 fix: code-mode fixture snapshot 2026-07-27 15:49:37 +08:00
Tianyi Cui bfdaf7600b Merge remote-tracking branch 'origin/master' into worktree/pr674-retarget-20260727
# Conflicts:
#	docs/cookbook/adding-an-llm-adapter.i18n.yaml
#	docs/core-data-structures/llm-streaming.i18n.yaml
#	packages/llm/llm-deepseek/README.i18n.yaml
#	packages/llm/llm/README.i18n.yaml
2026-07-27 15:48:17 +08:00
imccyu b8d7938498 Merge branch 'master' into markdown-ui 2026-07-27 15:44:30 +08:00
imccyu 0a7c8a284d chore 2026-07-27 15:44:10 +08:00
Tianyi Cui d2edfcca2e Merge pull request #624 from deepseek-harness/worktree/llm-reasoning-effort
feat(llm): add dynamic model-specific reasoning efforts including off
2026-07-27 15:37:54 +08:00
Tianyi Cui 9c53cd7d07 test: stabilize timing-sensitive terminal checks 2026-07-27 15:33:36 +08:00
Tianyi Cui be34ae6b86 ci: run required status aggregator on ubuntu-latest 2026-07-27 15:32:05 +08:00
Tianyi Cui f6de42a886 Merge remote-tracking branch 'origin/master' into worktree/pr674-retarget-20260727 2026-07-27 15:30:30 +08:00
Yichen Jiang c3dfed668d Merge branch 'master' into worktree/llm-reasoning-effort 2026-07-27 15:30:00 +08:00
imccyu b241d4332c Merge branch 'master' into markdown-ui 2026-07-27 15:23:13 +08:00
imccyu e14c2aea3d Merge pull request #497 from deepseek-harness/web2-todo
feat(gui): todo display — TodoPanel plan strip + dedicated todo_write tool row
2026-07-27 15:22:03 +08:00
Tianyi Cui 026366ac4a Merge pull request #722 from deepseek-harness/worktree/ci-status-aggregator-standard-20260727
ci: keep required status aggregator on standard capacity
2026-07-27 15:07:25 +08:00
Tianyi Cui ef8d82c65f Merge standard-runner fallback into status aggregator stack 2026-07-27 14:37:04 +08:00
Tianyi Cui 761eeb7c55 ci: restore standard runners for primary checks 2026-07-27 14:15:46 +08:00
Tianyi Cui 7ca13198de ci: keep required status aggregator portable 2026-07-27 14:05:32 +08:00
Yichen Jiang 21aeff3029 Merge remote-tracking branch 'origin/master' into worktree/llm-reasoning-effort
# Conflicts:
#	.agents/notes/implemented/testing/2026-07-24-web-gui-browser-e2e-lane.i18n.yaml
#	docs/config-catalog.md
#	docs/core-data-structures/session.i18n.yaml
#	scripts/type-equiv.manifest.json
2026-07-27 13:35:10 +08:00
Tianyi Cui cff614d37d ci: run the pull-request Windows blocking gates under Wine on hosted Linux
The required windows job moves from windows-2025 to ubuntu-latest, running
checksum-verified Windows Node under Wine at Linux-job wall clock (2m46s
warm vs 7-9min); master's serial-windows native-kernel reference is
untouched, and a new master-only wine-apt-cache job seeds the apt cache
every pull request restores. The experiment workflow folds into ci.yml,
the Agent Note moves to implemented with measured results, and the two CI
topology notes update to the shipped facts.
2026-07-27 13:17:12 +08:00
Tianyi Cui 73d2a787a7 Merge branch 'master' into nih-imp-sse 2026-07-27 13:13:57 +08:00
07akioni 0d2a8a3090 Merge branch 'master' into markdown-ui 2026-07-27 12:59:37 +08:00
07akioni 55fc87a7a0 fix: cr 2026-07-27 12:58:20 +08:00
Tianyi Cui b052cd1161 docs(exp-wine): record measured warm-cache result and the queued 8-core leg 2026-07-27 12:39:29 +08:00
Tianyi Cui 38eb521e00 ci(exp-wine): document apt-cache scoping across triggers 2026-07-27 12:30:10 +08:00
Chinesezjc 710a3b1686 docs(ui-conversation): document the two todo registrations in the owning README pair
The todo row and the todo plan strip were registered without a contract in this
package's README, which still described only the bash sample. Both sides now
carry the two registrations: TodoRow's `todo_write` toolview key with its
attempted-write summary and non-ok dot semantics, and TodoDock's
`conversation.input.dock` entry at `order: -1` with the dock-owned selection,
empty-hidden panel, collapse behavior, and the composer-takeover consequence
that hides the whole dock. README.i18n.yaml re-recorded.
2026-07-27 12:20:17 +08:00
Tianyi Cui 3649df1407 ci(exp-wine): speed rework — pnpm store + wine apt caches, concurrent provisioning and gates, checksum-pinned Node, 8-core dispatch leg; fold PR #689 lessons into the note 2026-07-27 12:11:27 +08:00
Chinesezjc d2bb2a809b fix(web-todo): dock-owned selection, keyboard-openable row, documented tail todos field
Three ds-review-bot round-8 findings on the todo display surfaces.

TodoPanel took the whole `useSession` hook and cast the snapshot to reach
`todos`, which put slot plumbing and an unchecked cast inside the presentation
component. The panel now takes `todos: readonly TodoItem[]`; TodoDock does the
selecting, matching the QueueDock posture the dock slot already establishes.

The todo row carried `onClick` with no keyboard route, so its details panel was
mouse-only. It now takes ToolRow's route verbatim: `role="button"`,
`tabIndex={0}`, and an Enter/Space handler that claims the event. The row stays
a `<div>` because a `<button>` flattens its inline spans.

`session.history`'s tail-only `todos` field was documented at the TS signature
but not in the apiproxy README pair, and the Agent Note claimed the feature
added no new wire vocabulary. Both README sides now state the tail/omission
semantics (an omitted field on a tail response is the empty plan, not unchanged
state), and the note records the one added field instead of denying it.

Tests: TodoPanel specs render the plain list; new TodoDock specs cover selection,
live follow, rollback-to-empty, and the registration shape; a new row spec pins
Enter/Space activation and non-activating keys.
2026-07-27 12:08:46 +08:00
07akioni 3ee2982f85 optimize chat ui 2026-07-27 12:04:12 +08:00
Tianyi Cui cc7a39e490 Merge remote-tracking branch 'origin/master' into exp/wine-windows-ci 2026-07-27 12:03:46 +08:00
Tianyi Cui ebdcb5776a fix(scripts): address review findings on the gate consolidation
- publint-all: the recursive publication view uses readdirSync
  {recursive} again instead of globSync('**/*') — the glob skips
  dot-prefixed segments (verified empirically), but npm pack publishes
  dotfiles inside included directories, so hidden exports were
  reported missing and other hidden files escaped validation
- markdown.ts/verify-type-equiv: markdownFences now reports whether a
  closing delimiter terminates the block (mdast silently closes an
  unterminated fence at EOF), and verify-type-equiv rejects unclosed
  type-equivalence fences again — the Agent Note claimed such a block
  still fails at the manifest checks, but its comparisons can succeed
- Agent Note EN+ZH: record the restored rejection; rewrite the zh
  Problem section into past tense to match the English side's shipped
  reality; pair re-recorded
2026-07-27 12:02:39 +08:00
Chinesezjc 8ebdad5076 reset the plan when a tail history response omits the todo projection
An omitted `todos` on a tail request was treated as "no projection carried"
and preserved the prior value. Every installWindow caller is a tail request
(doOpen, its gap re-pull, repairGap; loadOlder prepends without it), which the
host answers with the full-log projection or omits only when the log holds no
todo/write — so the field's absence is the authoritative empty list. A live
write whose host crashed before persisting therefore left the rolled-back plan
on screen indefinitely; the assignment now clears it on the next open or
resync. Widened the parameter to an explicit `| undefined` so the two meanings
cannot be conflated again, and updated the JSDoc at both declaring seams plus
the bilingual README/note pair.
2026-07-27 11:41:26 +08:00
imccyu 8dce7981c4 refresh code-mode trajectory ordinals for the todo fixture turn
Turn 65 (todo_write) at the fx-alpha tail slides the 50-message history
window: two head-of-window messages drop out, so every trajectory cell
ordinal shifts down by two. Timing, labels, and cell content are unchanged.
2026-07-27 11:38:02 +08:00
imccyu f2a9f4a40e retire the stale ACP plan-mapping claim in the todo note
The automation-only ACP bridge deliberately omits todo presentation (its
edge test asserts plan updates are omitted; the todo-write tool note records
the mapping's retirement). Chinese counterpart updated, pair re-recorded;
the TodoPanel header comment drops the same claim.
2026-07-27 10:43:49 +08:00