Commit Graph
128 Commits
Author SHA1 Message Date
imccyu 00d541438b release(dsh): 0.2.2-alpha.2 2026-10-28 02:03:15 +08:00
imccyu 69c389ae11 release(dsh): 0.2.2-alpha.1 2026-10-28 00:00:58 +08:00
imccyu 6a19d120c9 Merge master into DSH 0.2.1-rc.4 synchronization branch 2026-10-26 16:18:13 +08:00
imccyu 3014b0af0f Merge master into DSH 0.2.1-rc.4 synchronization branch 2026-10-26 01:29:12 +08:00
imccyu 341beb33c0 release(dsh): 0.2.1-rc.4 2026-10-26 00:57:37 +08:00
_Kerman dc3754d252 Merge remote-tracking branch 'origin/master' into xtr/ptc-vm-script
# Conflicts:
#	docs/module-graph.md
#	docs/module-graph.zh.md
#	packages/ptc-runtime/ptc-runtime-node/package.json
2026-10-23 17:09:31 +08:00
imccyu 14f0b2aafe Merge master into DSH 0.2.1-rc.3 synchronization branch 2026-10-23 11:56:34 +08:00
imccyu d02ea370ee release(dsh): 0.2.1-rc.3 2026-10-23 01:11:35 +08:00
07akioni 84edeadc2b feat(i18n): add Spanish French German Russian and Portuguese 2026-10-22 19:53:52 +08:00
_Kerman 67911ed176 fix(ptc): describe fresh Script failures without retained state 2026-10-21 19:51:52 +08:00
_Kerman 09c7036e05 fix(ptc): retain control transport errors in worker exit diagnostics 2026-10-21 19:51:51 +08:00
_Kerman c905726461 fix(ptc): allow local process declarations in function bodies 2026-10-21 19:51:50 +08:00
_Kerman 25ede01a8b fix(ptc): preserve compact declarations and native syntax diagnostics 2026-10-21 19:51:49 +08:00
_Kerman 7c86126642 Merge latest master into xtr/ptc-vm-script 2026-10-21 18:25:41 +08:00
_Kerman b43a01e285 Merge master into xtr/session-store-write-lifecycle 2026-10-21 18:16:23 +08:00
_Kerman 5dcb912b1b refactor(cua): delegate retained execution settings to Node provider 2026-10-21 16:47:32 +08:00
_Kerman ac0816e573 refactor(ptc-runtime-node): centralize cross-realm exception formatting 2026-10-21 16:47:08 +08:00
_Kerman 73a5e63894 fix(ptc-runtime-node): report clearing only for retained executions 2026-10-21 16:46:56 +08:00
_Kerman 8d0277d029 test(ptc-runtime-node): allow platform-sized REPL diagnostics 2026-10-21 16:46:26 +08:00
07akioni ed783066e6 fix(i18n): complete Japanese plugin metadata and guard locale coverage 2026-10-21 16:14:12 +08:00
_Kerman 4b06d5bf80 refactor(ptc-runtime-node): remove unused bootstrap paths 2026-10-21 16:00:30 +08:00
_Kerman 2b7b2a0ee6 refactor(ptc): share the program format type 2026-10-21 15:59:56 +08:00
_Kerman 6085b6fb62 Merge latest master into xtr/ptc-vm-script 2026-10-21 15:12:47 +08:00
_Kerman d6dc8890b9 Merge github/master into xtr/session-store-write-lifecycle 2026-10-21 15:01:22 +08:00
_Kerman b5131b4ae1 test(ptc): cover defaults and align CUA fixtures with launch modes 2026-10-21 11:25:07 +08:00
_Kerman 86fcf49a74 fix(ptc-runtime-node): validate Script evaluation and process lifecycle 2026-10-21 11:12:33 +08:00
_Kerman 94dae61fb5 fix(ptc-runtime-node): keep per-call binding waits pending when the host closes
Closing the control pipe after the result rejected outstanding birpc
calls; an unawaited binding promise then crashed the child and its trace
reached the result logs. Once the result is returned or the pipe closes,
binding calls now never settle, including those the closure rejects.
2026-10-21 10:30:31 +08:00
_Kerman 16f0e2fc69 docs(ptc-runtime): explain Script retention and consumer migration 2026-10-21 00:37:56 +08:00
_Kerman e82dddc45c fix(ptc-runtime-node): correct Script await handling and guidance 2026-10-21 00:37:56 +08:00
_Kerman c3473d1ea6 refactor(ptc-runtime-node): unify temporary and retained processes 2026-10-21 00:03:21 +08:00
_Kerman 399a74e808 refactor(ptc-runtime-node): simplify evaluator binding setup 2026-10-21 00:02:56 +08:00
_Kerman 36820a5462 refactor(ptc-runtime-node): share the fake child and fold result validation into the protocol
Move the identical in-memory child used by the per-call and persistent
host specs into tests/fake-child.ts, and move readProgramResult next to
the ProgramResult type it validates in protocol.ts.
2026-10-20 23:55:36 +08:00
_Kerman 7bab95f8da refactor(ptc-runtime-node): rely on birpc defaults for message handling
Keep the stream side owned here: line bounds, the leading-brace check,
the write-queue limit and closure. On the birpc side, drop the strict
envelope validation, falsy-rejection normalization and fatal UTF-8
decoding. Calls to methods an endpoint does not own are answered with
birpc's error and unknown messages are ignored; the resolver still runs
only own methods and none after the endpoint closes.
2026-10-20 23:28:27 +08:00
_Kerman 7745b3b9da feat(ptc-runtime-node): add VM Script execution with optional retained state 2026-10-20 23:16:30 +08:00
_Kerman 1f45e38279 feat(ptc-runtime): expose Script syntax and state retention 2026-10-20 23:16:24 +08:00
_Kerman 427d62d4a7 fix(ptc-runtime-node): fail fast on mismatched bootstraps and late replies
- Reject a control line that does not start with "{", so another
  release's length-prefixed frame fails as a protocol error instead of
  waiting for a newline until the deadline.
