Commit Graph

2991 Commits

Author SHA1 Message Date
Tianyi Cui
3e4e3aa865 Merge remote-tracking branch 'origin/master' into codex/pr332-merge-master-20260719
# Conflicts:
#	docs/cookbook/extension-cookbook.i18n.yaml
2026-07-19 15:07:58 +08:00
Tianyi Cui
7617963474 docs(llm-pi-ai): describe usage overflow mapping
Document every context-window path returned by mapStopReason: recognized provider error wording, successful stop usage beyond the resolved window, and zero-output length stops that fill the window.

This keeps the public return contract aligned with usage-based overflow classification without duplicating the provider-specific detection table owned by pi-ai.
2026-07-19 15:04:51 +08:00
Tianyi Cui
8eb9beb319 docs(rfc): correct recovery translation
Use the repository-mandated 回放 terminology for replayable pressure and replace the literal cancellation-owned rendering with idiomatic Chinese that preserves boundedness, cancellation authority, and monotonic retry behavior.

The corresponding English clauses remain accurate. Re-record the English and Chinese pair after checking the corrected text against the implemented recovery contract.
2026-07-19 15:03:15 +08:00
Tianyi Cui
98e224e45e refactor(agent): exhaust recovery and compaction decisions
Dispatch RequestErrorDecision and CompactionTrigger through explicit discriminant switches. End each closed union with assertNever so new variants fail compilation instead of silently inheriting fail or pressure behavior.

This preserves the current retry, fail, pressure, and overflow semantics while aligning the new recovery seams with the repository closed-union contract.
2026-07-19 15:02:11 +08:00
Tianyi Cui
97336c32ce Merge pull request #337 from deepseek-harness/codex/cli-one-shot-demo
feat(examples): add one-shot headless agent demo
2026-07-19 14:53:40 +08:00
Tianyi Cui
306dd2b1fe fix(cli-demo): make failure rendering total
Contain arbitrary plugin and runtime failures even when a thrown Proxy traps instanceof checks or its string coercion throws. Fall back to a stable diagnostic instead of letting executeCli reject outside its exit-code contract.

Route abort reasons through the same total renderer so cancellation cannot escape containment through an exotic reason value.

Add a focused regression that exercises both hostile inspection paths and verifies stdout remains empty, stderr remains labelled, and the CLI resolves with exit code 1.
2026-07-19 14:41:55 +08:00
Tianyi Cui
1698f0baa6 fix(cli-demo): preserve disposal diagnostics
Report context-disposal failure as an independent outcome even when argument, boot, task, or output handling has already produced a primary diagnostic.

Keep the primary error first, append the cleanup error, and retain the nonzero exit status so operators can see both the initiating failure and the possibility that teardown or persistence did not complete.

Add a regression that combines an invalid app composition with a failing disposer and asserts both ordered stderr lines.
2026-07-19 14:41:55 +08:00
Tianyi Cui
ba693f0355 fix(cli-demo): forward the complete spine config
Align the one-shot app with the shared agent-spine contract that landed on master after this branch began. Expose maxParallelToolCalls, dshHome, toolBash, and toolTasks through the Loader schema and route them with pickSpineConfig().

This restores deployment control over tool-call concurrency, the shared Harness home, background bash, and task_output wait bounds instead of silently retaining owner defaults.

Exercise all four fields through the composed runtime, document the package-level contract, and regenerate the config catalog from the owning interface.
2026-07-19 14:41:55 +08:00
Tianyi Cui
ae419fb692 fix(cli-demo): interrupt Loader boot on signals
Race Loader startup with the process abort signal so SIGINT and SIGTERM can settle the one-shot CLI even when initialization has not returned a Context.

If boot settles after cancellation, dispose the late context asynchronously instead of recreating the wait. Contain late boot rejection and report a late disposal failure on stderr.

