Commit Graph

884 Commits

Author SHA1 Message Date
Tianyi Cui
633a18269d Merge branch 'codex/simp-trim-hook-snapshot-noise' into codex/simp-compaction-surface 2026-07-14 11:53:59 +08:00
Tianyi Cui
99d2d5a092 Merge branch 'codex/simp-shared-acp-test-launcher' into codex/simp-trim-hook-snapshot-noise 2026-07-14 11:53:55 +08:00
Tianyi Cui
795371a209 Merge branch 'codex/simp-snapshot-fixture-inventory' into codex/simp-shared-acp-test-launcher
# Conflicts:
#	examples/acp-agent/tests/acp.e2e.ts
#	examples/acp-agent/tests/escalation.e2e.ts
#	examples/acp-agent/tests/hooks.e2e.ts
#	packages/support/acp-snapshot/src/harness.ts
2026-07-14 11:53:45 +08:00
Tianyi Cui
fd5ee06a97 Merge branch 'codex/simp-session-log-representation' into codex/simp-snapshot-fixture-inventory 2026-07-14 11:49:56 +08:00
Tianyi Cui
4d5fb2cb1d Merge branch 'codex/simp-session-dead-surface' into codex/simp-session-log-representation
# Conflicts:
#	docs/core-data-structures/session.md
#	docs/rfc/implemented/feature/2026-07-06-sandbox.md
#	examples/acp-agent/tests/snapshots/permission-switching/system-prompt.golden.md
#	examples/sandbox-acp-agent/tests/acp.snapshot.ts
#	examples/sandbox-acp-agent/tests/snapshots/mode-switching/session.jsonl
#	packages/core/session/README.md
#	packages/core/session/src/index.ts
#	packages/core/session/src/surface.ts
#	packages/core/session/tests/surface.spec.ts
#	scripts/type-equiv.manifest.json
2026-07-14 11:49:46 +08:00
Tianyi Cui
34fe20962f Merge remote-tracking branch 'origin/master' into codex/simp-session-dead-surface
# Conflicts:
#	packages/core/session/src/surface.ts
2026-07-14 11:39:11 +08:00
Tianyi Cui
8780a73750 Merge branch 'master' into session-query 2026-07-14 10:53:25 +08:00
Hypatia May
e9f0c37745 Merge remote-tracking branch 'origin/master' into session-query
# Conflicts:
#	docs/rfc/INDEX.md
#	packages/README.md
2026-07-14 08:36:06 +08:00
Tianyi Cui
d7de8a8d13 refactor: narrow compaction surface 2026-07-14 01:24:20 +08:00
Tianyi Cui
c378dbf36a Merge remote-tracking branch 'origin/master' into unify-acp-example 2026-07-14 01:11:37 +08:00
Tianyi Cui
e3d7bb62d8 fix(permission): address human review feedback 2026-07-14 01:09:44 +08:00
Tianyi Cui
f95a411b0a fix: record self-limiting hook snapshot 2026-07-14 01:09:07 +08:00
Tianyi Cui
dbf23bd7b1 Merge branch 'codex/simp-shared-acp-test-launcher' into codex/simp-trim-hook-snapshot-noise 2026-07-14 01:05:16 +08:00
Tianyi Cui
8f99e424c4 Merge branch 'codex/simp-snapshot-fixture-inventory' into codex/simp-shared-acp-test-launcher 2026-07-14 01:04:00 +08:00
Tianyi Cui
2a75f0893a Merge branch 'codex/simp-session-log-representation' into codex/simp-snapshot-fixture-inventory 2026-07-14 01:02:41 +08:00
Tianyi Cui
cdc3522e48 Merge remote-tracking branch 'origin/master' into unify-acp-example
# Conflicts:
#	docs/config-catalog.md
#	docs/module-graph.md
#	pnpm-lock.yaml
2026-07-14 00:56:28 +08:00
Tianyi Cui
461c0c598c Merge branch 'codex/simp-session-dead-surface' into codex/simp-session-log-representation 2026-07-14 00:54:55 +08:00
Tianyi Cui
36a4b16f18 Merge remote-tracking branch 'origin/master' into codex/simp-session-dead-surface 2026-07-14 00:53:26 +08:00
Tianyi Cui
e0f9805030 Merge branch 'codex/simp-shared-acp-test-launcher' into codex/simp-trim-hook-snapshot-noise 2026-07-14 00:40:14 +08:00
Tianyi Cui
dd3941af99 Merge branch 'codex/simp-snapshot-fixture-inventory' into codex/simp-shared-acp-test-launcher 2026-07-14 00:38:11 +08:00
Tianyi Cui
bbddd782fd Merge branch 'codex/simp-session-log-representation' into codex/simp-snapshot-fixture-inventory
# Conflicts:
#	examples/acp-agent/tests/acp.snapshot.ts
2026-07-14 00:36:28 +08:00
Tianyi Cui
788fb48d4c Merge branch 'codex/simp-session-dead-surface' into codex/simp-session-log-representation
# Conflicts:
#	docs/event-producer-consumer.md
2026-07-14 00:34:46 +08:00
Tianyi Cui
dc36ec9d52 Merge remote-tracking branch 'origin/master' into codex/simp-session-dead-surface
# Conflicts:
#	packages/session-persistence/session-persistence-jsonl/src/index.ts
2026-07-14 00:31:38 +08:00
Tianyi Cui
b579a13db7 test: trim PostToolUse snapshot retries 2026-07-14 00:28:20 +08:00
Tianyi Cui
53d9634043 chore: tighten TypeScript duplication lint 2026-07-14 00:24:04 +08:00
Tianyi Cui
0e7d539bbc refactor: share the ACP test launcher 2026-07-14 00:18:00 +08:00
Tianyi Cui
e481288a3a refactor: derive snapshot session fixtures from disk 2026-07-14 00:04:11 +08:00
Tianyi Cui
1123e946c0 refactor: simplify session log representation 2026-07-13 23:56:10 +08:00
Tianyi Cui
56a1b23cc1 Merge remote-tracking branch 'origin/worktree-singleexe' into codex/pr253-fixes 2026-07-13 23:32:14 +08:00
Tianyi Cui
cf89226510 test(pkg): snapshot advanced Python SDK executable flow
The existing assertion-only executable smoke proved selected outputs but could not detect drift across the integrated Python SDK, JSON-RPC notification stream, and persisted session shape.

