dsh-completion-guard 0.3.2 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -29,15 +29,15 @@ Authority rules:
29
29
  values are pinned in `tests/fixtures/conformance/UPSTREAM_PIN.json`; the
30
30
  vitest suite fails when any mirror drifts from its pinned hash.
31
31
  - `UPSTREAM_PIN.json` records the upstream head at mirror time, the mirror
32
- date, and per-file hashes. The canonical files were created in an upstream
33
- working tree pending commit, so `canonicalCommit` is `pending` until the
34
- upstream commit that lands them exists; refresh the pin when re-syncing.
32
+ date, and per-file hashes. Its current `canonicalCommit` is the landed
33
+ upstream commit `b59fcfe1aaf8ead3f0438bc67dc7f725c869a473`; refresh the pin
34
+ whenever the mirrors are re-synced.
35
35
  - New protocol cases discovered on the DSH side are turned into
36
36
  platform-neutral fixture cases upstream first; host-specific expectations
37
37
  never enter the shared fixture.
38
- - `docs/UPSTREAM_BASE.md` records the historical v0.1.0 baseline. It is a
39
- historical fact, not a claim that DSH implements Codex protocol versions;
40
- current alignment status lives in this document and the delta ledger.
38
+ - `docs/UPSTREAM_BASE.md` records the Codex v0.8.8 source used for the first
39
+ DSH v0.1.0 port. It is a historical fact, not the current alignment claim;
40
+ current status lives in this document and the delta ledger.
41
41
 
42
42
  ## Digest v3
43
43
 
@@ -79,9 +79,18 @@ event vocabulary `root_message`, `delegated_message`, `tool_result`,
79
79
  runner executes every mirrored case without skips and compares the bounded
80
80
  result contract; it does not translate a missing capability into a pass.
81
81
 
82
- ## Current alignment status (honest boundaries)
82
+ ## Current 0.4.0 alignment status
83
83
 
84
- Implemented in v0.3.0:
84
+ The semantic implementation described here entered the DSH `0.4.0` line from implementation baseline `ffc6fe9e1246a815f0bb630943c59d14b6505716`. The shared-contract reference is the Codex `0.10.0` source at `e4fccf690bcbc2be79d0b8d42a1a269f87072120`; this covers only the named contracts, not full product parity. Exact release commit, artifact, native-platform, and publication identities are recorded outside this semantic document because each is a separate evidence scope.
85
+
86
+ The 0.4.0 implementation baseline keeps the v0.3 digest and conformance work and adds:
87
+
88
+ - Proof obligations that must name a current pending item and use evidence matching the requested kind, surface, subject, operation, and outcome.
89
+ - Bounded subject readback, scope coverage, state verification, and replayable `sessionQuery` state.
90
+ - Fail-closed rejection for tampered asset or scope digests, empty subject sets, and evidence imported from another session.
91
+ - The alpha.3 host cohort as the implementation baseline: DSH `0.1.2-alpha.3`, dshmarket `1.39.0`, and Cordis `4.0.2`.
92
+
93
+ Retained from v0.3.0:
85
94
 
86
95
  - Digest v3 derivation, byte-mirror pinning, and 29-vector agreement.
87
96
  - All-case portable semantic fixture runner implemented as a thin adapter over production derive/checkpoint/boundary/Goal/stop functions, without fixture-ID rewrites or skipped cases.
@@ -94,14 +103,9 @@ Implemented in v0.3.0:
94
103
  the Guard-owned `update_goal(action=complete)` path.
95
104
  - Legacy generic-run and unprovable-authority fail-closed migration behavior.
96
105
 
97
- This is not a full product-parity claim. It does not copy the Codex private
98
- ledger, Hook lifecycle, cache, or installer, and it cannot prevent all trusted
99
- in-process Goal/session bypasses. Exact-artifact isolated Web/Headless install,
100
- host-lock readback, Web restart lifecycle, and Headless load were exercised on
101
- native macOS and Windows, with cross-platform CI and a bounded credentialed
102
- model-session evidence/boundary round. Source, native-platform, model-session,
103
- registry, tag, and GitHub Release evidence remain separate scopes; see
104
- `LOCAL_ACCEPTANCE.md`.
106
+ This is not a full product-parity claim. It does not copy the Codex private ledger, Hook lifecycle, cache, or installer, and it cannot prevent all trusted in-process Goal/session bypasses.
107
+
108
+ Main CI run `33540907051` passed the implementation baseline. The release commit adds the packaged documentation and must pass its own CI; its deterministic tgz must then pass same-byte native macOS and Windows acceptance before publication. Historical candidate results remain bound to their recorded SHA-256 values and never transfer to changed bytes; see [`LOCAL_ACCEPTANCE.md`](LOCAL_ACCEPTANCE.md).
105
109
 
106
110
  ## Validation boundaries
107
111
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  This repository ports deterministic semantics from an existing Codex product; it is a new, independently owned repository with a fresh history.
4
4
 
5
- ## Semantic baseline
5
+ ## Historical starting point
6
6
 
7
7
  - Repository: `https://github.com/GreenLv/codex-context-guard`
8
8
  - Version: `v0.8.8`
@@ -11,6 +11,13 @@ This repository ports deterministic semantics from an existing Codex product; it
11
11
  - License: Apache-2.0
12
12
  - Key contracts: private state schema 7, Proof protocol 1.0.0, Stop protocol 1.1.0
13
13
 
14
+ These values identify the source used for the first DSH port. They do not say
15
+ that current DSH behavior stops at Codex v0.8.8 or fully matches a later Codex
16
+ release. Current shared behavior and remaining gaps are tracked in
17
+ [`SEMANTIC_COMPATIBILITY.md`](SEMANTIC_COMPATIBILITY.md),
18
+ [`upstream-deltas.json`](upstream-deltas.json), and the pinned conformance
19
+ fixtures.
20
+
14
21
  ## Reused vs replaced