Cover prompt interruption, late context disposal, late boot rejection, and cleanup failure with focused CLI regressions.
2026-07-19 14:37:47 +08:00
Tianyi Cui
1d43472b35 Merge pull request #386 from deepseek-harness/codex/pi-ai-context-overflow-classification
fix(llm-pi-ai): classify usage-based context overflow
2026-07-19 14:29:23 +08:00
Tianyi Cui
4791b40b26 fix(llm-pi-ai): classify usage-based context overflow
Pass each resolved catalog model capacity into pi-ai stream conversion so the upstream full-message classifier can recognize provider-specific, silent, and length-stop overflow signals. Retain the harness text fallback for legacy provider wording and cover the catalog-resolution path with a mock-provider regression.
2026-07-19 14:18:13 +08:00
Tianyi Cui
2ef9590f33 test(loader-smoke): declare argv lib fixture 2026-07-19 13:51:41 +08:00
Tianyi Cui
595d9acd7a Merge remote-tracking branch 'origin/master' into codex/cli-one-shot-demo
# Conflicts:
#	docs/cookbook/extension-cookbook.i18n.yaml
#	docs/cookbook/extension-cookbook.md
#	docs/cookbook/extension-cookbook.zh.md
#	examples/README.md
#	examples/repl-agent/README.md
#	package.json
#	scripts/gen-doc-graphs.ts
2026-07-19 13:44:34 +08:00
Tianyi Cui
692ef8e61f test: align headless replay with model routing 2026-07-19 13:37:27 +08:00
Tianyi Cui
44d9fbcd6d Merge remote-tracking branch 'origin/master' into codex/pr332-merge-master-20260719
# Conflicts:
#	docs/cookbook/extension-cookbook.i18n.yaml
2026-07-19 13:36:08 +08:00
Tianyi Cui
7747aa450c Merge pull request #380 from deepseek-harness/codex/rename-repl-agent
refactor(examples): rename coding-agent leaf to repl-agent
2026-07-19 13:33:19 +08:00
Tianyi Cui
f4a30da10d chore: align one-shot demo workspace metadata 2026-07-19 13:32:04 +08:00
Tianyi Cui
b0ab117748 Merge remote-tracking branch 'origin/master' into codex/pr332-merge-master-20260719 2026-07-19 13:28:35 +08:00
Tianyi Cui
b2f3d73c1c Merge latest origin/master into codex/rename-repl-agent
Refresh PR #380 against master at ab96fdb63 immediately before landing so the admin merge is evaluated against the current repository contracts rather than the branch's earlier base.

Take the merged SQLite owner-only permission hardening and its regenerated config catalog while preserving the examples/repl-agent rename. The merge leaves examples/coding-agent absent and keeps demo:repl wired to the renamed leaf.
2026-07-19 13:27:44 +08:00
Tianyi Cui
89987f0ad4 docs: align one-shot demo prose 2026-07-19 13:25:30 +08:00
Tianyi Cui
e4709d078b Merge pull request #357 from deepseek-harness/worktree/fix-sqlite-file-permissions
fix(session-persistence): create SQLite databases owner-only
2026-07-19 13:23:08 +08:00
Tianyi Cui
dbe9e307b0 Merge remote-tracking branch 'origin/master' into codex/cli-one-shot-demo
# Conflicts:
#	AGENTS.md
#	README.i18n.yaml
#	README.md
#	README.zh.md
#	docs/architecture.md
#	docs/cookbook/extension-cookbook.i18n.yaml
#	docs/cookbook/extension-cookbook.md
#	docs/cookbook/extension-cookbook.zh.md
#	docs/event-producer-consumer.md
#	docs/graph-atlas.md
#	docs/module-graph.md
#	docs/testing.md
#	examples/README.md
#	examples/coding-agent/README.md
#	package.json
#	packages/examples/README.md
#	scripts/gen-doc-graphs.ts
2026-07-19 13:17:53 +08:00
Tianyi Cui
024b5e38b8 Merge remote-tracking branch 'origin/master' into compact-post-step-overflow-recovery
# Conflicts:
#	docs/cordis-catalog/events.md
#	docs/cordis-catalog/services.md
2026-07-19 13:15:14 +08:00
Tianyi Cui
b95a9052fb Merge latest origin/master into codex/rename-repl-agent
Bring the follow-up branch onto master after PR #379 landed so the rename is reviewed and validated against the current generated Cordis catalog and JSDoc completeness contract.

The histories merge without a content conflict: master's catalog generator changes remain intact, while the repl-agent move continues to own only example paths, front-door naming, and their documentation derivatives.
2026-07-19 13:13:50 +08:00
Tianyi Cui
40ad78ee0b docs: condense merged architecture contract 2026-07-19 13:13:36 +08:00
Tianyi Cui
2faeabb05a refactor(examples): rename coding-agent leaf to repl-agent
Name the runnable leaf for the line-oriented front door it owns, matching the existing tui-agent and acp-agent organization. Move the complete config, Code Mode overlay, tests, metadata, and generated composition graph together, then update every loader path and repository reference.