- Bump SSH_PROTOCOL_VERSION to 3: executable helpers embed the PTC
  worker, so an older helper is now rejected while connecting.
- Send a small error instead of a late binding result from a finished
  persistent evaluation, so it cannot overflow the pipe shared with
  the next evaluation.
- Leave per-call binding waits pending after the result instead of
  rejecting them; unawaited calls crashed the child and leaked the
  trace into the result logs.
- Pin birpc to 4.2.0 so the host and the bundled child agree, and
  regenerate THIRD_PARTY_NOTICES.md.
- Update stale frame wording.
2026-10-20 16:06:50 +08:00
_Kerman 82b23cf4d2 refactor(ptc-runtime-node): drop evaluation ids from the control protocol
One pipe delivers each evaluation's messages before its result, and the
child refuses calls from finished evaluations, so the per-message
evaluation id protected nothing. Remove it with the checks, counters and
helpers it required, measure outgoing messages only when posting, and
replace rethrowing validation blocks with early refusals.
2026-10-20 15:15:04 +08:00
_Kerman 534aafce7a refactor(ptc-runtime-node): carry the process control channel over birpc
Replace the length-prefixed JsonChannel and hand-written request/reply
correlation with typed birpc methods over newline-delimited JSON. The
host calls the child's run(); bindings call the host's invoke(); logs
and output-limit reports are notifications. The transport bounds
incoming lines and queued writes, validates UTF-8 and exposed methods,
and rejects outstanding calls when the pipe closes.

Drop logic made obsolete by the new transport, including the 32-bit
frame-length bound on maxMessageBytes.
2026-10-20 14:50:05 +08:00
_Kerman cc0e980e48 fix(session): align store-owned writes with lifecycle notifications 2026-10-20 11:33:44 +08:00
Tianyi Cui 64ece4cac1 fix(sandbox): reject redirected and unsupported write grants 2026-10-18 11:10:00 +08:00
Tianyi Cui 6b71dcad85 fix(sandbox): support explicit additional writable roots 2026-10-18 11:10:00 +08:00
imccyu d1b9c04067 release(dsh): 0.2.1-rc.2 2026-10-17 15:10:31 +08:00
imccyu c6e89e6755 release(dsh): 0.2.1-rc.1 2026-10-16 21:39:18 +08:00
imccyu 0a49d91bb2 release: setup next release version for [email protected] 2026-10-16 16:17:09 +08:00
imccyu f2235d6c02 release(dsh): 0.2.1-alpha.4 2026-10-15 20:00:58 +08:00
Yichen Jiang 36acfb1e88 release(dsh): 0.2.1-alpha.3 2026-10-14 19:38:37 +08:00
Tianyi Cui dd15a5d066 test(ptc): cover provider unload during policy cleanup
Hold cleanup of an older retained process while a newer call is waiting, then unload the provider. Require the pending call to reject after disposal without starting another process.

Validation: 305 focused tests passed, one skipped; persistent.ts, index.ts, and policy-processes.ts have 100% statements, branches, functions, and lines. Removing the shutdown guard makes the new regression fail.
2026-10-10 22:39:34 +08:00
Tianyi Cui 9d385cd0d9 Merge master into persistent PTC
Preserve the persistent runtime package description with master's alpha.2 version and locale exports. Refresh the two PTC prompt snapshots for the current plan-tool result type.

Validation: full build, 434 focused tests (one skipped), two built-runtime tests, two selected snapshots, package metadata, and all 43 doc-sync checks passed.
2026-10-10 21:55:44 +08:00
ZiyaandZiyaZhang c7d61ecc11 fix(i18n): 补充内置插件中文文案并精简清单展示 (#5506)
* fix(i18n): add Chinese names and descriptions for built-in plugins

* fix(i18n): keep built-in plugin localization metadata-only

---------

Co-authored-by: ZiyaZhang <[email protected]>
2026-10-09 17:18:26 +00:00
imccyu 73dbbb751c docs: give architecture review rules a per-artifact home
Move `docs/defensive-patterns.md` into `docs/defensive-patterns/`, one page per
artifact plus a README router, and state each rule as its requirement, the
condition a reviewer judges it by, its boundary and approver, and a correct and
a wrong example.

- `general.md` (the moved page): the existing bug-class rules plus timing,
  value representation, shared-state ownership, decentralization, performance
  evidence, and migrations.
- `package-surface.md`, `remote-and-api.md`, `client-components.md`,
  `conversation-and-session.md`: the review requirements for those artifacts,
  linking type definitions and semantics to `docs/subsystems/` instead of
  restating them.
- `README.md`: the habits behind the rules and the route from artifact to page.
- `dsh-code-review` reads the owning pages before judging a diff; the
  `dsh-architecture-discipline` routing skill is retired in favour of the
  directory, and every inbound reference is repaired.
- Chinese counterparts, pairing records, and the documentation tier table are
  updated together.
2026-10-09 23:03:56 +08:00