ZiyaZhang
04d43e3b19
feat(llm-replay): resolve {{fromRequest:...}} placeholders against the live request
...
A scripted sidecar cannot know values minted at run time, so terminal
goal updates (which must echo the random goal id) were previously
un-scriptable. Placeholders in scripted entries now resolve against the
request corpus at stream time: last match wins, capture group 1 or the
whole match substitutes, and unmatched/invalid/unterminated patterns
fail loud.
2026-08-02 05:58:31 -07:00
ZiyaZhang
7aa9e51084
fix(cli): give shipped web search a 60s budget
2026-08-01 06:15:16 -07:00
ZiyaZhang
46681457c2
Merge remote-tracking branch 'upstream/master' into agent/fix-frontend-plugin-loader-dependency
2026-08-01 02:12:33 -07:00
ZiyaZhang
90c5635355
fix(cli): point missing frontend dist at full build
2026-08-01 02:12:22 -07:00
ZiyaZhang
8ce4f07f92
fix(web): defer math rendering while streaming
2026-08-01 00:58:50 -07:00
ZiyaZhang
1e334fa955
feat(web): render TeX math in Markdown
2026-08-01 00:05:23 -07:00
ZiyaZhang
5e68d812d1
fix(web): let context injection cards fit content
2026-07-31 05:20:54 -07:00
ZiyaZhang
215bf15f78
fix(web): surface terminal turn failures
2026-07-31 03:10:48 -07:00
ZiyaZhang
9aeae0e422
docs(mcp): correct crash recovery wording
2026-07-31 03:09:29 -07:00
ZiyaZhang
dc7f3253f6
fix(examples): keep memory configs provider-owned
2026-07-31 02:34:52 -07:00
ZiyaZhang
07f51593a0
docs(examples): simplify memory onboarding
2026-07-31 02:28:09 -07:00
ZiyaZhang
e2fb026dee
docs(examples): clarify reference memory limits
2026-07-31 02:08:35 -07:00
ZiyaZhang
7e929d3d50
feat(examples): add generic memory MCP overlays
2026-07-31 02:00:14 -07:00
ZiyaZhang
82c1788c25
docs: re-record the README pair and translation snapshot after the master merge
2026-07-30 23:07:02 -07:00
ZiyaZhang
235390031a
docs: refine internal testing notice
2026-07-30 22:39:08 -07:00
ZiyaZhang
01ccfc0ad3
fix(ci): align Knip config with CI
2026-07-30 20:58:28 -07:00
ZiyaZhang
45e5317ecd
fix(ci): stabilize merged coverage gates
2026-07-30 20:52:35 -07:00
ZiyaZhang
9095d3874a
test: file the committed-manifest case under the parser it exercises
2026-07-30 20:45:12 -07:00
ZiyaZhang
45627bd93b
fix(ci): tolerate initializing Lefthook lock
2026-07-30 20:17:04 -07:00
ZiyaZhang
f13cef0148
test: re-record the translation prompt snapshot for the development.md edit
2026-07-30 19:59:02 -07:00
ZiyaZhang
421594472a
docs: evaluate SPDX conjunctions and read every Python manifest
...
Reject a copyleft conjunct in an expression like '(MIT OR Apache-2.0)
AND GPL-3.0-only', which a permissive-alternative search accepted.
Discover python/*/pyproject.toml by glob, accept single-quoted TOML
literals, and fail on a requirement whose name cannot be read. Say that
the development tier records who declares a package rather than what a
build bundles, since a runtime dependency can pull one in transitively,
and sync the contributor guide's pre-commit list.
2026-07-30 19:54:27 -07:00
ZiyaZhang
9f9d6fc0e2
docs: regenerate notices after merging master
2026-07-30 19:46:26 -07:00
ZiyaZhang
7b8fa8c510
Merge branch 'master' into docs/third-party-notices
2026-07-30 19:46:01 -07:00
ZiyaZhang
83d6be50aa
Merge remote-tracking branch 'upstream/master' into feat/gui-full-access-confirmation
2026-07-30 19:32:51 -07:00
ZiyaZhang
85b3fcbd19
Merge remote-tracking branch 'origin/feat/gui-full-access-confirmation' into feat/gui-full-access-confirmation
2026-07-30 19:32:27 -07:00
ZiyaZhang
a189597830
Merge remote-tracking branch 'upstream/master' into feat/gui-full-access-confirmation
...
# Conflicts:
# packages/client/ui-primitives/src/Modal.tsx
# packages/client/ui-primitives/tests/atoms.spec.tsx
2026-07-30 19:30:41 -07:00
ZiyaZhang
44bd19056c
docs: close the remaining silent-omission paths in the notices generator
...
Derive the manifest set from each pnpm-workspace.yaml members list, so a
new member area is read when declared. Locate Python requirement arrays
by TOML table and scan them quote-aware, so author-named dependency
groups and extras-bearing requirements are no longer dropped. Search the
nested Landlock store for metadata, reject a non-permissive runtime
license outright, and omit the dev-tooling sentence when it has no
subject.
2026-07-30 10:28:16 -07:00
ZiyaZhang
4c5922edad
Merge remote-tracking branch 'upstream/master' into feat/gui-full-access-confirmation
2026-07-30 09:28:09 -07:00
ZiyaZhang
2c8da83fc8
test(web): refresh plan review access golden
2026-07-30 09:27:49 -07:00
ZiyaZhang
6427660dca
docs: fix notices template claim and close generator omission paths
...
The template still described the removed doc-sync gate; it now states the
pre-commit + test-lane mechanism that actually runs. Read the nested
native/landlock-run/packages manifests, accept PEP 508 requirements with
no version or with a marker, and reject a vendor/README.md table that
stops covering a vendored directory instead of dropping it silently.
Extend the pre-commit glob to the generator and the build-time pin
source; record the deletion trigger gap the test lane backstops.
2026-07-30 09:23:00 -07:00
ZiyaZhang
bf4ff3a696
Merge remote-tracking branch 'upstream/master' into feat/gui-full-access-confirmation
...
# Conflicts:
# packages/client/ui-conversation/README.i18n.yaml
2026-07-30 09:20:43 -07:00
ZiyaZhang
d2521a7e61
test(web): refresh queue collapse access golden
2026-07-30 08:09:59 -07:00
ZiyaZhang
04c73df2f6
docs: keep notices fresh at commit time instead of a new CI gate
...
Regenerate THIRD_PARTY_NOTICES.md from a pre-commit job whenever a
manifest, lock file, vendor manifest, or pyproject is staged, and assert
the committed bytes inside the generator spec the test lane already runs.
Drops the separate doc-sync gate: no extra CI process, and a dependency
edit no longer bounces back from CI to rerun a generator.
2026-07-30 07:56:13 -07:00
ZiyaZhang
b6dd855a7c
Merge remote-tracking branch 'origin/master' into feat/gui-full-access-confirmation
2026-07-30 07:49:38 -07:00
ZiyaZhang
fa67427c39
Merge remote-tracking branch 'origin/master' into feat/gui-full-access-confirmation
...
# Conflicts:
# packages/client/ui-conversation/README.i18n.yaml
2026-07-30 07:48:33 -07:00
ZiyaZhang
19606bc331
docs: generate THIRD_PARTY_NOTICES.md and gate it in doc-sync
...
Replace the hand-written inventory with scripts/gen-third-party-notices.ts,
verified fresh by a doc-sync leaf gate. Tier by declaring workspace area
rather than manifest section, so test-support runtime declarations stay
dev-only and every mountable plugin's dependencies are disclosed as
runtime; list the pnpm-patched packages; point the Python closure at
uv.lock. Re-record the translation-prompt snapshot the README link
invalidated.
2026-07-30 07:27:13 -07:00
ZiyaZhang
c2bce3cac6
fix(client): unblock full access CI gates
2026-07-30 06:45:36 -07:00
ZiyaZhang
e517e75344
Merge remote-tracking branch 'origin/master' into feat/gui-full-access-confirmation
2026-07-30 06:01:56 -07:00
ZiyaZhang
8d4bf5ae41
chore(docs): refresh generated graph records
2026-07-30 06:01:47 -07:00
ZiyaZhang
6d416b06c5
fix(client): gate every full access picker
2026-07-30 05:48:33 -07:00
ZiyaZhang
9eb0ef4c3e
feat(client): confirm before enabling full access
2026-07-30 04:50:27 -07:00
ZiyaZhang
981d87d4b8
Merge branch 'master' into docs/third-party-notices
2026-07-30 03:50:54 -07:00
ZiyaZhang
8a915893e7
docs: add THIRD_PARTY_NOTICES.md disclosing third-party dependencies
...
List direct dependencies by tier (vendored Cordis sources, runtime npm,
dev-only npm, Python SDK, build-time tools) with upstream links and
licenses, and link it from the License section of both READMEs.
2026-07-29 21:29:49 -07:00
ZiyaZhang
3dd0ce33f4
Merge remote-tracking branch 'upstream/master' into fix/gui-todo-default-collapsed
...
# Conflicts:
# packages/client/ui-conversation/README.i18n.yaml
2026-07-29 08:10:13 -07:00
ZiyaZhang
64d5ce600b
Merge remote-tracking branch 'upstream/master' into fix/gui-todo-default-collapsed
...
# Conflicts:
# packages/client/ui-conversation/README.i18n.yaml
# packages/client/ui-conversation/README.zh.md
2026-07-28 23:54:01 -07:00
ZiyaZhang
9e45736298
fix(gui): default todo panel to collapsed
2026-07-28 23:52:08 -07:00
ZiyaZhang
c7076e15b8
fix(hooks): bound regex reuse across reloads
2026-07-28 20:33:08 -07:00
ZiyaZhang
ec72d0b57e
fix(hooks): share matcher validation instances
2026-07-28 20:10:21 -07:00
ZiyaZhang
774755ef2d
Merge remote-tracking branch 'upstream/master' into fix/hook-matcher-validation
2026-07-28 19:57:23 -07:00
ZiyaZhang
7121d25c8a
test(hooks): keep regex lifecycle ownership explicit
2026-07-28 19:56:03 -07:00
ZiyaZhang
ea4103c14a
Merge remote-tracking branch 'upstream/master' into fix/hook-matcher-validation
2026-07-28 19:49:35 -07:00
ZiyaZhang
d3d370e4d2
fix(hooks): reuse compiled Codex matchers
2026-07-28 19:48:59 -07:00
ZiyaZhang
2630de8bd6
Merge remote-tracking branch 'upstream/master' into fix/subprocess-password-scrub
...
# Conflicts:
# docs/module-graph.md
2026-07-28 19:14:40 -07:00
ZiyaZhang
dfba46c6d4
Merge remote-tracking branch 'upstream/master' into fix/workspace-instruction-frame-metadata
2026-07-28 16:53:21 -07:00
ZiyaZhang
f8082eef63
Merge remote-tracking branch 'upstream/master' into fix/translation-brief-uncommitted-pair
2026-07-28 16:53:21 -07:00
ZiyaZhang
fad111c7e6
Merge remote-tracking branch 'upstream/master' into fix/hook-matcher-validation
2026-07-28 16:14:51 -07:00
ZiyaZhang
2fbcfa16ea
docs(hooks): align Codex matcher authority
2026-07-28 11:09:02 -07:00
ZiyaZhang
b75e7cf6a1
Merge remote-tracking branch 'upstream/master' into fix/translation-brief-uncommitted-pair
2026-07-28 10:41:53 -07:00
ZiyaZhang
9189857860
test(i18n): refresh gc-pinned prompt snapshot
2026-07-28 10:41:48 -07:00
ZiyaZhang
d7d32f47f1
Merge remote-tracking branch 'upstream/master' into fix/workspace-instruction-frame-metadata
2026-07-28 10:38:11 -07:00
ZiyaZhang
97805f1ba2
Merge commit 'f84f07ce7a5f1de4d7367d0cea30db3c3344abdb' into fix/hook-matcher-validation
2026-07-28 10:38:11 -07:00
ZiyaZhang
0ef2327e34
fix(hooks): match Codex Rust regex syntax
2026-07-28 10:37:53 -07:00
ZiyaZhang
ce37303735
Merge remote-tracking branch 'upstream/master' into fix/subprocess-password-scrub
2026-07-28 10:33:06 -07:00
ZiyaZhang
612b527cd2
fix(i18n): pin translation snapshots against gc
2026-07-28 10:28:49 -07:00
ZiyaZhang
6778d04e63
docs(subprocess): sync password scrub notes
2026-07-28 10:26:15 -07:00
ZiyaZhang
e59e2f6192
test(i18n): isolate git object format fixtures
2026-07-28 10:10:18 -07:00
ZiyaZhang
140a1eaccc
Merge commit 'f7e1c47968ecf8704af9605f3f6bc1db6db869bc' into fix/hook-matcher-validation
2026-07-28 10:08:11 -07:00
ZiyaZhang
faa540e667
Merge remote-tracking branch 'upstream/master' into fix/workspace-instruction-frame-metadata
2026-07-28 10:03:58 -07:00
ZiyaZhang
1b810b3f20
Merge remote-tracking branch 'upstream/master' into fix/subprocess-password-scrub
2026-07-28 10:03:58 -07:00
ZiyaZhang
f50a1fe58d
Merge remote-tracking branch 'upstream/master' into fix/translation-brief-uncommitted-pair
2026-07-28 10:03:58 -07:00
ZiyaZhang
cefa377897
Merge remote-tracking branch 'upstream/master' into fix/workspace-instruction-frame-metadata
2026-07-28 10:01:15 -07:00
ZiyaZhang
10e3a4b2b2
Merge remote-tracking branch 'upstream/master' into fix/subprocess-password-scrub
2026-07-28 10:01:15 -07:00
ZiyaZhang
ba9c914238
Merge remote-tracking branch 'upstream/master' into fix/translation-brief-uncommitted-pair
2026-07-28 10:01:15 -07:00
ZiyaZhang
03a8805da7
Merge remote-tracking branch 'upstream/master' into fix/subprocess-password-scrub
2026-07-28 09:56:23 -07:00
ZiyaZhang
2edc186047
Merge remote-tracking branch 'upstream/master' into fix/translation-brief-uncommitted-pair
2026-07-28 09:56:23 -07:00
ZiyaZhang
2f4f30ef6e
Merge remote-tracking branch 'origin/master' into fix/hook-matcher-validation
2026-07-28 09:55:49 -07:00
ZiyaZhang
55321fe7a4
fix(hooks): ignore matcherless event fields
2026-07-28 09:55:18 -07:00
ZiyaZhang
ad93803431
docs(acp-snapshot): preserve merged workspace contracts
2026-07-28 09:54:25 -07:00
ZiyaZhang
688d298e7e
Merge remote-tracking branch 'upstream/master' into fix/workspace-instruction-frame-metadata
2026-07-28 09:53:30 -07:00
ZiyaZhang
cddf340df8
Merge remote-tracking branch 'origin/master' into fix/hook-matcher-validation
2026-07-28 09:49:40 -07:00
ZiyaZhang
67e8362b55
docs(security): include password names in scrub rule
2026-07-28 09:40:33 -07:00
ZiyaZhang
15edb38a34
Merge remote-tracking branch 'upstream/master' into fix/workspace-instruction-frame-metadata
...
# Conflicts:
# packages/support/acp-snapshot/README.i18n.yaml
# packages/support/acp-snapshot/README.md
# packages/support/acp-snapshot/README.zh.md
2026-07-28 08:59:32 -07:00
ZiyaZhang
61a388b54e
test(hooks): align matcher fixtures with message identity
2026-07-28 08:59:28 -07:00
ZiyaZhang
a7992cea6c
Merge remote-tracking branch 'upstream/master' into fix/translation-brief-uncommitted-pair
2026-07-28 08:18:32 -07:00
ZiyaZhang
0626b6656c
Merge remote-tracking branch 'origin/master' into fix/hook-matcher-validation
2026-07-28 08:15:28 -07:00
ZiyaZhang
8d77e5149c
Merge remote-tracking branch 'upstream/master' into fix/subprocess-password-scrub
2026-07-28 08:15:08 -07:00
ZiyaZhang
f688cd32af
fix(workspace-context): escape instruction metadata
2026-07-28 05:22:47 -07:00
ZiyaZhang
c008763469
test(i18n): refresh translation prompt snapshot
2026-07-28 04:42:37 -07:00
ZiyaZhang
7febd4b557
fix(i18n): persist uncommitted translation snapshots
2026-07-28 04:34:05 -07:00
ZiyaZhang
7dc6b058a9
fix(hooks): ignore unsupported Claude events
2026-07-28 03:18:03 -07:00
ZiyaZhang
5e4c2ffae7
test(hooks): snapshot invalid matcher loading
2026-07-28 02:58:08 -07:00
ZiyaZhang
3f71f91d5b
fix(hooks): reject invalid matcher regexes
2026-07-28 02:43:51 -07:00
ZiyaZhang
f92389606e
docs(subprocess): record shared scrub consumers
2026-07-28 02:33:14 -07:00
ZiyaZhang
d0cbf825a5
fix(subprocess): share password scrub with direct spawners
2026-07-28 02:19:18 -07:00
ZiyaZhang
6b7b2f8010
fix(subprocess): scrub ambient password variables
2026-07-28 02:02:35 -07:00
ZiyaZhang
a5239b0f64
test(gui): cover native workspace picker branches
2026-07-27 04:37:24 -07:00
ZiyaZhang
fef928a7e1
feat(gui): add native workspace folder picker
2026-07-27 03:50:22 -07:00
ZiyaZhang
12dbc00166
fix(tui): harden resume picker input
2026-07-24 01:29:35 -07:00
ZiyaZhang
33ee34b58e
fix(tui): make resume picker full-screen
2026-07-24 01:29:35 -07:00
ZiyaZhang
b64c3eb13f
fix(tui): contain overlay reentrancy
2026-07-22 22:00:36 -07:00