Keep the shared model identity independent of its terminal front door by phrasing the persona as a coding-agent role rather than retaining the retired leaf name. Regenerate graph and tool catalogs and re-record each affected bilingual pair so derived documentation cannot point at the removed path.
2026-07-19 13:13:14 +08:00
Tianyi Cui
5510b4ec06 Merge remote-tracking branch 'origin/master' into codex/pr357-merge-review-20260719 2026-07-19 13:12:00 +08:00
Tianyi Cui
53c729e00b Merge remote-tracking branch 'origin/master' into codex/cli-one-shot-demo
# Conflicts:
#	AGENTS.md
#	docs/architecture.md
#	docs/capability-seams.md
#	docs/cookbook/extension-cookbook.i18n.yaml
#	docs/event-producer-consumer.md
#	docs/module-graph.md
#	knip.json
#	packages/README.md
#	packages/support/loader-smoke/README.md
#	packages/support/loader-smoke/src/index.ts
#	vitest.snapshot.config.ts
2026-07-19 13:11:50 +08:00
Tianyi Cui
62b91b5893 Merge pull request #379 from deepseek-harness/codex/cordis-catalog-jsdoc
docs: include source JSDoc in Cordis catalog markers
2026-07-19 13:09:17 +08:00
Tianyi Cui
d709a8a1a4 test(acp): await cancelled tool updates 2026-07-19 13:09:16 +08:00
Tianyi Cui
b99008221e Merge remote-tracking branch 'origin/master' into compact-post-step-overflow-recovery
# Conflicts:
#	docs/cookbook/extension-cookbook.i18n.yaml
#	docs/event-producer-consumer.md
2026-07-19 13:06:34 +08:00
Tianyi Cui
edaaa50fe3 test(acp): snapshot cancelled queued tool calls 2026-07-19 13:03:31 +08:00
Tianyi Cui
954c2ad2b5 docs(llm-pi-ai): track overflow classification gap 2026-07-19 13:03:15 +08:00
Tianyi Cui
897dc76d24 Merge remote-tracking branch 'origin/master' into codex/cordis-catalog-jsdoc 2026-07-19 12:59:37 +08:00
Tianyi Cui
3ffc1ce8f5 Merge remote-tracking branch 'origin/master' into codex/pr357-merge-review-20260719 2026-07-19 12:58:57 +08:00
Tianyi Cui
418b2b092b Merge pull request #363 from deepseek-harness/feat/tui-package
feat(ui): add dedicated TUI package
2026-07-19 12:54:20 +08:00
Tianyi Cui
dff38cb6fe Merge remote-tracking branch 'origin/master' into codex/pr357-merge-review-20260719 2026-07-19 12:54:11 +08:00
Tianyi Cui
30d1af3bbc docs: include JSDoc in cordis catalog blocks 2026-07-19 12:52:34 +08:00
Tianyi Cui
bf28e4ae1a Merge latest origin/master into feat/tui-package
Bring the TUI branch onto master after PR #378 landed so PR #363 is evaluated against the current type-equivalence documentation contract.

Resolve the bilingual development-record overlap by regenerating the English/Chinese consistency record from the merged documents. This preserves the branch's built-subprocess guidance alongside master's expanded JSDoc type-equivalence rules.
2026-07-19 12:47:05 +08:00
Tianyi Cui
aa21c0b83f docs(tui): remove demo image assets
Remove the animated, dark, and light terminal captures and their bilingual RFC section. The implemented RFC retains the durable front-door decision and verification contract without carrying binary demo artifacts that need visual maintenance.

Tighten the package README ownership wording and refresh the bilingual consistency record so no repository link or prose claim refers to the removed files.
2026-07-19 12:41:38 +08:00
Tianyi Cui
85ae684887 docs: sync type-equivalent JSDoc 2026-07-19 12:40:56 +08:00
Tianyi Cui
86a8046c44 Merge remote-tracking branch 'origin/master' into compact-post-step-overflow-recovery 2026-07-19 12:38:44 +08:00
Tianyi Cui
114ceee293 Merge pull request #378 from deepseek-harness/codex/type-equiv-jsdoc-docs
docs: include JSDoc in type-equiv blocks
2026-07-19 12:38:00 +08:00
Tianyi Cui
7538cef967 docs(agent): describe cancelled post-step checkpoint 2026-07-19 12:35:43 +08:00
Tianyi Cui
1bdee08c21 Merge branch 'master' into feat/tui-package 2026-07-19 12:31:53 +08:00
Tianyi Cui
d6de23d674 Merge remote-tracking branch 'origin/master' into codex/type-equiv-jsdoc-docs 2026-07-19 12:25:54 +08:00
Tianyi Cui
5dcf6095cb docs: include JSDoc in type-equiv blocks 2026-07-19 12:25:40 +08:00
Tianyi Cui
0c41ba7ead Merge remote-tracking branch 'origin/master' into compact-post-step-overflow-recovery
# Conflicts:
#	docs/capability-seams.md
2026-07-19 12:23:59 +08:00
Tianyi Cui
ca11085a8f Merge remote-tracking branch 'origin/master' into codex/pr357-merge-review-20260719 2026-07-19 12:19:28 +08:00
Tianyi Cui
7bf0250604 Merge pull request #377 from deepseek-harness/codex/retire-subagent-mock
refactor(subagent): retire the standalone mock package
2026-07-19 12:18:38 +08:00