Keep this separate from ACP snapshots because it must launch the actual platform-native packaged executable through the Python SDK. The deterministic model drives Cordis dynamic tool mounting, a Code Mode worker dispatch, direct spawn delegation, workflow-worker delegation, plugin disposal, and the parent/child persistence lineage.

Commit four portable goldens for the SDK result and three JSONL logs. Normalize timestamps, temporary paths, opaque session and agent identifiers, and bulky request headers while retaining ordering, tool names and arguments, header deltas, results, lineage, and final responses so all native build legs compare the same behavior.

Run the comparison in the label-gated executable build workflow and document the current coverage in the paired implemented RFC.
2026-07-13 23:31:26 +08:00
Tianyi Cui
d060c0dd4f refactor: prune dead session surfaces 2026-07-13 23:25:20 +08:00
Yichen Jiang
4a4566c922 Merge branch 'master' into worktree-singleexe 2026-07-13 22:57:11 +08:00
Tianyi Cui
be67ca41ca docs: address review bot feedback 2026-07-13 22:29:23 +08:00
Tianyi Cui
24e6b90bff Merge remote-tracking branch 'origin/master' into codex/pr224-simplification-audit
# Conflicts:
#	docs/rfc/INDEX.md
2026-07-13 22:26:51 +08:00
Tianyi Cui
522a570cc7 Merge branch 'master' into rfc/interactive-side-sessions 2026-07-13 22:16:01 +08:00
Tianyi Cui
b49c37f83a docs(i18n): align single-exe terminology
Add canonical Chinese bindings for build target, deploy root, peer
dependency, serving surface, wheel, wrapper, and VFS so future translations
have one source of truth. Apply the existing runtime, plugin, artifact, and
pipeline bindings throughout every Chinese counterpart touched by this PR.

Require the first Chinese use of peer dependency to retain the English term
so readers can map it back to the package-manager concept without
reintroducing mixed prose throughout the document.

Rewrite mixed-language prose where the English term is not an identifier,
while retaining package names, paths, flags, pkg, single-exe, and other
literal names exactly. Explain VFS on first use and keep technical constraints
readable without inventing compatibility terminology.

Describe single-executable worker support as implemented behavior, including
the filesystem-string entry contract and CommonJS worker artifact required by
the pkg loader, and remove the obsolete bundled-but-unsupported limitation.

Regenerate pairing fingerprints and the generated catalog reference so the
mechanical documentation gates validate the revised English and Chinese
pairs. This keeps the terminology table authoritative and prevents the two
languages from drifting as the runtime documentation evolves.
2026-07-13 22:09:41 +08:00
Tianyi Cui
35804737fa docs: address simplification RFC review 2026-07-13 21:55:38 +08:00
Tianyi Cui
ebcfab1621 fix(pkg): support worker-backed tools in single exe
pkg stores application files in a virtual filesystem, and its
worker_threads hook discovers worker entry points only when they are passed
as filesystem strings. Convert the code-runtime entry with fileURLToPath()
and return the workflow built entry as a string while retaining its
source-mode data URL bootstrap.

