Yichen Jiang
483199d47a
Merge branch 'worktree-llm-dynamic-config' into worktree-llm-web-config
...
# Conflicts:
# apps/cli/cordis.yml
# apps/web/tests/snapshots/code-mode-round/session.jsonl
# apps/web/tests/snapshots/cordis-tool-round/session.jsonl
# apps/web/tests/snapshots/fresh-round-trip/session.jsonl
# apps/web/tests/snapshots/lifecycle-chrome/session.jsonl
# apps/web/tests/snapshots/live-interactions/session.jsonl
# apps/web/tests/snapshots/navigation-panes/seed.jsonl
# apps/web/tests/snapshots/question-composer/session.jsonl
# apps/web/tests/snapshots/seeded-history/seed.jsonl
# apps/web/tests/snapshots/steering/session.jsonl
# docs/cordis-catalog/events.md
# docs/cordis-catalog/services.md
# docs/core-data-structures/core.i18n.yaml
# docs/core-data-structures/settings.i18n.yaml
# docs/event-producer-consumer.md
# docs/module-graph.md
# examples/acp-agent/tests/snapshots/workspace-context/session.jsonl
# packages/client/connection/README.i18n.yaml
# packages/client/connection/src/index.ts
# packages/client/connection/tests/node-half.spec.ts
# packages/client/runtime/README.i18n.yaml
# packages/client/runtime/README.md
# packages/client/runtime/README.zh.md
# packages/client/runtime/src/client/index.ts
# packages/client/runtime/tests/fake-api.ts
# packages/client/ui-models/README.i18n.yaml
# packages/examples/tui-demo/README.i18n.yaml
# packages/host/apiproxy/README.i18n.yaml
# packages/host/apiproxy/package.json
# packages/host/apiproxy/src/api-proxy.ts
# packages/host/apiproxy/src/api/rpc.schema.ts
# packages/host/apiproxy/src/api/rpc.ts
# packages/llm/llm-deepseek/README.i18n.yaml
# packages/llm/llm-deepseek/README.zh.md
# packages/llm/llm-pi-ai/README.i18n.yaml
# packages/llm/llm/README.i18n.yaml
# packages/llm/llm/README.zh.md
# packages/sdk/sdk-client/README.i18n.yaml
# packages/settings/settings/README.i18n.yaml
# packages/settings/settings/README.md
# packages/settings/settings/README.zh.md
# packages/subagent/subagent-dsh-sdk/README.i18n.yaml
# packages/subagent/subagent-dsh-sdk/README.zh.md
# packages/support/llm-replay/README.i18n.yaml
# packages/ui/jsonrpc/README.i18n.yaml
# packages/ui/jsonrpc/README.zh.md
# packages/ui/tui/tests/snapshots/model-selector.expected.txt
# packages/ui/tui/tests/snapshots/model-switching.expected.txt
# packages/ui/tui/tests/snapshots/resume-sessions.expected.txt
# packages/ui/tui/tests/snapshots/status-diagnostics-narrow.expected.txt
# packages/ui/tui/tests/snapshots/status-diagnostics.expected.txt
# packages/ui/tui/tests/tui.snapshot.ts
# pnpm-lock.yaml
# python/sdk/README.i18n.yaml
# scripts/snapshots/translation-prompt-v4/request-response.expected.json
2026-07-30 15:18:26 +08:00
Yichen Jiang
8ff6b23214
Merge branch 'worktree-config-settings-seam' into worktree-llm-dynamic-config
...
# Conflicts:
# docs/capability-seams.md
# docs/cordis-catalog/services.md
# docs/core-data-structures/core.i18n.yaml
# docs/module-graph.md
# examples/tui-agent/cordis.yml
# packages/README.i18n.yaml
# packages/cordis/tool-cordis/src/api-catalog.ts
# packages/llm/llm-deepseek/README.i18n.yaml
# packages/llm/llm-deepseek/README.zh.md
# packages/llm/llm-pi-ai/README.i18n.yaml
# packages/llm/llm-pi-ai/README.zh.md
# packages/settings/settings-local/src/index.ts
# packages/util/README.i18n.yaml
# packages/util/README.md
# packages/util/README.zh.md
# scripts/doc-budgets.manifest.json
2026-07-30 14:33:36 +08:00
Tianyi Cui
d37b192aa9
Merge branch 'master' into fix/workspace-instruction-frame-metadata
2026-07-30 12:16:41 +08:00
Tianyi Cui
ecb43469af
Merge branch 'master' into fix/workspace-instruction-frame-metadata
2026-07-30 11:45:00 +08:00
imccyu
a9813a2801
Merge branch 'master' into codex/web-queue-actions
2026-07-30 11:20:57 +08:00
kingwl
ff570ea04c
test(agent): refresh inbox action snapshot
2026-07-30 04:20:20 +08:00
Tianyi Cui
4c15041fc9
test(hooks): normalize matcher snapshot workdirs
2026-07-30 01:16:37 +08:00
kingwl
77479f5ab0
test(queue): close CI coverage gaps
2026-07-30 00:55:02 +08:00
Tianyi Cui
3d5fe9ffab
Merge branch 'master' into fix/hook-matcher-validation
2026-07-30 00:21:43 +08:00
Tianyi Cui
fca0c05155
Merge remote-tracking branch 'origin/master' into worktree/pr823-retarget-latest-20260729
...
# Conflicts:
# docs/config-catalog.md
# docs/cordis-catalog/services.md
# docs/core-data-structures/skills.i18n.yaml
# docs/core-data-structures/skills.md
# docs/core-data-structures/skills.zh.md
# packages/host/apiproxy/README.i18n.yaml
# packages/skill/skill-local/README.i18n.yaml
# packages/skill/skill/README.i18n.yaml
# packages/skill/skill/README.md
# packages/skill/skill/README.zh.md
# packages/skill/skill/src/index.ts
# packages/skill/skill/tests/skill.spec.ts
# packages/skill/tool-skill/README.i18n.yaml
# packages/skill/tool-skill/src/index.ts
# packages/ui/tui/README.i18n.yaml
# packages/ui/tui/README.md
# packages/ui/tui/README.zh.md
# packages/ui/tui/src/index.ts
# packages/ui/tui/tests/tui.spec.ts
2026-07-29 23:36:49 +08:00
Tianyi Cui
f477cafc90
Merge commit '01b34d4ff9e0726379b2d0c3febdc977e5ce9ebf' into worktree/retarget-pr828-20260729
2026-07-29 23:20:18 +08:00
Tianyi Cui
1619d7686b
test(skill): close invocation policy coverage gaps
2026-07-29 23:17:07 +08:00
Tianyi Cui
cae3c8c9a1
Merge commit 'refs/codex/pr831/master' into worktree/retarget-pr831-20260729
2026-07-29 23:16:57 +08:00
Tianyi Cui
7ff1246842
test(skill): snapshot invocation policy surfaces
2026-07-29 21:58:21 +08:00
Tianyi Cui
502e64c00d
Merge origin/master at ecbf75a5e7 into skill catalog hot refresh
2026-07-29 21:42:18 +08:00
Tianyi Cui
7f711996ff
Merge commit 'ecbf75a5e70f662b6420375140cf12eb6bac7860' into worktree/retarget-pr828-20260729
...
# Conflicts:
# packages/hooks/README.i18n.yaml
# packages/hooks/README.zh.md
# packages/hooks/hook-protocol/README.i18n.yaml
# packages/hooks/hook-protocol/README.zh.md
# packages/hooks/hooks-claude/README.i18n.yaml
# packages/hooks/hooks-claude/README.zh.md
# packages/hooks/hooks-codex/README.i18n.yaml
# packages/hooks/hooks-codex/README.zh.md
2026-07-29 21:34:29 +08:00
Tianyi Cui
44fe621f3f
Merge commit 'ecbf75a5e70f662b6420375140cf12eb6bac7860' into worktree/retarget-pr831-20260729
...
# Conflicts:
# packages/context/workspace-context/README.i18n.yaml
# packages/context/workspace-context/README.zh.md
2026-07-29 21:25:44 +08:00
Tianyi Cui
5c0c59847b
Merge remote-tracking branch 'origin/master' into worktree/pr823-retarget-latest-20260729
...
# Conflicts:
# packages/client/ui-skill/README.i18n.yaml
# packages/client/ui-skill/README.zh.md
# packages/host/apiproxy/src/api-proxy.ts
# packages/skill/skill-local/README.i18n.yaml
# packages/skill/skill-local/README.zh.md
# packages/skill/skill/README.i18n.yaml
# packages/skill/skill/README.zh.md
# packages/skill/tool-skill/README.i18n.yaml
2026-07-29 21:05:09 +08:00
Tianyi Cui
cf7f14948c
test(tui): match durable skill catalog source
2026-07-29 20:45:00 +08:00
xjt
e1481e2d98
docs(i18n): resolve follow-up review findings
2026-07-29 18:38:56 +08:00
j-xiang
5bd49b1f0e
docs(i18n): address final line audit
2026-07-29 16:53:53 +08:00
Tianyi Cui
5bf93e4229
Merge origin/master into worktree/skill-catalog-hot-refresh
2026-07-29 16:40:40 +08:00
Yichen Jiang
fee12f1af0
refactor(llm-deepseek)!: rename the provider route to deepseek-official
...
The native adapter's route was named deepseek, colliding with pi-ai's
catalog provider of the same name, so the two DeepSeek paths could never
be mounted side by side. The web settings page needs both configurable at
once. Compositions, fixtures, goldens, scaffolding defaults, and docs all
move together (pre-release, no shim); TUI/session-query-spill/
missing-credential goldens re-recorded through their keyless refresh
modes because provider-name length shifts box padding and spill
truncation points.
2026-07-29 16:36:07 +08:00
j-xiang
c44d2cc2b4
docs(i18n): fix proofreading review findings
2026-07-29 15:37:42 +08:00
j-xiang
599e6edc87
docs(i18n): record proofread README pairs
2026-07-29 15:30:44 +08:00
j-xiang
333b4bcd30
docs(i18n): proofread README translations 1-20
2026-07-29 15:29:24 +08:00
Yichen Jiang
4e9916b3e5
feat(llm-pi-ai): dormant bare mount — routes live entirely in the settings plane
...
An empty or omitted providers dict is now the valid dormant posture: the
adapter mounts with zero routes and no catalog entries, registers routes
the moment the llm-pi-ai settings section supplies profiles, and drops
them when it empties. The TUI demo mounts the adapter bare, so adding an
openai/anthropic provider is purely a settings.yaml (or, next PR, web
form) operation with per-request apiKeyEnv credential resolution.
2026-07-29 14:56:09 +08:00
Yichen Jiang
9336fed1e9
feat(examples): mount the pi-ai adapter in the TUI demo composition
...
openai + anthropic routes register keyless beside the direct deepseek
adapter — the catalog stays browsable and requests fail actionably until a
key arrives — with per-request apiKeyEnv resolution, so a user's settings
section (proxy baseURL, extra routes) and .env keys are the only steps to
turn them on.
2026-07-29 14:45:01 +08:00
Yichen Jiang
4bb101e002
Revert "fix(examples): drop the dev HMR row the native source launch cannot load"
...
This reverts commit 8ca499e33dd2b6e1f4e80189a1a3ab9e6873ddf7.
2026-07-29 14:29:12 +08:00
Yichen Jiang
2a53abd491
fix(examples): drop the dev HMR row the native source launch cannot load
...
Vendored @cordisjs/plugin-hmr uses decorators — non-erasable syntax the
--experimental-transform-types demo:tui launch refuses — so its row made the
shipped TUI composition unbootable from source while the tsx-launched
snapshot harness masked it. The stale !!js head comment goes with it;
restoring dev HMR is tracked separately.
2026-07-29 14:26:00 +08:00
Yichen Jiang
b0a2011d95
docs: bilingual credentials/settings-consumer documentation, catalogs, and gates
...
New credentials data-structure page (type-equiv manifested), group README,
rewritten llm-deepseek/llm-pi-ai READMEs (dynamic configuration, dict
profiles, credential chain), capability-seams/service-role registration,
Agent Note (bilingual), demo compositions mounting settings-local +
credentials-local with no inline key plumbing, installSettingsSection
consumer helper on the settings seam (deduplicating both adapters' wiring),
jscpd symmetry markers for the provider twins, runtime-closure additions for
python/sdk-runtime, and doc-budget ceilings AGENTS.md 1750→1755 /
packages/README.md 850→865 for the structural one-line group rows.
2026-07-29 14:20:06 +08:00
Yichen Jiang
d77db29f01
test: real-Loader dynamic composition, keyless onboarding snapshot, and .env-only e2e
...
llm-deepseek gains a Loader+Include composition spec proving external
settings.yaml/.env edits reach the very next request, and a real-API e2e
where only a credentials-local document holds the key. The headless example
pins the first-run missing-credential UX as a keyless stream-json snapshot
(new credentials.cordis.snapshot.yml scenario); runLoaderSmoke learns
expectedExitCode so a designed failure surface can be pinned instead of
masked.
2026-07-29 13:44:24 +08:00
Yichen Jiang
0dce3f57ca
Merge remote-tracking branch 'origin/master' into worktree/default-pi-ai-providers
...
# Conflicts:
# apps/cli/README.i18n.yaml
2026-07-29 13:25:06 +08:00
Yichen Jiang
8f9535af87
Merge remote-tracking branch 'origin/master' into worktree/skill-invocation-controls
...
# Conflicts:
# docs/cordis-catalog/services.md
# packages/host/apiproxy/README.i18n.yaml
# packages/host/apiproxy/src/api-proxy.ts
# packages/ui/tui/README.i18n.yaml
2026-07-29 12:58:10 +08:00
ZiyaZhang
ea4103c14a
Merge remote-tracking branch 'upstream/master' into fix/hook-matcher-validation
2026-07-28 19:49:35 -07:00
Turtle
efb67365d3
test(tui): update assembled terminal snapshots
2026-07-29 10:03:38 +08:00
ZiyaZhang
dfba46c6d4
Merge remote-tracking branch 'upstream/master' into fix/workspace-instruction-frame-metadata
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
Tianyi Cui
07d61ee992
Merge latest master into skill invocation controls
...
# Conflicts:
# docs/config-catalog.md
# docs/cordis-catalog/services.md
# examples/acp-agent/tests/snapshots/skill-load/session.jsonl
# packages/host/apiproxy/README.i18n.yaml
# packages/host/apiproxy/README.md
# packages/host/apiproxy/README.zh.md
# packages/host/apiproxy/src/api-proxy.ts
# packages/skill/tool-skill/src/index.ts
# packages/ui/tui/README.i18n.yaml
2026-07-29 01:29:39 +08:00
imccyu
532b2b9107
Merge origin/master (regenerate the event producer-consumer graph)
2026-07-29 01:21:29 +08: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
55321fe7a4
fix(hooks): ignore matcherless event fields
2026-07-28 09:55:18 -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
Tianyi Cui
8f867cc709
Merge branch 'master' into feature/subagent-policy-inheritance
2026-07-29 00:49:35 +08:00
imccyu
37f34af15f
fix(plan): gate the immediate commit on the open-turn fold, not agent status
...
The TUI keyless smoke exposed the wrong idle signal: /plan submitted while
the driver is between turns still saw status running (checkpointing), so
the selection queued and the immediate copy never appeared. The commit
gate is now the log's own open-turn fold — plan/mode commits at once
whenever no turn is open, and queues only inside one. Specs drive the
distinction through explicit turn/start / turn/end events instead of a
fake status; the keyless smoke pins the new idle copy on both /plan and
/plan off; regenerated cordis/service catalogs ride along.
2026-07-29 00:46:56 +08:00
Tianyi Cui
63c9db1759
test(snapshot): preserve cwd punctuation
2026-07-29 00:02:38 +08: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