15
22
 
16
23
  Reused as behavior: canonicalization, hashing, stable identity, requirement/acceptance/prohibition capture, append-only supersession, evidence outcome classification, subject/surface matching, proof and stop semantics, recovery priority, completion classification.
@@ -25,7 +25,23 @@ version and annotated tag are retained for audit history; the npm version is
25
25
  deprecated with `Release metadata incomplete; use dsh-completion-guard@0.3.1.`
26
26
  Version 0.3.1 repairs the provenance-bearing frozen-package workflow.
27
27
 
28
- ## Published v0.3.1 destinations
28
+ ## Published v0.3.2 destinations
29
+
30
+ 1. [GitHub Release `v0.3.2`](https://github.com/GreenLv/dsh-completion-guard/releases/tag/v0.3.2)
31
+ is the latest non-draft, non-prerelease release. Its annotated tag peels to
32
+ release commit `22cde6106cdca511265bb4103375a263a0762b9c`. The attached
33
+ frozen tgz has SHA-256
34
+ `feb7fc29799820e08dfe6d2bdb94823e745df9b5aa7c34d46262e5df30dabac4`;
35
+ the separate `SHA256SUMS.txt` asset binds the same bytes.
36
+ 2. [`dsh-completion-guard@0.3.2` on npm](https://www.npmjs.com/package/dsh-completion-guard/v/0.3.2)
37
+ is published and `latest` resolves to `0.3.2`. The registry `gitHead`
38
+ equals the release commit, and a fresh registry download is byte-identical
39
+ to the frozen release tgz.
40
+ 3. Source commit, tag, CI, native macOS and Windows acceptance, npm metadata
41
+ and bytes, and both GitHub assets are reconciled in
42
+ [`docs/LOCAL_ACCEPTANCE.md`](LOCAL_ACCEPTANCE.md).
43
+
44
+ ## Earlier v0.3.1 destinations
29
45
 
30
46
  1. [GitHub Release `v0.3.1`](https://github.com/GreenLv/dsh-completion-guard/releases/tag/v0.3.1)
31
47
  is published as a non-draft, non-prerelease release. Its annotated tag
@@ -52,7 +68,7 @@ install target.
52
68
 
53
69
  | Channel | Entry | Status | Evidence |
54
70
  |---|---|---|---|
55
- | [awesome-dsh-plugin](https://github.com/awesome-dsh-plugin/awesome-dsh-plugin) | `GreenLv/dsh-completion-guard` (category `security`) | Listed | Added via [PR #3693](https://github.com/awesome-dsh-plugin/awesome-dsh-plugin/pull/3693) (merge commit `299f0b5c`, 2026-08-29); read back live the same day from the generated `README.md` (line 2469, security-category section) and `README.zh.md`, the committed `data/plugins/GreenLv__dsh-completion-guard.yml`, and the published catalog at [`awesome-dsh-plugin.com/plugins.json`](https://awesome-dsh-plugin.com/plugins.json), which exposes the storefront page [`awesome-dsh-plugin.com/p/GreenLv/dsh-completion-guard/`](https://awesome-dsh-plugin.com/p/GreenLv/dsh-completion-guard/). Screenshots: declared in this repository's [`screenshots.json`](../screenshots.json) per the maintainer's post-#2937 convention (change images by pushing here; no listing PR needed). |
71
+ | [awesome-dsh-plugin](https://github.com/awesome-dsh-plugin/awesome-dsh-plugin) | `GreenLv/dsh-completion-guard` (category `security`) | Listed | Added via [PR #3693](https://github.com/awesome-dsh-plugin/awesome-dsh-plugin/pull/3693) (merge commit `299f0b5c`, 2026-08-29). The shorter plain-language English and Chinese descriptions merged via [PR #3977](https://github.com/awesome-dsh-plugin/awesome-dsh-plugin/pull/3977) (merge commit `bdf5145`, 2026-09-01) and were read back from the current generated READMEs, source YAML, and public [`plugins.json`](https://awesome-dsh-plugin.com/plugins.json). The detail page still showed the earlier wording and GitHub install command at readback, so that page refresh remains pending. Screenshots are declared in this repository's [`screenshots.json`](../screenshots.json); image changes do not need a listing PR. |
56
72
  | [dsh-market](https://dsh-market.com/) | `dsh-completion-guard` (Tools / Development workflow) | Listed | Added via [PR #1285](https://github.com/zhu1090093659/dsh-web/pull/1285) (merge commit `be426da`, 2026-08-31); read back on 2026-09-01 from the public [`manifest/plugins.json`](https://dsh-market.com/manifest/plugins.json) at rank 51. The market reads the listing text from its community index; npm download counts and likes are updated separately by the site. |
57
73
  | [Awesome DeepSeek Harness](https://github.com/Dominic789654/awesome-deepseek-harness#security--permissions) | `GreenLv/dsh-completion-guard` | Listed | Rows merged via [PR #332](https://github.com/Dominic789654/awesome-deepseek-harness/pull/332) (merge commit `ba414c4`, 2026-08-29) and read back live the same day from both generated READMEs (`README.md` line 940, `README.zh-CN.md` line 946), under **Security & Permissions** alongside the other fail-closed gates and verifier plugins. |
58
74
 
@@ -199,11 +199,11 @@
199
199
  },
200
200
  {
201
201
  "capability": "surface-intent-and-capability-binding",
202
- "sourceFact": "Codex v0.9.4 carries the deterministic proof contract surface classifier whose substring misclassification and capability adaptation gaps are scheduled for repair in v0.9.5/v0.10.0 (canonical locator, capability trust root, clause-level surface intent).",
202
+ "sourceFact": "Published Codex v0.9.5 narrows UI wording detection and binds task, file, Windows-path, and capability evidence to the exact item that was read.",
203
203
  "disposition": "deferred",
204
204
  "targetRelease": "dsh-completion-guard v0.4.0",
205
- "rationale": "DSH Layer B reuses the Codex canonical locator, capability priority, and clause-derived surface tuple semantics via portable fixtures after the Codex repair lands; DSH must not fork its own binding rules.",
206
- "planStatus": "deferred until Codex v0.9.5/v0.10.0 semantics freeze",
205
+ "rationale": "DSH should port the published Codex locator, capability priority, and clause-level binding rules through shared fixtures instead of creating different rules.",
206
+ "planStatus": "Codex v0.9.5 semantics are published; DSH implementation remains deferred to v0.4.0",
207
207
  "implementationStatus": "not-implemented",
208
208
  "tests": [],
209
209
  "plannedTests": [
@@ -477,6 +477,424 @@
477
477
  "integrity": "sha512-Z9VleLtCXwk5OlbSJKayWtbMaKACL8JUMyb/JHpErS4N3q//GJS+cgOhhxNkZYmXxB8/lv9IbhX1CBzlMhJeJg=="
478
478
  }
479
479
  ]
480
+ },
481
+ {
482
+ "id": "dsh-0.1.2-alpha.2-dshmarket-1.39.0",
483
+ "manifestVersion": 1,
484
+ "supportedGoalVersions": [
485
+ "0.1.2-alpha.2"
486
+ ],
487
+ "auditedPlatforms": [
488
+ "posix",
489
+ "windows"
490
+ ],
491
+ "platformAuditNote": "The exact graph realized on the Windows daily host that originally exposed the Guard 0.3.2 web_control incompatibility: alpha.2 rows from the native macOS/Windows audit with the dshmarket 1.39.0 identity from the 2026-09-01 alpha.3 annex audit. Supported as one audited whole graph; native Guard acceptance on this combination remains a later gate.",
492
+ "capabilityExpectations": {
493
+ "goal_complete_precommit_guard": "required",
494
+ "goal_disarm_readback": "required",
495
+ "session_flush_before_control": "required",
496
+ "tool_guard_monotonic": "required",
497
+ "host_capability_model": "action-platform-v1",
498
+ "external_wait_jobs_readback": "dsh.jobs.v1",
499
+ "filesystem_tool_contract": "dsh.fs-tools.v1"
500
+ },
501
+ "supportedActions": [
502
+ "inspect_remote_updates",
503
+ "install",
504
+ "apply",
505
+ "create",
506
+ "modify",
507
+ "test",
508
+ "verify",
509
+ "pull",
510
+ "fetch",
511
+ "commit",
512
+ "push",
513
+ "restart",
514
+ "publish",
515
+ "generic_run"
516
+ ],
517
+ "packages": [
518
+ {
519
+ "name": "@deepseek-ai/cordis",
520
+ "version": "4.0.2",
521
+ "integrity": "sha512-asOnXP1TzFSFQlHb1iegDZp0z/8WD1c7YNrwJR/Tx2bzNuMXfcekE/I67Iv6SQXeLB4csxqCngzQKANP7gdw0g=="
522
+ },
523
+ {
524
+ "name": "@deepseek-ai/dsh",
525
+ "version": "0.1.2-alpha.2",
526
+ "integrity": "sha512-4TvTC5kRKlgtSU2UTBv+cID9a2Z+6+m6mpvjXWJfVzuTkflCff6s4MsQpFJTCmwFh/k7zNWe7qFXcLYMV/5VvA=="
527
+ },
528
+ {
529
+ "name": "@deepseek-ai/dsh-agent",
530
+ "version": "0.1.2-alpha.2",
531
+ "integrity": "sha512-K7B5XSQ7byB/IoNGj7n+lBgHCpVPJqEPvpGoHKc1dBS8fPo2yYp/ALFag4YOfrXVP3jQ9A8di20BbvIlp79SoA=="
532
+ },
533
+ {
534
+ "name": "@deepseek-ai/dsh-agent-loop",
535
+ "version": "0.1.2-alpha.2",
536
+ "integrity": "sha512-UU1i+rTuQV3Q5PGY4qFlojJ0Gbthib22pida5elZlg28dd8gtY2d1U5V9q2+rKK/469CO29rkz6TWMWk0g93Jg=="
537
+ },
538
+ {
539
+ "name": "@deepseek-ai/dsh-attachment",
540
+ "version": "0.1.2-alpha.2",
541
+ "integrity": "sha512-+e+zQCbBi94Jnyfpq/M+/J2R/66GbMh5zqr7yVdCjvAJp8d2hxQsZ0O/oaSV+iZQIMgJz+BcwvrS1VU+XmzQWg=="
542
+ },
543
+ {
544
+ "name": "@deepseek-ai/dsh-bash-sandbox",
545
+ "version": "0.1.2-alpha.2",
546
+ "integrity": "sha512-y5NZT7OkKi23N2fF+x9oo1QZH8LPfTU+llL86r+iETSSk5jzh91Hp2cP5Iq5S/L3BAQDaEw2J4Dg8VjF+fnnkg=="
547
+ },
548
+ {
549
+ "name": "@deepseek-ai/dsh-commands",
550
+ "version": "0.1.2-alpha.2",
551
+ "integrity": "sha512-KkyNkD5V80h+xXsByGdXH8uvKo/5uflb1CSY8O8IrciuptaJdneSAmTFsjmCKAjqCTGgigk2VDw6mqPwux2JYg=="
552
+ },
553
+ {
554
+ "name": "@deepseek-ai/dsh-fs",
555
+ "version": "0.1.2-alpha.2",
556
+ "integrity": "sha512-wx5n0QS5rfZ2LPVocMNfuOUh0RYH/QuLoCEy+qI8U3nKmSZ8GSTASURLg+0pVxckHpLElo38U+S/lkLxRK1rpQ=="
557
+ },
558
+ {
559
+ "name": "@deepseek-ai/dsh-fs-local",
560
+ "version": "0.1.2-alpha.2",
561
+ "integrity": "sha512-IIpZAxGw8wr+xpZQhvuHB9JtUeE6V03e45njfFah1eRl0miaHV5CxCRlFwkMLrow5I2zCCsCPPmdEaouGxTGSA=="
562
+ },
563
+ {
564
+ "name": "@deepseek-ai/dsh-fs-observation-policy",
565
+ "version": "0.1.2-alpha.2",
566
+ "integrity": "sha512-oMDSB1NTnj4rIGy5JXCtbzTFDwKkU/38KIKrVs3u6b65Y5spq3kjc1ITpjqo3Ze4H8umc8wJqGke2o/ms8eIEQ=="
567
+ },
568
+ {
569
+ "name": "@deepseek-ai/dsh-fs-sandbox",
570
+ "version": "0.1.2-alpha.2",
571
+ "integrity": "sha512-jTnGZUov95e9OANKG+uoWAczdGlzy24aXJ+z4N4J+rMvThfj5awV3ucsmX9S4YW2peHoTV9D7BNGgBQ84LxB+w=="
572
+ },
573
+ {
574
+ "name": "@deepseek-ai/dsh-goal",
575
+ "version": "0.1.2-alpha.2",
576
+ "integrity": "sha512-6E+QfBezGsQ2RI0KLZc8llRpukV9ujLjCcQ2UAboYJS7FPQMs7f/QfSrfTubwpB4lrnOok0H26JT2jHUhJeQbQ=="
577
+ },
578
+ {
579
+ "name": "@deepseek-ai/dsh-host-plugin-inventory",
580
+ "version": "0.1.2-alpha.2",
581
+ "integrity": "sha512-qWD+fTYTq8YoNa1TbYXy/Qk7bjjS4URJMgMa3m1vnyZ+xdwtRBF47dUa7wVAVX7oGg03bl7TD1Eo7GcKP/eajA=="
582
+ },
583
+ {
584
+ "name": "@deepseek-ai/dsh-host-webserver",
585
+ "version": "0.1.2-alpha.2",
586
+ "integrity": "sha512-cvsfM/cm5hZk/RqdIsardfqBIVpemdmUrP4M6UgdqhJy2nG5VnokLBg7k0bc8Yi11q0vIETfQK4xiDOSOMnu7Q=="
587
+ },
588
+ {
589
+ "name": "@deepseek-ai/dsh-jobs",
590
+ "version": "0.1.2-alpha.2",
591
+ "integrity": "sha512-yPNlYX/ZKphjzRY7oMf5uLgfSlJ8qBp49W6qNqzhmn8moXgJcPUCNqeOkT0C3a6GQ286mmmo09eyfDLGX7+lMQ=="
592
+ },
593
+ {
594
+ "name": "@deepseek-ai/dsh-jobs-local",
595
+ "version": "0.1.2-alpha.2",
596
+ "integrity": "sha512-nrK4ujL6QRS6GAysgBR08vaHub4vh7/iuGtmMvcg4Bp3hZeQ4rjWnpQAuItg9E9G3OUrvfjwzwENEM1TyVcbWw=="
597
+ },
598
+ {
599
+ "name": "@deepseek-ai/dsh-llm",
600
+ "version": "0.1.2-alpha.2",
601
+ "integrity": "sha512-ip6yMxwHugxQm4VCbwX/FDnlTeeBM9VBkIn0+74ityQy7Z3yKREJ1Ov8Z04l4G3duRzeGRsQ4ztOFZ01oNfKIw=="
602
+ },
603
+ {
604
+ "name": "@deepseek-ai/dsh-pwsh-sandbox",
605
+ "version": "0.1.2-alpha.2",
606
+ "integrity": "sha512-j/gUmv+nWYzg8o+oEEIK9FKeb6L24n2u7xjpIm7DcL5YjQlRDR6FgDvR2hpUK/d4Wk+zvnaPqZaEaXfUtOzEKQ=="
607
+ },
608
+ {
609
+ "name": "@deepseek-ai/dsh-sandbox",
610
+ "version": "0.1.2-alpha.2",
611
+ "integrity": "sha512-InfHYn5B0MxF5QLz0AjbwPS5W0G9VtIvjEFl5o/049KzH6khGKhjqOAVZtu1Z46f1+K/dbjF50VkTdnX3pgIJA=="
612
+ },
613
+ {
614
+ "name": "@deepseek-ai/dsh-sandbox-policy",
615
+ "version": "0.1.2-alpha.2",
616
+ "integrity": "sha512-Af7DWZTEjF/70YWSiN0jfbZli1XRk6Bo9W61QHxfShS79I8//mOPrItEPtJRWL/RCmGNfudFglNFyyGKdaqBIg=="
617
+ },
618
+ {
619
+ "name": "@deepseek-ai/dsh-session",
620
+ "version": "0.1.2-alpha.2",
621
+ "integrity": "sha512-RfikXscYTDXDr7CD7C/8oGJZaH8Egclj7pmXRtd90QcB5L8RIQ7069xrHZjds8OjNrFo69qQwNK3gYLUVZy9PA=="
622
+ },
623
+ {
624
+ "name": "@deepseek-ai/dsh-shell",
625
+ "version": "0.1.2-alpha.2",
626
+ "integrity": "sha512-i16e+OrCJ7GZ1XDnPds081NgVs/xzIVMLECzmLnXgVDKeePgWpdEgR//PgMqKPwoBoJ8z7DTzwKiOISAtOpNzA=="
627
+ },
628
+ {
629
+ "name": "@deepseek-ai/dsh-shell-env",
630
+ "version": "0.1.2-alpha.2",
631
+ "integrity": "sha512-OCf1iaPC5Qg6/DMLzvq5flGVSKP2uxAhgKs+8vrRuUiKc2UXXUE4uKayzZU7S18EysLZOVjMKKyUnHFXCVRQxg=="
632
+ },
633
+ {
634
+ "name": "@deepseek-ai/dsh-subprocess-local",
635
+ "version": "0.1.2-alpha.2",
636
+ "integrity": "sha512-IFneyTRqvbF/1Jm9h0WwBBxwlAd3vRh3SE/sZo2DTy9lzkRUMEBmWTiJZhVCMZ7hDLE0ALnjLLnLFLkA7bCP9Q=="
637
+ },
638
+ {
639
+ "name": "@deepseek-ai/dsh-system-prompt",
640
+ "version": "0.1.2-alpha.2",
641
+ "integrity": "sha512-qT9PZEVMAbszsg1UVUvuovfWFS5unjy08KV0rnOc89TJCgkb2CnlknSyIQs0lXc/UiqT6ZQ59i4ClAFrXhxfxQ=="
642
+ },
643
+ {
644
+ "name": "@deepseek-ai/dsh-tool-bash",
645
+ "version": "0.1.2-alpha.2",
646
+ "integrity": "sha512-Vt70FCPSE3Y7++2i9dKCNrsXTqhDpeJwqo44/GZow1xJ5acY9iNkjmjfq0UrTvacLLOEVnrMMBa9LojXi2WZUA=="
647
+ },
648
+ {
649
+ "name": "@deepseek-ai/dsh-tool-fs",
650
+ "version": "0.1.2-alpha.2",
651
+ "integrity": "sha512-zQ+zxunJ9BXFR/kAw0Z/LO5TEy87uf1X2giE1AmM9fqbev28vd4pzLq3y8F9b0E64461ANrfD1q2wx8Gy1w47g=="
652
+ },
653
+ {
654
+ "name": "@deepseek-ai/dsh-tool-goal",
655
+ "version": "0.1.2-alpha.2",
656
+ "integrity": "sha512-lvp60s3JKuTzncrlKCyS3qM/jYMLZSTMXJ/xQ8A0EIDvfPp7x1C3NNez66IJXPJ5YMtW9QYsqx2YmnUKhPOrow=="
657
+ },
658
+ {
659
+ "name": "@deepseek-ai/dsh-tool-jobs",
660
+ "version": "0.1.2-alpha.2",
661
+ "integrity": "sha512-QYq4almnoKNDu/ncrpGLTfkT5sIdqvRTyLd61VNJTFl4rNT2G/JCoEIhDgf50Rkwcchvvk/bNNdekjlENqZjKg=="
662
+ },
663
+ {
664
+ "name": "@deepseek-ai/dsh-tool-pwsh",
665
+ "version": "0.1.2-alpha.2",
666
+ "integrity": "sha512-sRGAmLWxxb+gglsqoftLojnFY1HaKMcwV9itkvv7JeACn5vkZuXTI0I/gNxjvt+g/b6sXT37hmQ7bmyo3dFHuQ=="
667
+ },
668
+ {
669
+ "name": "@deepseek-ai/dsh-tools",
670
+ "version": "0.1.2-alpha.2",
671
+ "integrity": "sha512-trk0fkmCDp64pqdcr8u7rCcRrwNi+93FKuznTnCD+YsPGFygcSG/6n+Wsh4+9A6oI1fM4/Ecq6Baa9vq1sNhJg=="
672
+ },
673
+ {
674
+ "name": "@deepseek-ai/dsh-user-approval",
675
+ "version": "0.1.2-alpha.2",
676
+ "integrity": "sha512-CcV3hf2Q0NYxRbnlE+IysaUkq/hvmjlvS9OGiHpARZVY4VlidlZRmsy5g5L17vDoxirX+WBJ9Cc5VcJMcjPrUg=="
677
+ },
678
+ {
679
+ "name": "@deepseek-ai/dsh-web-app",
680
+ "version": "0.1.2-alpha.2",
681
+ "integrity": "sha512-+SKilM9fCCCoYr3fKT7CxNiozGsNHgvvTGhL63tKXM7/3M96dyj7zhT5ztoTgIDW9b9m8J/CaJUa4KlSeUJGFQ=="
682
+ },
683
+ {
684
+ "name": "dshmarket",
685
+ "version": "1.39.0",
686
+ "integrity": "sha512-URuXIuuNRfX6k0Flo7CJxeA7EVLhLGYDm3Lk4BoEXW1Qlg+boX/LI8wCE8hGC0FMBftFr9j8D/ulGNTdFM67nQ=="
687
+ }
688
+ ]
689
+ },
690
+ {
691
+ "id": "dsh-0.1.2-alpha.3",
692
+ "manifestVersion": 1,
693
+ "supportedGoalVersions": [
694
+ "0.1.2-alpha.3"
695
+ ],
696
+ "auditedPlatforms": [
697
+ "posix",
698
+ "windows"
699
+ ],
700
+ "platformAuditNote": "Exact graph rebuilt at the 2026-09-01 frozen baseline from the alpha.3 execution annex audit (34 rows; dshmarket 1.39.0 is the authoritative web_control input; skin-center is not a lock input).",
701
+ "capabilityExpectations": {
702
+ "goal_complete_precommit_guard": "required",
703
+ "goal_disarm_readback": "required",
704
+ "session_flush_before_control": "required",
705
+ "tool_guard_monotonic": "required",
706
+ "host_capability_model": "action-platform-v1",
707
+ "external_wait_jobs_readback": "dsh.jobs.v1",
708
+ "filesystem_tool_contract": "dsh.fs-tools.v1"
709
+ },
710
+ "supportedActions": [
711
+ "inspect_remote_updates",
712
+ "install",
713
+ "apply",
714
+ "create",
715
+ "modify",
716
+ "test",
717
+ "verify",
718
+ "pull",
719
+ "fetch",
720
+ "commit",
721
+ "push",
722
+ "restart",
723
+ "publish",
724
+ "generic_run"
725
+ ],
726
+ "packages": [
727
+ {
728
+ "name": "@deepseek-ai/cordis",
729
+ "version": "4.0.2",
730
+ "integrity": "sha512-asOnXP1TzFSFQlHb1iegDZp0z/8WD1c7YNrwJR/Tx2bzNuMXfcekE/I67Iv6SQXeLB4csxqCngzQKANP7gdw0g=="
731
+ },
732
+ {
733
+ "name": "@deepseek-ai/dsh",
734
+ "version": "0.1.2-alpha.3",
735
+ "integrity": "sha512-VvATzYmQ4LMJREJ9e2POKksSHRfqP3y9pghplLBaQBuw2BqfbC0mQUVsaPwxe4wlcpj+riEgn8OJB01YnpF+3A=="
736
+ },
737
+ {
738
+ "name": "@deepseek-ai/dsh-agent",
739
+ "version": "0.1.2-alpha.3",
740
+ "integrity": "sha512-K1Pj9wqXmXjbMv4//wbPEPzaRBIYGluLzgnym2NPZFr9uS5h1soowUWVmI0lb3iU5FIUKuCg7YYEOrGSwPtRhQ=="
741
+ },
742
+ {
743
+ "name": "@deepseek-ai/dsh-agent-loop",
744
+ "version": "0.1.2-alpha.3",
745
+ "integrity": "sha512-SXA7eKvcpYjexnkY3MLUbJOPaLGXrCCPI/eA1ohhYFiuRsu4y4Lt5C0CchtXWqIxlKDdW3lWapj81OpeYHTi2A=="
746
+ },
747
+ {
748
+ "name": "@deepseek-ai/dsh-attachment",
749
+ "version": "0.1.2-alpha.3",
750
+ "integrity": "sha512-KiJy3esEEthj2alvZLqGN6YH7Ncmia+lzJW9VWf8J9EThlmUrX9xcG6k8v/paLMyrAv2w4JKxvZCIuWZK5mIwA=="
751
+ },
752
+ {
753
+ "name": "@deepseek-ai/dsh-bash-sandbox",
754
+ "version": "0.1.2-alpha.3",
755
+ "integrity": "sha512-U3U6ageI0VPs9TmIqtZtztJRBCwGszSbNLHe24h1kPKDAy3UveGNUDdq89OgINJH7U1Ce213uucRcqY8tjkPfw=="
756
+ },
757
+ {
758
+ "name": "@deepseek-ai/dsh-commands",
759
+ "version": "0.1.2-alpha.3",
760
+ "integrity": "sha512-lXB+f7B5a1gDatCtpww5AvM2TCltb95xkHZMkAmwleBJJgx5iqtKtEelObigXZu14HtZpLdO6v/0Fvm/akOyIg=="
761
+ },
762
+ {
763
+ "name": "@deepseek-ai/dsh-fs",
764
+ "version": "0.1.2-alpha.3",
765
+ "integrity": "sha512-qOaZ7JRFNJYtdG2EkHpXs4yzypRZX5YHOjZ7RLe571T/eLegg9nCJIEr4gFr1LvPn2nuLdJmwTB2x4ckZkXIuw=="
766
+ },
767
+ {
768
+ "name": "@deepseek-ai/dsh-fs-local",
769
+ "version": "0.1.2-alpha.3",
770
+ "integrity": "sha512-QzLTaj92cJ4RrE5NTx9NaV5ZhlC0mgSLHK3Z6ePXyHFcgAPGh3dJ6pw4q3r2dC7vlDTKyBIHHCb6MLwSUU8+BA=="
771
+ },
772
+ {
773
+ "name": "@deepseek-ai/dsh-fs-observation-policy",
774
+ "version": "0.1.2-alpha.3",
775
+ "integrity": "sha512-HDbTSazpoRIyPwmfip5k0nT4FfboaiViJqQplAUulCDxRK0QykuMQPUdkzANEXkvMBR2meTYurR6OPE0NZKuWw=="
776
+ },
777
+ {
778
+ "name": "@deepseek-ai/dsh-fs-sandbox",
779
+ "version": "0.1.2-alpha.3",
780
+ "integrity": "sha512-Ady8S/1NJcVv2SHgzOWHmhFcfmfidUBN1F5d5KFywHwYzYChtjldiieJvxU7dH7opH/sdX8kxOgFoDqauE4g8w=="
781
+ },
782
+ {
783
+ "name": "@deepseek-ai/dsh-goal",
784
+ "version": "0.1.2-alpha.3",
785
+ "integrity": "sha512-mExFFbFDupDTwbVagDbHVGJ0jYvGiFYFocAwfGYxPQGxZRcU8d4BgFir60GhbHsKtoSLDc48IlWscTZ6CXD3CA=="
786
+ },
787
+ {
788
+ "name": "@deepseek-ai/dsh-host-plugin-inventory",
789
+ "version": "0.1.2-alpha.3",
790
+ "integrity": "sha512-NagByjrXyIQRLaTGFmkqZ50HpgkEKuNHvwLskMGgu5ej8ucAQKOvJ2B+iyAlbtXj4Pkr84HKIX6smqjbGJNDxA=="
791
+ },
792
+ {
793
+ "name": "@deepseek-ai/dsh-host-webserver",
794
+ "version": "0.1.2-alpha.3",
795
+ "integrity": "sha512-VSlbioqJZ8JSQmFnjYXr7U/R7NCfL8fo9ztiYpRTAoqrSoodaabA6hH79Mueb+gAVHOtzpNRLK8dWDkqczmDVA=="
796
+ },
797
+ {
798
+ "name": "@deepseek-ai/dsh-jobs",
799
+ "version": "0.1.2-alpha.3",
800
+ "integrity": "sha512-P5jS3kqNrnPktvSQLBWsAnf5Dpa20EzVo9giUQQKE6WKgPV9Z3tnRVybV2TFTU6MqGClNAqZmY8tnEMABzgA9g=="
801
+ },
802
+ {
803
+ "name": "@deepseek-ai/dsh-jobs-local",
804
+ "version": "0.1.2-alpha.3",
805
+ "integrity": "sha512-d77W8jURnp9pVxnU0fuYt8lDmmiJcR9FWzNwPqvk/uwjx9zwtMtkCU0WtBcyxVqVGpEmG2pU2upln1m0eCfVBA=="
806
+ },
807
+ {
808
+ "name": "@deepseek-ai/dsh-llm",
809
+ "version": "0.1.2-alpha.3",
810
+ "integrity": "sha512-xGedBtvxb1HJWCmVO9v3fhHqoZ1iMDQU1x7fqAhhDfjKjmLTljWC1/RdZqUFI/1a/CM1iGPSaDuPZDCMu45AtA=="
811
+ },
812
+ {
813
+ "name": "@deepseek-ai/dsh-pwsh-sandbox",
814
+ "version": "0.1.2-alpha.3",
815
+ "integrity": "sha512-nVYijWMJilFWGF/nJLieNyM1c4PY1CdMN0QmHQGMiE9kyL5+MR8xzqlgxQ3I3GzX9zzbN1NjLbm+t+QHaDlLUQ=="
816
+ },
817
+ {
818
+ "name": "@deepseek-ai/dsh-sandbox",
819
+ "version": "0.1.2-alpha.3",
820
+ "integrity": "sha512-lKM+jhpxvfY48Se+J2sewIY2QP+eGCeSAazlvOsW3VMkzoVSA7RVIJFh6/xn3t1N9wrOXawii5Ex/vGVJ44HBQ=="
821
+ },
822
+ {
823
+ "name": "@deepseek-ai/dsh-sandbox-policy",
824
+ "version": "0.1.2-alpha.3",
825
+ "integrity": "sha512-Lj75///rZ/5x60aM5fds3u8S4o1QTiy2/TKvqLUr+xT9CJRfk6v81LxV/SYc6DmP2pN0TKwL/50/kL44wbxzvw=="
826
+ },
827
+ {
828
+ "name": "@deepseek-ai/dsh-session",
829
+ "version": "0.1.2-alpha.3",
830
+ "integrity": "sha512-iwWs0FdShoiCLLVk6lSZL18vKlFuliQXqy6gnu4U34B8K3uPb+QYWHjB3PrTXcK8ZVmb0zdWeyZ9osmANWWKnw=="
831
+ },
832
+ {
833
+ "name": "@deepseek-ai/dsh-shell",
834
+ "version": "0.1.2-alpha.3",
835
+ "integrity": "sha512-UM+ZObnmKVEy+/d2hKUNAIctpLojpbs7isOyZ3LoWtcVnIK2kjPCPDHBeUj/3DMSzxYR7Ak9QRnNxnG5cXgvDg=="
836
+ },
837
+ {
838
+ "name": "@deepseek-ai/dsh-shell-env",
839
+ "version": "0.1.2-alpha.3",
840
+ "integrity": "sha512-Phgv3Zuao0jKlS++uyUlQw+7x2Zk3DFcG2qOb86JwP3WpzqgdzoKoplcc3wev3J8+RX5TkNq7Dl92UKPvynGTw=="
841
+ },
842
+ {
843
+ "name": "@deepseek-ai/dsh-subprocess-local",
844
+ "version": "0.1.2-alpha.3",
845
+ "integrity": "sha512-T2HPtqL17ODH5AS7E6cQKtiulJSGv7HEQmYbQKiSaR2CCiLHlXosUPuGis+yuCfBZ8GZOjwn18abkDraKOOFCg=="
846
+ },
847
+ {
848
+ "name": "@deepseek-ai/dsh-system-prompt",
849
+ "version": "0.1.2-alpha.3",
850
+ "integrity": "sha512-R+VVDew/0DdTypypAjkgTygh3M2yNYXNFO+DvMfdX98jgD7MSluw2iYaCFR/ax9bBNHXXHQ7eXHsIYI1a0FrPg=="
851
+ },
852
+ {
853
+ "name": "@deepseek-ai/dsh-tool-bash",
854
+ "version": "0.1.2-alpha.3",
855
+ "integrity": "sha512-eQ3IQ+Jz0CI2e24gx8Q8xg1MyYcE48UP/asWEBfSuM0ycmexbGLPPip/H137NbxBXx1O4Ewok8ipVLyHYx7QjQ=="
856
+ },
857
+ {
858
+ "name": "@deepseek-ai/dsh-tool-fs",
859
+ "version": "0.1.2-alpha.3",
860
+ "integrity": "sha512-YiY/hxBh11Lu3wKjtGxhDFYHf2ACWpUlhTM1JopJhiEdrIAsZ7wXeRHfLzvMaHJG30+vgIekbY/zY8EOGkOsww=="
861
+ },
862
+ {
863
+ "name": "@deepseek-ai/dsh-tool-goal",
864
+ "version": "0.1.2-alpha.3",
865
+ "integrity": "sha512-YQ1JwXIGiIDkATlrqV6CV1sbHFd95tbmNPlbsuwjKXETMcGO09iTtOoYCONBT8aIx9TSqcloM37TjDGgpEXFYQ=="
866
+ },
867
+ {
868
+ "name": "@deepseek-ai/dsh-tool-jobs",
869
+ "version": "0.1.2-alpha.3",
870
+ "integrity": "sha512-tsBJslgxjlv92/8guVjUEOPkr+JlC83BGiJJpHAponyPBdCF/mVy8zBO6V89yEgmjW/nRWTUwv2dZnnHtOCptQ=="
871
+ },
872
+ {
873
+ "name": "@deepseek-ai/dsh-tool-pwsh",
874
+ "version": "0.1.2-alpha.3",
875
+ "integrity": "sha512-QxCPtD9EcjoKuo1MZid/fkbsXHDKRpF3s1iXUuFIMsjBZs7ip/qoieL/bTpqiyHJcuhHjWver8hKkEdL/nqBdA=="
876
+ },
877
+ {
878
+ "name": "@deepseek-ai/dsh-tools",
879
+ "version": "0.1.2-alpha.3",
880
+ "integrity": "sha512-ffcpryQgwqAHIkN326CKqH3kueCMKXgbRU4D0Lp+Kwql97NVZrmRxI8ExERJtTju1adtowwVOXIdPjD4XyB44w=="
881
+ },
882
+ {
883
+ "name": "@deepseek-ai/dsh-user-approval",
884
+ "version": "0.1.2-alpha.3",
885
+ "integrity": "sha512-ulp0zA1JnzrjJVyg4DbKMR6Vxz66+ltbIXKhDQcrPgYE93woI0U2VoWiQPuvlozcWqpEvDsmsmdM3rMTxQrB0A=="
886
+ },
887
+ {
888
+ "name": "@deepseek-ai/dsh-web-app",
889
+ "version": "0.1.2-alpha.3",
890
+ "integrity": "sha512-ntOJ9WOU+KPOuWBRxTibM89BxiAYN20bKcp3ozn0M5A5+IHG/7QFUxcZUZCq03eVpNR59l/EgGrHdxy7r+ON9g=="
891
+ },
892
+ {
893
+ "name": "dshmarket",
894
+ "version": "1.39.0",
895
+ "integrity": "sha512-URuXIuuNRfX6k0Flo7CJxeA7EVLhLGYDm3Lk4BoEXW1Qlg+boX/LI8wCE8hGC0FMBftFr9j8D/ulGNTdFM67nQ=="
896
+ }
897
+ ]
480
898
  }
481
899
  ],
482
900
  "runtimeIdentity": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dsh-completion-guard",
3
- "version": "0.3.2",
3
+ "version": "0.4.0",
4
4
  "description": "A task-contract and completion-certification layer for DeepSeek Harness.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -45,13 +45,13 @@
45
45
  },
46
46
  "peerDependencies": {
47
47
  "@deepseek-ai/cordis": "4.0.1 || 4.0.2",
48
- "@deepseek-ai/dsh-agent": "0.1.1-rc.2 || 0.1.2-alpha.2",
49
- "@deepseek-ai/dsh-commands": "0.1.1-rc.2 || 0.1.2-alpha.2",
50
- "@deepseek-ai/dsh-goal": "0.1.1-rc.2 || 0.1.2-alpha.2",
51
- "@deepseek-ai/dsh-llm": "0.1.1-rc.2 || 0.1.2-alpha.2",
52
- "@deepseek-ai/dsh-session": "0.1.1-rc.2 || 0.1.2-alpha.2",
53
- "@deepseek-ai/dsh-tool-goal": "0.1.1-rc.2 || 0.1.2-alpha.2",
54
- "@deepseek-ai/dsh-tools": "0.1.1-rc.2 || 0.1.2-alpha.2"
48
+ "@deepseek-ai/dsh-agent": "0.1.1-rc.2 || 0.1.2-alpha.2 || 0.1.2-alpha.3",
49
+ "@deepseek-ai/dsh-commands": "0.1.1-rc.2 || 0.1.2-alpha.2 || 0.1.2-alpha.3",
50
+ "@deepseek-ai/dsh-goal": "0.1.1-rc.2 || 0.1.2-alpha.2 || 0.1.2-alpha.3",
51
+ "@deepseek-ai/dsh-llm": "0.1.1-rc.2 || 0.1.2-alpha.2 || 0.1.2-alpha.3",
52
+ "@deepseek-ai/dsh-session": "0.1.1-rc.2 || 0.1.2-alpha.2 || 0.1.2-alpha.3",
53
+ "@deepseek-ai/dsh-tool-goal": "0.1.1-rc.2 || 0.1.2-alpha.2 || 0.1.2-alpha.3",
54
+ "@deepseek-ai/dsh-tools": "0.1.1-rc.2 || 0.1.2-alpha.2 || 0.1.2-alpha.3"
55
55
  },
56
56
  "peerDependenciesMeta": {
57
57
  "@deepseek-ai/dsh-goal": {
@@ -106,5 +106,5 @@
106
106
  "hooks",
107
107
  "typescript"
108
108
  ],
109
- "gitHead": "22cde6106cdca511265bb4103375a263a0762b9c"
109
+ "gitHead": "d5cd0ca17833d05bfdf41457ae203864bde8056b"
110
110
  }