Emit worker entry bundles as CommonJS .cjs files. pkg executes a VFS-backed
string-path worker through Module._compile, so an ESM-only entry can be
present in the executable yet still fail when launched. Keep the public hosts
ESM, adapt worker startup accordingly, and align exports, package file lists,
workspace constraints, documentation, and built-worker tests with the actual
artifact format.

Expand the custom-config executable smoke to load the Code Mode and workflow
plugins and script real run_code and zero-agent workflow calls. Require both
tools to return 42 from workers launched inside the pkg VFS, turning worker
support from an asset-presence assumption into an end-to-end runtime
contract.

Update the implemented RFC and verification gates to describe and exercise
the supported built-worker path. This adds no tool or JSON-RPC protocol shape;
it fixes how existing worker-backed capabilities are located and executed in
the single-file distribution.
2026-07-13 21:40:33 +08:00
Yichen Jiang
fe3777cf27 python: derive release version from repository 2026-07-13 17:49:01 +08:00
Yichen Jiang
ef2754110a ci: retain only Python release wheels 2026-07-13 17:02:56 +08:00
Yichen Jiang
cdd11ac587 ci: validate and publish Python runtime wheels 2026-07-13 16:34:16 +08:00
imccyu
81f6aeca3b single-exe: build-exe PR label as a second explicit trigger for the exe workflow 2026-07-13 15:50:09 +08:00
imccyu
ade150b719 python: deepseek-harness SDK and runtime carrier packages 2026-07-13 15:50:09 +08:00
imccyu
67fe6c10b6 jsonrpc: SDK serving surface as plugins (dsh-jsonrpc + dsh-jsonrpc-agent) 2026-07-13 15:50:09 +08:00
imccyu
b96fea90f3 rfc: single-file executable SDK runtime distribution (single-exe) 2026-07-13 15:49:07 +08:00
Tianyi Cui
90adf1003f docs: refine simplification audit after master merge 2026-07-13 15:06:54 +08:00
kingwl
95635dfa66 feat(permission): user-facing permission presets — one Permissions select over the two knobs
A preset names a bundle of the two mechanism knobs — request =
workspace-write + ask, yolo = danger-full-access + never — so the editor
shows ONE 'Permissions' select where the sandbox-mode and approval-policy
tiers stay orthogonal capabilities (the Codex /approvals shape: presets over
two dials). ctx.permission (dsh-permission) owns the config-defined table,
validates the default preset's bundle against the composed knob defaults at
load (fails loud), and writes a switch THROUGH: one log-only
permission/preset event (the audit fact reverse-mapping cannot recover —
the planned 'agent' preset shares request's knob values and differs only in
composed policy) plus each knob event via its own setter, deduped — a
net-zero switch appends nothing. Every knob consumer keeps reading its own
fold, untouched.

The current preset DERIVES from the effective knob values — the fold breaks
bundle ties, a knob state outside the table is the reserved 'custom' value
(a state, not an error: shown while it holds, switchable FROM, never a
target), and defaultPreset disappears (zero-event state reverse-maps from
the composition defaults).

The ACP bridge drops the two per-knob selects for the one preset select
(advertised only when ctx.permission is composed); pending/anchor/no-op
semantics carry over unchanged, with the no-op echo acknowledged before
vocabulary validation so a client re-pushing a derived 'custom' current
never errors. The sandbox variant example composes the
service with a workspace-write default; the permission-switching,
escalation-approved and escalation-rejected scenarios are re-recorded under
it (escalations now target an outside-workspace /tmp path under
danger-full-access, self-cleaning) and config-options is re-authored on the
single-select wire.
2026-07-13 14:38:26 +08:00
kingwl
624d8d5df4 refactor(examples): fold the sandbox composition into acp-agent as its variant
sandbox-acp-agent's whole surface moves into examples/acp-agent following
the example's existing multi-variant shape (the code-mode/both-mode
overlays): sandbox.cordis.yml + its replay overlay, the four snapshot
scenarios (config-options / mode-switching / escalation-approved /
escalation-rejected) as a 'sandbox' header class over per-scenario
configPath — goldens byte-identical, zero re-recording — and
escalation.e2e.ts unchanged apart from the config path. One ACP example
remains; demo:sandbox-acp keeps its name and boots the variant. References
(both RFCs, group/package READMEs, the examples table and test map, the
e2e workflow comment) now point at the variant.
2026-07-13 14:37:59 +08:00
Hypatia May
00bfc03d20 Merge remote-tracking branch 'origin/master' into session-query
# Conflicts:
#	docs/core-data-structures/core.md
#	docs/module-graph.md
#	docs/rfc/INDEX.md
#	vendor/README.md
2026-07-13 14:27:31 +08:00
Tianyi Cui
e07899ce26 Merge remote-tracking branch 'origin/worktree-agent-scope-design' into codex/pr224-simplification-audit
# Conflicts:
#	docs/config-catalog.md
#	docs/cordis-catalog/services.md
2026-07-13 13:47:08 +08:00