kiokuko-dsh 0.2.16 → 0.2.18
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.
- package/PERMISSIONS.md +11 -0
- package/README.ja.md +2 -0
- package/README.ko.md +2 -0
- package/README.md +2 -0
- package/README.zh-CN.md +2 -0
- package/THIRD_PARTY_NOTICES.md +4 -0
- package/dist/deep-thinker/core/contracts.d.ts +5 -5
- package/dist/deep-thinker/memory-finalizer.d.ts +1 -1
- package/dist/deep-thinker/store.d.ts +1 -1
- package/dist/dsh/coding-workflow/host.d.ts.map +1 -1
- package/dist/dsh/coding-workflow/host.js +7 -6
- package/dist/dsh/coding-workflow/host.js.map +1 -1
- package/dist/dsh/coding-workflow/intent.js +1 -1
- package/dist/dsh/coding-workflow/intent.js.map +1 -1
- package/dist/dsh/coding-workflow/service.js +2 -2
- package/dist/dsh/coding-workflow/service.js.map +1 -1
- package/dist/dsh/composition.js +1 -1
- package/dist/dsh/composition.js.map +1 -1
- package/dist/dsh/config.d.ts +8 -1
- package/dist/dsh/config.d.ts.map +1 -1
- package/dist/dsh/core/host.d.ts +7 -0
- package/dist/dsh/core/host.d.ts.map +1 -1
- package/dist/dsh/core/host.js +21 -1
- package/dist/dsh/core/host.js.map +1 -1
- package/dist/dsh/core/index.d.ts +20 -0
- package/dist/dsh/core/index.d.ts.map +1 -1
- package/dist/dsh/core/tasks.d.ts +3 -1
- package/dist/dsh/core/tasks.d.ts.map +1 -1
- package/dist/dsh/core/tasks.js +29 -6
- package/dist/dsh/core/tasks.js.map +1 -1
- package/dist/dsh/correction-context.d.ts +54 -0
- package/dist/dsh/correction-context.d.ts.map +1 -0
- package/dist/dsh/correction-context.js +70 -0
- package/dist/dsh/correction-context.js.map +1 -0
- package/dist/dsh/correction-decision.d.ts +38 -0
- package/dist/dsh/correction-decision.d.ts.map +1 -0
- package/dist/dsh/correction-decision.js +71 -0
- package/dist/dsh/correction-decision.js.map +1 -0
- package/dist/dsh/decisions/config.d.ts +7 -0
- package/dist/dsh/decisions/config.d.ts.map +1 -1
- package/dist/dsh/decisions/config.js +1 -0
- package/dist/dsh/decisions/config.js.map +1 -1
- package/dist/dsh/decisions/contracts.d.ts +2 -0
- package/dist/dsh/decisions/contracts.d.ts.map +1 -1
- package/dist/dsh/decisions/contracts.js +1 -1
- package/dist/dsh/decisions/contracts.js.map +1 -1
- package/dist/dsh/decisions/correction.d.ts +9 -0
- package/dist/dsh/decisions/correction.d.ts.map +1 -0
- package/dist/dsh/decisions/correction.js +15 -0
- package/dist/dsh/decisions/correction.js.map +1 -0
- package/dist/dsh/decisions/diagnostic-correlation.d.ts +3 -0
- package/dist/dsh/decisions/diagnostic-correlation.d.ts.map +1 -0
- package/dist/dsh/decisions/diagnostic-correlation.js +7 -0
- package/dist/dsh/decisions/diagnostic-correlation.js.map +1 -0
- package/dist/dsh/decisions/diagnostics.d.ts +513 -0
- package/dist/dsh/decisions/diagnostics.d.ts.map +1 -0
- package/dist/dsh/decisions/diagnostics.js +389 -0
- package/dist/dsh/decisions/diagnostics.js.map +1 -0
- package/dist/dsh/decisions/host.d.ts +2 -1
- package/dist/dsh/decisions/host.d.ts.map +1 -1
- package/dist/dsh/decisions/host.js +18 -5
- package/dist/dsh/decisions/host.js.map +1 -1
- package/dist/dsh/decisions/intent-assessment.d.ts +20 -0
- package/dist/dsh/decisions/intent-assessment.d.ts.map +1 -0
- package/dist/dsh/decisions/intent-assessment.js +104 -0
- package/dist/dsh/decisions/intent-assessment.js.map +1 -0
- package/dist/dsh/decisions/message-refs.d.ts +6 -0
- package/dist/dsh/decisions/message-refs.d.ts.map +1 -0
- package/dist/dsh/decisions/message-refs.js +16 -0
- package/dist/dsh/decisions/message-refs.js.map +1 -0
- package/dist/dsh/decisions/micro-judge.d.ts +58 -0
- package/dist/dsh/decisions/micro-judge.d.ts.map +1 -0
- package/dist/dsh/decisions/micro-judge.js +160 -0
- package/dist/dsh/decisions/micro-judge.js.map +1 -0
- package/dist/dsh/decisions/request-intent.d.ts +1 -2
- package/dist/dsh/decisions/request-intent.d.ts.map +1 -1
- package/dist/dsh/decisions/request-intent.js +16 -18
- package/dist/dsh/decisions/request-intent.js.map +1 -1
- package/dist/dsh/decisions/service.d.ts +11 -1
- package/dist/dsh/decisions/service.d.ts.map +1 -1
- package/dist/dsh/decisions/service.js +54 -8
- package/dist/dsh/decisions/service.js.map +1 -1
- package/dist/dsh/execution-command.d.ts +12 -1
- package/dist/dsh/execution-command.d.ts.map +1 -1
- package/dist/dsh/execution-command.js +54 -6
- package/dist/dsh/execution-command.js.map +1 -1
- package/dist/dsh/execution-selection.d.ts +5 -5
- package/dist/dsh/host-adapter/admission.d.ts.map +1 -1
- package/dist/dsh/host-adapter/admission.js +3 -0
- package/dist/dsh/host-adapter/admission.js.map +1 -1
- package/dist/dsh/host-adapter/context.d.ts +5 -1
- package/dist/dsh/host-adapter/context.d.ts.map +1 -1
- package/dist/dsh/host-adapter/context.js +16 -1
- package/dist/dsh/host-adapter/context.js.map +1 -1
- package/dist/dsh/host-adapter/memory-application-host.d.ts +2 -0
- package/dist/dsh/host-adapter/memory-application-host.d.ts.map +1 -1
- package/dist/dsh/host-adapter/memory-application-host.js +3 -1
- package/dist/dsh/host-adapter/memory-application-host.js.map +1 -1
- package/dist/dsh/host-adapter/routing.d.ts.map +1 -1
- package/dist/dsh/host-adapter/routing.js +13 -0
- package/dist/dsh/host-adapter/routing.js.map +1 -1
- package/dist/dsh/host-adapter.d.ts.map +1 -1
- package/dist/dsh/host-adapter.js +6 -1
- package/dist/dsh/host-adapter.js.map +1 -1
- package/dist/dsh/index.d.ts +8 -2
- package/dist/dsh/index.d.ts.map +1 -1
- package/dist/dsh/lisp/surface.js +1 -1
- package/dist/dsh/lisp/surface.js.map +1 -1
- package/dist/dsh/memory-application.d.ts +7 -2
- package/dist/dsh/memory-application.d.ts.map +1 -1
- package/dist/dsh/memory-application.js +92 -2
- package/dist/dsh/memory-application.js.map +1 -1
- package/dist/dsh/model-configuration.d.ts +6 -6
- package/dist/dsh/models/vendor/opencode-adapter.d.ts.map +1 -1
- package/dist/dsh/models/vendor/opencode-adapter.js +67 -2
- package/dist/dsh/models/vendor/opencode-adapter.js.map +1 -1
- package/dist/dsh/modules/enno.d.ts +1 -1
- package/dist/dsh/native-task-authority.d.ts +1 -0
- package/dist/dsh/native-task-authority.d.ts.map +1 -1
- package/dist/dsh/native-task-authority.js +74 -50
- package/dist/dsh/native-task-authority.js.map +1 -1
- package/dist/dsh/on-demand-intake.d.ts +10 -0
- package/dist/dsh/on-demand-intake.d.ts.map +1 -1
- package/dist/dsh/on-demand-intake.js +63 -9
- package/dist/dsh/on-demand-intake.js.map +1 -1
- package/dist/dsh/task-completion.js +5 -5
- package/dist/dsh/task-completion.js.map +1 -1
- package/dist/dsh/task-intake.d.ts +1 -0
- package/dist/dsh/task-intake.d.ts.map +1 -1
- package/dist/dsh/task-intake.js.map +1 -1
- package/dist/dsh/task-state.d.ts.map +1 -1
- package/dist/dsh/task-state.js +4 -0
- package/dist/dsh/task-state.js.map +1 -1
- package/dist/dsh/tools.d.ts +1 -1
- package/dist/dsh/tools.d.ts.map +1 -1
- package/dist/dsh/tools.js +63 -35
- package/dist/dsh/tools.js.map +1 -1
- package/dist/dsh/turn-process.d.ts.map +1 -1
- package/dist/dsh/turn-process.js +3 -0
- package/dist/dsh/turn-process.js.map +1 -1
- package/dist/enno-oduno/store.d.ts.map +1 -1
- package/dist/enno-oduno/store.js +2 -0
- package/dist/enno-oduno/store.js.map +1 -1
- package/dist/locale/en.json +1 -1
- package/dist/locale/ja.json +1 -1
- package/dist/locale/ko.json +1 -1
- package/dist/locale/zh-CN.json +1 -1
- package/dist/memory/application.d.ts.map +1 -1
- package/dist/memory/application.js +3 -2
- package/dist/memory/application.js.map +1 -1
- package/dist/memory/correction-classification.d.ts +47 -0
- package/dist/memory/correction-classification.d.ts.map +1 -0
- package/dist/memory/correction-classification.js +143 -0
- package/dist/memory/correction-classification.js.map +1 -0
- package/dist/memory/correction-contract.d.ts +136 -0
- package/dist/memory/correction-contract.d.ts.map +1 -0
- package/dist/memory/correction-contract.js +42 -0
- package/dist/memory/correction-contract.js.map +1 -0
- package/dist/memory/lifecycle.d.ts +1 -1
- package/docs/coding-workflow.md +1 -1
- package/docs/correction-classification.md +122 -0
- package/docs/decision-diagnostics.md +60 -0
- package/docs/dsh-plugin.md +42 -0
- package/docs/evaluations/correction-classification-2026-10-21/assessment.json +717 -0
- package/docs/evaluations/correction-classification-2026-10-21/built-both-product-pair.log +14 -0
- package/docs/evaluations/correction-classification-2026-10-21/development.json +877 -0
- package/docs/evaluations/correction-classification-2026-10-21/dsh-build.log +9 -0
- package/docs/evaluations/correction-classification-2026-10-21/dsh-final-2-typecheck.log +0 -0
- package/docs/evaluations/correction-classification-2026-10-21/dsh-final-2-unit.log +43 -0
- package/docs/evaluations/correction-classification-2026-10-21/dsh-final-3-typecheck.log +0 -0
- package/docs/evaluations/correction-classification-2026-10-21/held-out.json +2671 -0
- package/docs/evaluations/correction-classification-2026-10-21/live-mcp-final-2.json +32 -0
- package/docs/evaluations/correction-classification-2026-10-21/live-mcp-final-2.log +1 -0
- package/docs/evaluations/correction-classification-2026-10-21/live-mcp-final.json +32 -0
- package/docs/evaluations/correction-classification-2026-10-21/main-build.log +17 -0
- package/docs/evaluations/correction-classification-2026-10-21/main-final-2-typecheck.log +0 -0
- package/docs/evaluations/correction-classification-2026-10-21/main-final-2-unit.log +64 -0
- package/docs/evaluations/correction-classification-2026-10-21/metrics-final.log +11 -0
- package/docs/evaluations/correction-classification-2026-10-21/native-final.log +57 -0
- package/docs/evaluations/correction-classification-2026-10-21/package-evidence.json +51 -0
- package/docs/evaluations/correction-classification-2026-10-21/timing-final.json +53 -0
- package/docs/evaluations/correction-classification-2026-10-21/verification.json +199 -0
- package/docs/guardrail.md +3 -3
- package/docs/harness-map.md +2 -0
- package/docs/micro-judge.md +34 -0
- package/guardrail/manifest.json +0 -22
- package/micro-judge/darwin-arm64/kiokuko-micro-judge +0 -0
- package/micro-judge/licenses/COPYRIGHT-Rust-1.85.0.txt +384 -0
- package/micro-judge/licenses/LICENSE-APACHE +176 -0
- package/micro-judge/licenses/LICENSE-MIT +23 -0
- package/micro-judge/licenses/manifest.json +5 -0
- package/micro-judge/manifest.json +15 -0
- package/micro-judge/native-acceptance-darwin-arm64.tap +118 -0
- package/micro-judge/native-verification-darwin-arm64.json +20 -0
- package/migrations/044_decision_diagnostics.sql +46 -0
- package/migrations/045_correction_classification.sql +11 -0
- package/package.json +13 -8
- package/scripts/guardrail-artifacts.mjs +0 -1
- package/scripts/verify-micro-judge.mjs +53 -0
- package/guardrail/x86_64-apple-darwin/kiokuko-guardrail +0 -0
- package/guardrail/x86_64-apple-darwin/manifest.json +0 -71
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": "correction-live-mcp-v1",
|
|
3
|
+
"status": "passed",
|
|
4
|
+
"dshSourceSha": "01e27576d2efe5020c19e93bdba1a6528bfcaee1",
|
|
5
|
+
"mainSourceSha": "5289ed72e347e65eb9a17d8b1d90f51958f8b333",
|
|
6
|
+
"provider": "typesafe",
|
|
7
|
+
"model": "jev-1.13.0",
|
|
8
|
+
"syntheticEntries": 2,
|
|
9
|
+
"providerCalls": 2,
|
|
10
|
+
"repeatProviderCalls": 0,
|
|
11
|
+
"cachedResults": 2,
|
|
12
|
+
"observedRules": [
|
|
13
|
+
{
|
|
14
|
+
"rule": "uncertain",
|
|
15
|
+
"observed": "reference",
|
|
16
|
+
"model": "jev-1.13.0",
|
|
17
|
+
"mode": "shadow",
|
|
18
|
+
"inputTokens": 565
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"rule": "uncertain",
|
|
22
|
+
"observed": "capability_compatibility",
|
|
23
|
+
"model": "jev-1.13.0",
|
|
24
|
+
"mode": "shadow",
|
|
25
|
+
"inputTokens": 571
|
|
26
|
+
}
|
|
27
|
+
],
|
|
28
|
+
"modelInput": "unobserved",
|
|
29
|
+
"verification": "unverified",
|
|
30
|
+
"authorizationGranted": false,
|
|
31
|
+
"qualityMeasurement": "separate held-out corpus, not these two handoff cases"
|
|
32
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"schema":"correction-live-mcp-v1","status":"passed","dshSourceSha":"01e27576d2efe5020c19e93bdba1a6528bfcaee1","mainSourceSha":"5289ed72e347e65eb9a17d8b1d90f51958f8b333","provider":"typesafe","model":"jev-1.13.0","syntheticEntries":2,"providerCalls":2,"repeatProviderCalls":0,"cachedResults":2,"observedRules":[{"rule":"uncertain","observed":"reference","model":"jev-1.13.0","mode":"shadow","inputTokens":565},{"rule":"uncertain","observed":"capability_compatibility","model":"jev-1.13.0","mode":"shadow","inputTokens":571}],"modelInput":"unobserved","verification":"unverified","authorizationGranted":false,"qualityMeasurement":"separate held-out corpus, not these two handoff cases"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": "correction-live-mcp-v1",
|
|
3
|
+
"status": "passed",
|
|
4
|
+
"dshSourceSha": "01e27576d2efe5020c19e93bdba1a6528bfcaee1",
|
|
5
|
+
"mainSourceSha": "5289ed72e347e65eb9a17d8b1d90f51958f8b333",
|
|
6
|
+
"provider": "typesafe",
|
|
7
|
+
"model": "jev-1.13.0",
|
|
8
|
+
"syntheticEntries": 2,
|
|
9
|
+
"providerCalls": 2,
|
|
10
|
+
"repeatProviderCalls": 0,
|
|
11
|
+
"cachedResults": 2,
|
|
12
|
+
"observedRules": [
|
|
13
|
+
{
|
|
14
|
+
"rule": "uncertain",
|
|
15
|
+
"observed": "reference",
|
|
16
|
+
"model": "jev-1.13.0",
|
|
17
|
+
"mode": "shadow",
|
|
18
|
+
"inputTokens": 565
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"rule": "uncertain",
|
|
22
|
+
"observed": "capability_compatibility",
|
|
23
|
+
"model": "jev-1.13.0",
|
|
24
|
+
"mode": "shadow",
|
|
25
|
+
"inputTokens": 571
|
|
26
|
+
}
|
|
27
|
+
],
|
|
28
|
+
"modelInput": "unobserved",
|
|
29
|
+
"verification": "unverified",
|
|
30
|
+
"authorizationGranted": false,
|
|
31
|
+
"qualityMeasurement": "separate held-out corpus, not these two handoff cases"
|
|
32
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
|
|
2
|
+
> kiokuko@1.0.45 build
|
|
3
|
+
> npm run clean:dist && tsc -p tsconfig.build.json && npm run set-bin-permissions
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
> kiokuko@1.0.45 clean:dist
|
|
7
|
+
> node --input-type=module --eval "import { rmSync } from 'node:fs'; rmSync('dist', { recursive: true, force: true });"
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
> kiokuko@1.0.45 set-bin-permissions
|
|
11
|
+
> node --input-type=module --eval "import { chmodSync } from 'node:fs'; chmodSync('dist/bin/kiokuko.js', 0o755);"
|
|
12
|
+
|
|
13
|
+
npm notice
|
|
14
|
+
npm notice New major version of npm available! 11.13.0 -> 12.2.0
|
|
15
|
+
npm notice Changelog: https://github.com/npm/cli/releases/tag/v12.2.0
|
|
16
|
+
npm notice To update run: npm install -g npm@12.2.0
|
|
17
|
+
npm notice
|
|
File without changes
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
✔ opt-in capture publishes a strict write contract and saves global candidates visible in another session (229.65825ms)
|
|
2
|
+
✔ receipts survive restart, conflict on changed payload, and do not collide with local operation IDs (81.394458ms)
|
|
3
|
+
✔ read owners reject capture and writers recheck a changed schema before saving (43.383166ms)
|
|
4
|
+
✔ corrections enforce revision and atomicity; replay never recreates purged content (58.6315ms)
|
|
5
|
+
✔ capture cannot overwrite Curator-managed memory or a project entry (68.195958ms)
|
|
6
|
+
✔ invalid authority, limits, policy and secrets cannot write or leak input values (39.116291ms)
|
|
7
|
+
✔ disabled capture reports no save and runtime shutdown drains accepted writes (39.407959ms)
|
|
8
|
+
✔ real CLI read-write saves and a fresh read-only CLI recalls the same memory (1133.358584ms)
|
|
9
|
+
✔ capture bounds waiting writes and drains accepted retries without duplicate memory (189.656875ms)
|
|
10
|
+
✔ remote tools are an explicit read-only allowlist with strict published schemas (198.726125ms)
|
|
11
|
+
✔ policy works without DB access and rejected inputs never return memories or supplied values (12.996167ms)
|
|
12
|
+
✔ Global scope, Japanese/subject queries and JSON character budgets match the local gated path (158.349208ms)
|
|
13
|
+
✔ missing, non-regular, corrupt, outdated and future databases fail without initialization (61.675833ms)
|
|
14
|
+
✔ real stdio CLI defaults to read, returns Global memory and leaves WAL database logically unchanged (698.585834ms)
|
|
15
|
+
✔ stdio closes cleanly on EOF (555.419125ms)
|
|
16
|
+
✔ stdio closes cleanly on SIGTERM (455.624208ms)
|
|
17
|
+
2026-10-21 10:37:28.457 xcodebuild[97618:29847584] DVTFilePathFSEvents: Failed to start fs event stream.
|
|
18
|
+
2026-10-21 10:37:28.616 xcodebuild[97618:29847583] [MT] DVTDeveloperPaths: Failed to get length of DARWIN_USER_CACHE_DIR from confstr(3), error = Error Domain=NSPOSIXErrorDomain Code=5 "Input/output error". Using NSCachesDirectory instead.
|
|
19
|
+
✔ operator project allowlist is read-only, policy-bound and isolated from global and other projects (1920.518459ms)
|
|
20
|
+
✔ real remote MCP binds corrections with no semantic provider without claiming model delivery or application (231.55975ms)
|
|
21
|
+
✔ real remote MCP binds corrections with injected semantic provider without claiming model delivery or application (112.706292ms)
|
|
22
|
+
✔ read receipts expire, remain connection-local and have a bounded count (25.574125ms)
|
|
23
|
+
✔ a failed actual recall remains unavailable when the caller omits its receipt (16.702125ms)
|
|
24
|
+
✔ identical legacy recapture enriches one existing correction without competing memories or caller provenance metadata (39.348208ms)
|
|
25
|
+
✔ baseline and profile migration create current schema and is idempotent (28.380459ms)
|
|
26
|
+
✔ SQL and migration marker roll back together, and a corrected baseline can retry (72.253875ms)
|
|
27
|
+
✔ initialization refuses old without changing database or sidecar contents (11.563ms)
|
|
28
|
+
✔ initialization refuses missing-history without changing database or sidecar contents (11.939542ms)
|
|
29
|
+
✔ initialization refuses empty-history without changing database or sidecar contents (23.357958ms)
|
|
30
|
+
✔ initialization refuses checksum without changing database or sidecar contents (80.830334ms)
|
|
31
|
+
✔ initialization refuses future without changing database or sidecar contents (53.621583ms)
|
|
32
|
+
✔ foreign-key failure rolls back initialization of a new file (2.625208ms)
|
|
33
|
+
✔ reinitialization leaves the supported database file unchanged (43.274792ms)
|
|
34
|
+
✔ refuses a non-SQLite file with path and new-directory guidance without modifying it (6.304792ms)
|
|
35
|
+
✔ refuses orphan sidecars before reserving a new database and preserves their contents (5.5865ms)
|
|
36
|
+
✔ refuses sidecars that appear after fresh path reservation without opening SQLite (6.84ms)
|
|
37
|
+
✔ refuses a rollback journal without invoking SQLite recovery (23.088458ms)
|
|
38
|
+
✔ baseline installs the derived embedding schema without provider I/O (34.353833ms)
|
|
39
|
+
✔ profile migration upgrades the immutable v1 baseline without parsing or deleting existing sessions (45.307584ms)
|
|
40
|
+
✔ interaction migration upgrades v2 without reclassifying existing memory or rewriting revisions (37.989083ms)
|
|
41
|
+
✔ policy digest and version come from one bundled source; attestation is exact (0.708666ms)
|
|
42
|
+
✔ remote schemas enforce limits and reject local authority and unknown fields (2.900417ms)
|
|
43
|
+
✔ CLI rejects invalid and unsupported profile/access combinations before opening a database (14.688541ms)
|
|
44
|
+
✔ first use persists only host-owned metadata; body survives a lossy summary and unchanged reuse survives restart (130.910083ms)
|
|
45
|
+
✔ legacy/caller metadata cannot activate a rule; shadow, unknown and reference never trigger the compatibility gate (111.718208ms)
|
|
46
|
+
✔ title, body, summary, revision and provider configuration invalidate cached meaning without rewriting old entries (102.29975ms)
|
|
47
|
+
✔ concurrent updates cannot receive a classification from an earlier revision, and concurrent identical lookups share inference (56.91475ms)
|
|
48
|
+
✔ outage remains explicit, is cached and cannot become reference (25.590667ms)
|
|
49
|
+
✔ malformed remains explicit, is cached and cannot become reference (49.870291ms)
|
|
50
|
+
✔ abstain remains explicit, is cached and cannot become reference (37.885417ms)
|
|
51
|
+
✔ timeout remains explicit, is cached and cannot become reference (42.748125ms)
|
|
52
|
+
✔ parent cancellation never persists an asynchronous result (35.059708ms)
|
|
53
|
+
✔ cached meaning cannot survive entry deletion or a foreign workspace identity (48.697291ms)
|
|
54
|
+
✔ corrupt persisted classification fails closed without repeating inference or repairing memory content (42.704458ms)
|
|
55
|
+
✔ the semantic request carries the full body, explicit abstention and no execution effects (0.140875ms)
|
|
56
|
+
✔ the additive cache migration upgrades a real prior schema without changing legacy memory (45.215917ms)
|
|
57
|
+
ℹ tests 54
|
|
58
|
+
ℹ suites 0
|
|
59
|
+
ℹ pass 54
|
|
60
|
+
ℹ fail 0
|
|
61
|
+
ℹ cancelled 0
|
|
62
|
+
ℹ skipped 0
|
|
63
|
+
ℹ todo 0
|
|
64
|
+
ℹ duration_ms 5793.910041
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
✔ evaluation denominators include positive abstentions/outages as misses and all gold non-special cases (0.829875ms)
|
|
2
|
+
✔ empty denominators are unavailable and cannot pass release gates (0.094375ms)
|
|
3
|
+
✔ held-out corpus is disjoint, balanced and aligned across the five declared languages (0.725625ms)
|
|
4
|
+
ℹ tests 3
|
|
5
|
+
ℹ suites 0
|
|
6
|
+
ℹ pass 3
|
|
7
|
+
ℹ fail 0
|
|
8
|
+
ℹ cancelled 0
|
|
9
|
+
ℹ skipped 0
|
|
10
|
+
ℹ todo 0
|
|
11
|
+
ℹ duration_ms 74.4725
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
[kiokuko-dsh] [info] plugin loaded
|
|
2
|
+
[kiokuko-dsh] [info] Setup complete: Skills 43 created, 0 updated (/private/tmp/kiokuko-correction-semantics-20261021/kiokuko-skill-home-OvP6sH/.agents/skills); AGENTS.md unmanaged-or-absent (/private/tmp/kiokuko-correction-semantics-20261021/skill-delivery-4a7URB/AGENTS.md). Reload existing sessions to refresh their instructions.
|
|
3
|
+
[kiokuko-dsh] [warn] toolExposure left the native surface unchanged: auto:unbound:turn_record_missing
|
|
4
|
+
[kiokuko-dsh] toolExposure projection {"requestedMode":"auto","mode":"lean","reason":"task_execution:build:projected","toolCountBefore":30,"toolCountAfter":23,"taskFilteredCount":0,"phaseFilteredCount":7,"descriptionTransformedCount":1,"descriptionBytesBefore":20450,"descriptionBytesAfter":8083,"parameterBytesBefore":32907,"parameterBytesAfter":25395,"unownedSurfaceReductionCount":0,"unownedSurfaceReductionReason":"registration_provenance_unavailable"}
|
|
5
|
+
✔ native correction handoff and scoped version-gate rejection (public, drop=false) (1696.796375ms)
|
|
6
|
+
[kiokuko-dsh] [info] plugin loaded
|
|
7
|
+
[kiokuko-dsh] [warn] toolExposure left the native surface unchanged: auto:unbound:turn_record_missing
|
|
8
|
+
[kiokuko-dsh] toolExposure projection {"requestedMode":"auto","mode":"lean","reason":"task_execution:build:projected","toolCountBefore":30,"toolCountAfter":23,"taskFilteredCount":0,"phaseFilteredCount":7,"descriptionTransformedCount":1,"descriptionBytesBefore":20450,"descriptionBytesAfter":8083,"parameterBytesBefore":32907,"parameterBytesAfter":25395,"unownedSurfaceReductionCount":0,"unownedSurfaceReductionReason":"registration_provenance_unavailable"}
|
|
9
|
+
✔ native correction handoff and scoped version-gate rejection (public, drop=true) (891.448209ms)
|
|
10
|
+
[kiokuko-dsh] [info] plugin loaded
|
|
11
|
+
[kiokuko-dsh] [warn] toolExposure left the native surface unchanged: auto:unbound:turn_record_missing
|
|
12
|
+
[kiokuko-dsh] toolExposure projection {"requestedMode":"auto","mode":"lean","reason":"task_execution:build:projected","toolCountBefore":30,"toolCountAfter":23,"taskFilteredCount":0,"phaseFilteredCount":7,"descriptionTransformedCount":1,"descriptionBytesBefore":20450,"descriptionBytesAfter":8083,"parameterBytesBefore":32907,"parameterBytesAfter":25395,"unownedSurfaceReductionCount":0,"unownedSurfaceReductionReason":"registration_provenance_unavailable"}
|
|
13
|
+
✔ native correction handoff and scoped version-gate rejection (adapter, drop=false) (882.449708ms)
|
|
14
|
+
[kiokuko-dsh] [info] plugin loaded
|
|
15
|
+
[kiokuko-dsh] [warn] toolExposure left the native surface unchanged: auto:unbound:turn_record_missing
|
|
16
|
+
[kiokuko-dsh] toolExposure projection {"requestedMode":"auto","mode":"lean","reason":"task_execution:build:projected","toolCountBefore":30,"toolCountAfter":23,"taskFilteredCount":0,"phaseFilteredCount":7,"descriptionTransformedCount":1,"descriptionBytesBefore":20450,"descriptionBytesAfter":8083,"parameterBytesBefore":32907,"parameterBytesAfter":25395,"unownedSurfaceReductionCount":0,"unownedSurfaceReductionReason":"registration_provenance_unavailable"}
|
|
17
|
+
✔ native correction handoff and scoped version-gate rejection (adapter, drop=true) (877.614667ms)
|
|
18
|
+
[kiokuko-dsh] [info] plugin loaded
|
|
19
|
+
[kiokuko-dsh] [warn] toolExposure left the native surface unchanged: auto:unbound:turn_record_missing
|
|
20
|
+
[kiokuko-dsh] toolExposure projection {"requestedMode":"auto","mode":"lean","reason":"task_execution:build:projected","toolCountBefore":30,"toolCountAfter":23,"taskFilteredCount":0,"phaseFilteredCount":7,"descriptionTransformedCount":1,"descriptionBytesBefore":20450,"descriptionBytesAfter":8083,"parameterBytesBefore":32907,"parameterBytesAfter":25395,"unownedSurfaceReductionCount":0,"unownedSurfaceReductionReason":"registration_provenance_unavailable"}
|
|
21
|
+
✔ native shadow never invokes special correction handling (public) (688.143416ms)
|
|
22
|
+
[kiokuko-dsh] [info] plugin loaded
|
|
23
|
+
[kiokuko-dsh] [warn] toolExposure left the native surface unchanged: auto:unbound:turn_record_missing
|
|
24
|
+
[kiokuko-dsh] toolExposure projection {"requestedMode":"auto","mode":"lean","reason":"task_execution:build:projected","toolCountBefore":30,"toolCountAfter":23,"taskFilteredCount":0,"phaseFilteredCount":7,"descriptionTransformedCount":1,"descriptionBytesBefore":20450,"descriptionBytesAfter":8083,"parameterBytesBefore":32907,"parameterBytesAfter":25395,"unownedSurfaceReductionCount":0,"unownedSurfaceReductionReason":"registration_provenance_unavailable"}
|
|
25
|
+
✔ native reference never invokes special correction handling (public) (689.047875ms)
|
|
26
|
+
[kiokuko-dsh] [info] plugin loaded
|
|
27
|
+
[kiokuko-dsh] [warn] toolExposure left the native surface unchanged: auto:unbound:turn_record_missing
|
|
28
|
+
[kiokuko-dsh] toolExposure projection {"requestedMode":"auto","mode":"lean","reason":"task_execution:build:projected","toolCountBefore":30,"toolCountAfter":23,"taskFilteredCount":0,"phaseFilteredCount":7,"descriptionTransformedCount":1,"descriptionBytesBefore":20450,"descriptionBytesAfter":8083,"parameterBytesBefore":32907,"parameterBytesAfter":25395,"unownedSurfaceReductionCount":0,"unownedSurfaceReductionReason":"registration_provenance_unavailable"}
|
|
29
|
+
✔ native uncertain never invokes special correction handling (public) (687.386333ms)
|
|
30
|
+
[kiokuko-dsh] [info] plugin loaded
|
|
31
|
+
[kiokuko-dsh] [warn] toolExposure left the native surface unchanged: auto:unbound:turn_record_missing
|
|
32
|
+
[kiokuko-dsh] toolExposure projection {"requestedMode":"auto","mode":"lean","reason":"task_execution:build:projected","toolCountBefore":30,"toolCountAfter":23,"taskFilteredCount":0,"phaseFilteredCount":7,"descriptionTransformedCount":1,"descriptionBytesBefore":20450,"descriptionBytesAfter":8083,"parameterBytesBefore":32907,"parameterBytesAfter":25395,"unownedSurfaceReductionCount":0,"unownedSurfaceReductionReason":"registration_provenance_unavailable"}
|
|
33
|
+
✔ native unavailable never invokes special correction handling (public) (686.763709ms)
|
|
34
|
+
[kiokuko-dsh] [info] plugin loaded
|
|
35
|
+
[kiokuko-dsh] [warn] toolExposure left the native surface unchanged: auto:unbound:turn_record_missing
|
|
36
|
+
[kiokuko-dsh] toolExposure projection {"requestedMode":"auto","mode":"lean","reason":"task_execution:build:projected","toolCountBefore":30,"toolCountAfter":23,"taskFilteredCount":0,"phaseFilteredCount":7,"descriptionTransformedCount":1,"descriptionBytesBefore":20450,"descriptionBytesAfter":8083,"parameterBytesBefore":32907,"parameterBytesAfter":25395,"unownedSurfaceReductionCount":0,"unownedSurfaceReductionReason":"registration_provenance_unavailable"}
|
|
37
|
+
✔ native shadow never invokes special correction handling (adapter) (705.926292ms)
|
|
38
|
+
[kiokuko-dsh] [info] plugin loaded
|
|
39
|
+
[kiokuko-dsh] [warn] toolExposure left the native surface unchanged: auto:unbound:turn_record_missing
|
|
40
|
+
[kiokuko-dsh] toolExposure projection {"requestedMode":"auto","mode":"lean","reason":"task_execution:build:projected","toolCountBefore":30,"toolCountAfter":23,"taskFilteredCount":0,"phaseFilteredCount":7,"descriptionTransformedCount":1,"descriptionBytesBefore":20450,"descriptionBytesAfter":8083,"parameterBytesBefore":32907,"parameterBytesAfter":25395,"unownedSurfaceReductionCount":0,"unownedSurfaceReductionReason":"registration_provenance_unavailable"}
|
|
41
|
+
✔ native reference never invokes special correction handling (adapter) (694.795375ms)
|
|
42
|
+
[kiokuko-dsh] [info] plugin loaded
|
|
43
|
+
[kiokuko-dsh] [warn] toolExposure left the native surface unchanged: auto:unbound:turn_record_missing
|
|
44
|
+
[kiokuko-dsh] toolExposure projection {"requestedMode":"auto","mode":"lean","reason":"task_execution:build:projected","toolCountBefore":30,"toolCountAfter":23,"taskFilteredCount":0,"phaseFilteredCount":7,"descriptionTransformedCount":1,"descriptionBytesBefore":20450,"descriptionBytesAfter":8083,"parameterBytesBefore":32907,"parameterBytesAfter":25395,"unownedSurfaceReductionCount":0,"unownedSurfaceReductionReason":"registration_provenance_unavailable"}
|
|
45
|
+
✔ native uncertain never invokes special correction handling (adapter) (696.069417ms)
|
|
46
|
+
[kiokuko-dsh] [info] plugin loaded
|
|
47
|
+
[kiokuko-dsh] [warn] toolExposure left the native surface unchanged: auto:unbound:turn_record_missing
|
|
48
|
+
[kiokuko-dsh] toolExposure projection {"requestedMode":"auto","mode":"lean","reason":"task_execution:build:projected","toolCountBefore":30,"toolCountAfter":23,"taskFilteredCount":0,"phaseFilteredCount":7,"descriptionTransformedCount":1,"descriptionBytesBefore":20450,"descriptionBytesAfter":8083,"parameterBytesBefore":32907,"parameterBytesAfter":25395,"unownedSurfaceReductionCount":0,"unownedSurfaceReductionReason":"registration_provenance_unavailable"}
|
|
49
|
+
✔ native unavailable never invokes special correction handling (adapter) (692.837084ms)
|
|
50
|
+
ℹ tests 12
|
|
51
|
+
ℹ suites 0
|
|
52
|
+
ℹ pass 12
|
|
53
|
+
ℹ fail 0
|
|
54
|
+
ℹ cancelled 0
|
|
55
|
+
ℹ skipped 0
|
|
56
|
+
ℹ todo 0
|
|
57
|
+
ℹ duration_ms 10280.6255
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"package": "kiokuko-dsh",
|
|
4
|
+
"status": "passed",
|
|
5
|
+
"runtimeSnapshotByteMatched": [
|
|
6
|
+
"scripts/module-compatibility-assets.json",
|
|
7
|
+
"scripts/pack-check.mjs",
|
|
8
|
+
"src/dsh/core/tasks.ts",
|
|
9
|
+
"src/dsh/correction-context.ts",
|
|
10
|
+
"src/dsh/decisions/config.ts",
|
|
11
|
+
"src/dsh/decisions/contracts.ts",
|
|
12
|
+
"src/dsh/decisions/diagnostics.ts",
|
|
13
|
+
"src/dsh/decisions/service.ts",
|
|
14
|
+
"src/dsh/host-adapter.ts",
|
|
15
|
+
"src/dsh/host-adapter/context.ts",
|
|
16
|
+
"src/memory/correction-contract.ts",
|
|
17
|
+
"migrations/045_correction_classification.sql",
|
|
18
|
+
"src/dsh/decisions/correction.ts",
|
|
19
|
+
"src/memory/correction-classification.ts"
|
|
20
|
+
],
|
|
21
|
+
"requiredAssets": [
|
|
22
|
+
"dist/memory/correction-classification.js",
|
|
23
|
+
"dist/memory/correction-contract.js",
|
|
24
|
+
"migrations/045_correction_classification.sql",
|
|
25
|
+
"dist/dsh/decisions/correction.js"
|
|
26
|
+
],
|
|
27
|
+
"tarball": "kiokuko-dsh-0.2.17.tgz",
|
|
28
|
+
"tarballSha256": "5c2c39352fae24ed76730de9f57ec94ada25e8f0813b1f4fe38c127fd38af489",
|
|
29
|
+
"scripts": "ignored; no install or publish"
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"package": "kiokuko",
|
|
33
|
+
"status": "passed",
|
|
34
|
+
"runtimeSnapshotByteMatched": [
|
|
35
|
+
"src/mcp/chatgpt-contract.ts",
|
|
36
|
+
"src/mcp/chatgpt-server.ts",
|
|
37
|
+
"src/mcp/correction-review.ts",
|
|
38
|
+
"src/memory/correction-contract.ts",
|
|
39
|
+
"migrations/015_correction_classification.sql",
|
|
40
|
+
"src/memory/correction-classification.ts"
|
|
41
|
+
],
|
|
42
|
+
"requiredAssets": [
|
|
43
|
+
"dist/memory/correction-classification.js",
|
|
44
|
+
"dist/memory/correction-contract.js",
|
|
45
|
+
"migrations/015_correction_classification.sql"
|
|
46
|
+
],
|
|
47
|
+
"tarball": "kiokuko-1.0.45.tgz",
|
|
48
|
+
"tarballSha256": "70d4aaf24b9e9959146f9a5860113cd1b72c8469e114dfc601e7fae840d23fdc",
|
|
49
|
+
"scripts": "ignored; no install or publish"
|
|
50
|
+
}
|
|
51
|
+
]
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": "correction-live-evaluation-v1",
|
|
3
|
+
"mode": "live-synthetic",
|
|
4
|
+
"split": "development",
|
|
5
|
+
"prototypeOnly": true,
|
|
6
|
+
"sourceSha": "01e27576d2efe5020c19e93bdba1a6528bfcaee1",
|
|
7
|
+
"policy": "correction-meaning-v1",
|
|
8
|
+
"startedAt": "2026-10-21T01:23:19.231Z",
|
|
9
|
+
"nodeVersion": "v24.16.0",
|
|
10
|
+
"implementationSha256": {
|
|
11
|
+
"src/memory/correction-contract.ts": "3b815bc09b5fe1d3211a1332f8cd2a161f02528f1050716e1f5976434a9cb881",
|
|
12
|
+
"src/memory/correction-classification.ts": "fe1fb793025600249d630ec5b08c6fae67a291f433e41b8f6d68e4b74de41fb5",
|
|
13
|
+
"src/dsh/decisions/correction.ts": "cf0524467e9e6c084a4f208c6afc6c415665e1284792266b73ff4837391315cc",
|
|
14
|
+
"src/dsh/decisions/contracts.ts": "829121e8788ee4cea9f34335985ca368bca638924d04c170a444e41fd9f971b3",
|
|
15
|
+
"src/dsh/decisions/service.ts": "f7423d0a82b8fab07189f419507f539d53641ac941e99845b902ebc8c89b4f44",
|
|
16
|
+
"src/dsh/decisions/providers.ts": "ac81c87a2a1553bfcd14a173c7060b204ed2133d93889d845f5e45575c61802f"
|
|
17
|
+
},
|
|
18
|
+
"corpusSha256": "55350662ade98aaeb475829cfc5158828d629da2ac06ae72b93d959afb20c80d",
|
|
19
|
+
"batchContractSha256": "fc16c03dae9fac288f713acc0e1e64cdff2bc338600e8cf2b3b873441f63054e",
|
|
20
|
+
"baselineSourceSha": "01e27576d2efe5020c19e93bdba1a6528bfcaee1",
|
|
21
|
+
"provider": "typesafe",
|
|
22
|
+
"configuredModel": "jev-1.13.0",
|
|
23
|
+
"acceptance": {
|
|
24
|
+
"minConfidence": 0.8
|
|
25
|
+
},
|
|
26
|
+
"distinctSemanticFamilies": 0,
|
|
27
|
+
"limitations": "24 distinct held-out semantic families, each aligned across five languages; translations are not 120 independent semantic families. Synthetic authored labels; no claim of arbitrary-language validity.",
|
|
28
|
+
"rows": [],
|
|
29
|
+
"metrics": null,
|
|
30
|
+
"prototype": {
|
|
31
|
+
"capture": {
|
|
32
|
+
"writeMs": 4.670458999999994,
|
|
33
|
+
"totalMs": 233.71345900000006,
|
|
34
|
+
"inferenceMs": 229.04137500000007,
|
|
35
|
+
"inputTokens": 571
|
|
36
|
+
},
|
|
37
|
+
"firstUse": {
|
|
38
|
+
"captureMs": 2.964375000000018,
|
|
39
|
+
"coldLookupMs": 155.61066600000004,
|
|
40
|
+
"cachedLookupMeanMs": 0.9485958499999981,
|
|
41
|
+
"repeatedLookups": 20,
|
|
42
|
+
"repeatedProviderCalls": 0,
|
|
43
|
+
"inputTokens": 570
|
|
44
|
+
},
|
|
45
|
+
"changedEntry": {
|
|
46
|
+
"providerCalls": 1,
|
|
47
|
+
"elapsedMs": 160.63212499999997,
|
|
48
|
+
"oldObjectState": "stale"
|
|
49
|
+
},
|
|
50
|
+
"selection": "first-use with durable content/revision/policy/configuration cache",
|
|
51
|
+
"rationale": "Capture does not wait for inference; unused corrections cause no model calls. First use pays one inference; unchanged repeated use pays cache I/O. A changed entry is reclassified."
|
|
52
|
+
}
|
|
53
|
+
}
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schema": "correction-verification-v1",
|
|
3
|
+
"host": "dkmkbkair2k21.local",
|
|
4
|
+
"platform": "darwin-arm64",
|
|
5
|
+
"node": "24.16.0",
|
|
6
|
+
"rust": "1.99.1 (58cf8f9c3 2026-10-13)",
|
|
7
|
+
"checks": [
|
|
8
|
+
{
|
|
9
|
+
"label": "dsh-final-2-unit",
|
|
10
|
+
"exit": 0,
|
|
11
|
+
"seconds": 5.5123971659999995,
|
|
12
|
+
"args": [
|
|
13
|
+
"/tmp/kiokuko-ci-repair-20261020/runtime/node-v24.16.0-darwin-arm64/bin/node",
|
|
14
|
+
"--import",
|
|
15
|
+
"tsx",
|
|
16
|
+
"--test",
|
|
17
|
+
"tests/dsh/unit/correction-classification.test.ts",
|
|
18
|
+
"tests/dsh/unit/correction-decision.test.ts",
|
|
19
|
+
"tests/dsh/unit/correction-evaluation.test.ts",
|
|
20
|
+
"tests/dsh/unit/decisions/correction.test.ts",
|
|
21
|
+
"tests/dsh/unit/decisions/contracts.test.ts",
|
|
22
|
+
"tests/dsh/unit/decisions/laya-coreml.test.ts",
|
|
23
|
+
"tests/dsh/integration/correction-workflow.test.ts",
|
|
24
|
+
"tests/dsh/unit/migration-assets-regression.test.mjs"
|
|
25
|
+
]
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"label": "dsh-final-2-typecheck",
|
|
29
|
+
"exit": 0,
|
|
30
|
+
"seconds": 8.841066542,
|
|
31
|
+
"args": [
|
|
32
|
+
"/tmp/kiokuko-ci-repair-20261020/runtime/node-v24.16.0-darwin-arm64/bin/node",
|
|
33
|
+
"node_modules/typescript/bin/tsc",
|
|
34
|
+
"-p",
|
|
35
|
+
"tsconfig.json",
|
|
36
|
+
"--noEmit"
|
|
37
|
+
]
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"label": "main-final-2-unit",
|
|
41
|
+
"exit": 0,
|
|
42
|
+
"seconds": 5.981610584,
|
|
43
|
+
"args": [
|
|
44
|
+
"/tmp/kiokuko-ci-repair-20261020/runtime/node-v24.16.0-darwin-arm64/bin/node",
|
|
45
|
+
"--import",
|
|
46
|
+
"tsx",
|
|
47
|
+
"--test",
|
|
48
|
+
"tests/unit/correction-classification.test.ts",
|
|
49
|
+
"tests/integration/correction-review.test.ts",
|
|
50
|
+
"tests/unit/chatgpt-contract.test.ts",
|
|
51
|
+
"tests/integration/chatgpt-mcp.test.ts",
|
|
52
|
+
"tests/integration/chatgpt-capture.test.ts",
|
|
53
|
+
"tests/integration/migrations.test.ts"
|
|
54
|
+
]
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"label": "main-final-2-typecheck",
|
|
58
|
+
"exit": 0,
|
|
59
|
+
"seconds": 5.775224207999999,
|
|
60
|
+
"args": [
|
|
61
|
+
"/tmp/kiokuko-ci-repair-20261020/runtime/node-v24.16.0-darwin-arm64/bin/node",
|
|
62
|
+
"node_modules/typescript/bin/tsc",
|
|
63
|
+
"-p",
|
|
64
|
+
"tsconfig.json",
|
|
65
|
+
"--noEmit"
|
|
66
|
+
]
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"label": "native-final",
|
|
70
|
+
"exit": 0,
|
|
71
|
+
"seconds": 10.414792249968741,
|
|
72
|
+
"args": [
|
|
73
|
+
"/tmp/kiokuko-ci-repair-20261020/runtime/node-v24.16.0-darwin-arm64/bin/node",
|
|
74
|
+
"--import",
|
|
75
|
+
"tsx",
|
|
76
|
+
"--test",
|
|
77
|
+
"tests/dsh/integration/correction-native.test.ts"
|
|
78
|
+
]
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
"label": "metrics-final",
|
|
82
|
+
"exit": 0,
|
|
83
|
+
"seconds": 0.11212245800000001,
|
|
84
|
+
"args": [
|
|
85
|
+
"/tmp/kiokuko-ci-repair-20261020/runtime/node-v24.16.0-darwin-arm64/bin/node",
|
|
86
|
+
"--import",
|
|
87
|
+
"tsx",
|
|
88
|
+
"--test",
|
|
89
|
+
"tests/dsh/unit/correction-evaluation.test.ts"
|
|
90
|
+
]
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"label": "dsh-final-3-typecheck",
|
|
94
|
+
"exit": 0,
|
|
95
|
+
"seconds": 9.412363375,
|
|
96
|
+
"args": [
|
|
97
|
+
"/tmp/kiokuko-ci-repair-20261020/runtime/node-v24.16.0-darwin-arm64/bin/node",
|
|
98
|
+
"node_modules/typescript/bin/tsc",
|
|
99
|
+
"-p",
|
|
100
|
+
"tsconfig.json",
|
|
101
|
+
"--noEmit"
|
|
102
|
+
]
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"label": "live-mcp-final-2",
|
|
106
|
+
"exit": 0,
|
|
107
|
+
"seconds": 1.292674209,
|
|
108
|
+
"args": [
|
|
109
|
+
"/tmp/kiokuko-ci-repair-20261020/runtime/node-v24.16.0-darwin-arm64/bin/node",
|
|
110
|
+
"--import",
|
|
111
|
+
"tsx",
|
|
112
|
+
"/tmp/kiokuko-correction-semantics-20261021/live-mcp-launch.mts",
|
|
113
|
+
"/Users/dkc/Sites/Src/kiokuko",
|
|
114
|
+
"/tmp/kiokuko-correction-semantics-20261021/jev-config.json",
|
|
115
|
+
"/tmp/kiokuko-correction-semantics-20261021/live-mcp-final-2.json"
|
|
116
|
+
]
|
|
117
|
+
}
|
|
118
|
+
],
|
|
119
|
+
"builds": [
|
|
120
|
+
{
|
|
121
|
+
"label": "main-build",
|
|
122
|
+
"exit": 0,
|
|
123
|
+
"seconds": 5.04937791696284,
|
|
124
|
+
"timedOut": false
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
"label": "dsh-build",
|
|
128
|
+
"exit": 0,
|
|
129
|
+
"seconds": 8.328844834002666,
|
|
130
|
+
"timedOut": false
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
"label": "built-product-pair",
|
|
134
|
+
"exit": 0,
|
|
135
|
+
"seconds": 6.806159999978263,
|
|
136
|
+
"timedOut": false
|
|
137
|
+
}
|
|
138
|
+
],
|
|
139
|
+
"compiledProductPair": [
|
|
140
|
+
{
|
|
141
|
+
"label": "built-both-product-pair",
|
|
142
|
+
"exit": 0,
|
|
143
|
+
"seconds": 8.074469084036537,
|
|
144
|
+
"timedOut": false
|
|
145
|
+
}
|
|
146
|
+
],
|
|
147
|
+
"packageEvidence": "package-evidence.json",
|
|
148
|
+
"ci": "Not run on GitHub/Linux for this uncommitted diff",
|
|
149
|
+
"scope": "Disposable DBs and isolated build/dependency environment; no live configuration/database/plugin changes, commit or push",
|
|
150
|
+
"sources": {
|
|
151
|
+
"kiokuko-dsh": {
|
|
152
|
+
"head": "01e27576d2efe5020c19e93bdba1a6528bfcaee1",
|
|
153
|
+
"originMain": "01e27576d2efe5020c19e93bdba1a6528bfcaee1",
|
|
154
|
+
"sha256": {
|
|
155
|
+
"migrations/045_correction_classification.sql": "bb738eeba688a295cb7890219e6f7672b3f44f4cb055ef998768a89ad73c3973",
|
|
156
|
+
"scripts/correction-evaluation.mjs": "92ae63e451af93f620d502cb846396a115e8ddebcd6b6997309276556fe560ba",
|
|
157
|
+
"scripts/evaluate-correction-classification.mjs": "8e600f0dd8cecc0e3116ee2f91380c419070d09422933aa43a33864b4fe06708",
|
|
158
|
+
"scripts/module-compatibility-assets.json": "1e940d01d6a2ad070841bca87567ca3f2d8759f20763bcb78cbbc24d67035ab9",
|
|
159
|
+
"scripts/pack-check.mjs": "51f4d2e06a8503347c00a3cbd0ce9145f7dab8ad4540f78623e8098c3050e59e",
|
|
160
|
+
"scripts/verify-correction-mcp-live.mts": "3982240121a0ce02091eefc830eab220309c600d2689fc5f4dc61d699dad895b",
|
|
161
|
+
"scripts/verify-correction-product-pair.ts": "3680ebffff06ddf115c4ada69cf2558db3230d0e188701da5884c3878124c9e7",
|
|
162
|
+
"src/dsh/core/tasks.ts": "4e7a1a0679db58b5745ab3b3576ed5f427a699677fae9d84137a7b921df3fe16",
|
|
163
|
+
"src/dsh/correction-context.ts": "6286ac5fbb70404fa4412e45576bc95cbfccbedda6dc238280bc537798d869f0",
|
|
164
|
+
"src/dsh/decisions/config.ts": "3a0eda0899c9567c67cf0c1933684f5264f6eb8db8aaec566bb66709f27be4a7",
|
|
165
|
+
"src/dsh/decisions/contracts.ts": "829121e8788ee4cea9f34335985ca368bca638924d04c170a444e41fd9f971b3",
|
|
166
|
+
"src/dsh/decisions/correction.ts": "cf0524467e9e6c084a4f208c6afc6c415665e1284792266b73ff4837391315cc",
|
|
167
|
+
"src/dsh/decisions/diagnostics.ts": "b8892d538879ea747d9e9421053049940b2beb0a9ba17543ffffea71bc410e81",
|
|
168
|
+
"src/dsh/decisions/service.ts": "f7423d0a82b8fab07189f419507f539d53641ac941e99845b902ebc8c89b4f44",
|
|
169
|
+
"src/dsh/host-adapter.ts": "5ea88eb5bb2a7839bcb6a81ad3170218b33d21e68a70178a76a93e40bfb1c386",
|
|
170
|
+
"src/dsh/host-adapter/context.ts": "cfb782626c97cc418285d8702e135692e53ac304b6f98108baf6545c47c55caf",
|
|
171
|
+
"src/memory/correction-classification.ts": "fe1fb793025600249d630ec5b08c6fae67a291f433e41b8f6d68e4b74de41fb5",
|
|
172
|
+
"src/memory/correction-contract.ts": "3b815bc09b5fe1d3211a1332f8cd2a161f02528f1050716e1f5976434a9cb881",
|
|
173
|
+
"tests/dsh/helpers/correction-decisions.ts": "45a9c5e652a788856d5232a191814e20ba1c0a9d431f8c80edf3bc8abc110fe1",
|
|
174
|
+
"tests/dsh/integration/correction-native.test.ts": "bd231e82e6ca843b0d1be7acf873f479fc43efea6f61ca6675c9fde2f18e6988",
|
|
175
|
+
"tests/dsh/unit/correction-classification.test.ts": "c23a7126d56d9079ddc337d723a18beef844f7962a47bb6c019160857aa07767",
|
|
176
|
+
"tests/dsh/unit/correction-decision.test.ts": "053142c3694b7755e2c0e7a7b274fa1ebefad5cfc812fe5f15b445a0ff3a5852",
|
|
177
|
+
"tests/dsh/unit/correction-evaluation.test.ts": "4f548beabd3cf4f021b6c447fa7c18f2813ad31df9b0f17f6be50fba4f58c873",
|
|
178
|
+
"tests/dsh/unit/decisions/correction.test.ts": "9d5d460701e4eb715139617fd04f7a8c029660604739cc662788205e958caa40",
|
|
179
|
+
"tests/fixtures/correction-classification.json": "55350662ade98aaeb475829cfc5158828d629da2ac06ae72b93d959afb20c80d"
|
|
180
|
+
},
|
|
181
|
+
"sourceSetSha256": "3c1f1ab47b1ad046206769bc039d379607543801ab5c73011b1dcd038591d0a1"
|
|
182
|
+
},
|
|
183
|
+
"kiokuko": {
|
|
184
|
+
"head": "5289ed72e347e65eb9a17d8b1d90f51958f8b333",
|
|
185
|
+
"originMain": "5289ed72e347e65eb9a17d8b1d90f51958f8b333",
|
|
186
|
+
"sha256": {
|
|
187
|
+
"migrations/015_correction_classification.sql": "bb738eeba688a295cb7890219e6f7672b3f44f4cb055ef998768a89ad73c3973",
|
|
188
|
+
"src/mcp/chatgpt-contract.ts": "320182b3daef87a9480cae1154e33d592c85087c24e2056ef97fb43e023800b9",
|
|
189
|
+
"src/mcp/chatgpt-server.ts": "b7320aa5e515f82e54fe676d7c693eb6b9b43e6a853003f1f3ba2461102b01ab",
|
|
190
|
+
"src/mcp/correction-review.ts": "ea4f48b7e4b1d814da2431c35c6db4a3d8d023f488b77a4dd45e9fb0d3def33d",
|
|
191
|
+
"src/memory/correction-classification.ts": "fe1fb793025600249d630ec5b08c6fae67a291f433e41b8f6d68e4b74de41fb5",
|
|
192
|
+
"src/memory/correction-contract.ts": "3b815bc09b5fe1d3211a1332f8cd2a161f02528f1050716e1f5976434a9cb881",
|
|
193
|
+
"tests/integration/correction-review.test.ts": "4d2fad0711f06c326b0be3060a183ae90411011444ad8fcd5344a9728e00d9ae",
|
|
194
|
+
"tests/unit/correction-classification.test.ts": "59272ce20f1fb8193ee5a0eb66baa6a228cd6091f75e37f1b65e1add1bca6476"
|
|
195
|
+
},
|
|
196
|
+
"sourceSetSha256": "704ab45cf28523074b1736923fe154725a1412fec0ab8fde76bcb5da78082899"
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
}
|
package/docs/guardrail.md
CHANGED
|
@@ -23,11 +23,11 @@ The full package and core module include precompiled artifacts, protocol, Node r
|
|
|
23
23
|
|
|
24
24
|
- Linux x64: static musl ELF; native CLI smoke and reproducible-build checks passed on Linux x64.
|
|
25
25
|
- Linux ARM64: static musl ELF, cloud cross-built; native execution not run.
|
|
26
|
-
- macOS
|
|
27
|
-
-
|
|
26
|
+
- macOS Apple Silicon (ARM64): cloud cross-built Mach-O, minimum macOS 13; native execution not run. ARM64 ad-hoc signature structure was checked.
|
|
27
|
+
- Intel Mac and other hosts: unsupported; no substitute architecture is selected.
|
|
28
28
|
|
|
29
29
|
Cross-build, format and hash checks do not establish native compatibility, arbitrary runtime behavior, notarization or developer signing. Package smoke execution applies only to its actual host. Linux musl binaries have no dynamic ELF interpreter.
|
|
30
30
|
|
|
31
31
|
## Repository source and maintenance
|
|
32
32
|
|
|
33
|
-
The repository includes the actual dependency-free Rust library/CLI at [crates/guardrail](../crates/guardrail/README.md), including the restricted-language/evidence-wire specification, protocol, Cargo lockfile and tests. [Build and release instructions](../crates/guardrail-release/BUILDING.md) accompany the pinned official-source toolchain inputs and portable offline recipe. This source/build layer is excluded from npm runtime tarballs; runtime [third-party notices](guardrail-licenses/README.md) remain included. Original recorded repeat-build evidence does not mean an adapted wrapper has reproduced every target.
|
|
33
|
+
The repository includes the actual dependency-free Rust library/CLI at [crates/guardrail](../crates/guardrail/README.md), including the restricted-language/evidence-wire specification, protocol, Cargo lockfile and tests. [Build and release instructions](../crates/guardrail-release/BUILDING.md) accompany the pinned official-source toolchain inputs and portable offline recipe. This source/build layer is excluded from npm runtime tarballs; runtime [third-party notices](guardrail-licenses/README.md) remain included. Original recorded repeat-build evidence does not mean an adapted wrapper has reproduced every target. Historical Intel Mac records remain in the frozen source and release provenance for identity verification; they do not describe current shipping support.
|
package/docs/harness-map.md
CHANGED
|
@@ -5,6 +5,8 @@ Use this map to find the current entry point and a focused check before editing.
|
|
|
5
5
|
| Concern | Entry and owner | Focused checks |
|
|
6
6
|
| --- | --- | --- |
|
|
7
7
|
| Task admission and execution choice | `src/dsh/intake-gate.ts`, `src/dsh/host-adapter/admission.ts` | `node scripts/run-tests.mjs tests/dsh/unit/task-completion.test.ts tests/dsh/integration/turn-process.test.ts` |
|
|
8
|
+
| Advisory decision provenance and diagnostics | `src/dsh/decisions/diagnostics.ts`, `src/dsh/decisions/service.ts`, `src/dsh/on-demand-intake.ts`; [contract](decision-diagnostics.md) | `node scripts/run-tests.mjs tests/dsh/integration/decision-diagnostics.test.ts tests/dsh/integration/decision-diagnostics-native.test.ts tests/dsh/integration/turn-process.test.ts` |
|
|
9
|
+
| Independent intent comparison and finite-domain judge | `src/dsh/decisions/intent-assessment.ts`, `src/dsh/decisions/micro-judge.ts`, `crates/micro-judge/src/main.rs`; [contract](micro-judge.md) | `KIOKUKO_REQUIRE_MICRO_JUDGE=1 node scripts/run-tests.mjs tests/dsh/integration/micro-judge.test.ts tests/dsh/integration/request-intent-clarification-native.test.ts` |
|
|
8
10
|
| Task conditions and structured file scope | `src/dsh/execution-frame.ts`, `src/dsh/execution-support.ts` | `node scripts/run-tests.mjs tests/dsh/unit/execution-support.test.ts` |
|
|
9
11
|
| Normal and Enno completion evidence | `src/dsh/task-completion.ts`, `src/enno-oduno/service.ts` | `node scripts/run-tests.mjs tests/dsh/unit/task-completion.test.ts tests/dsh/integration/final-verification` |
|
|
10
12
|
| Durable continuation and recovery | `src/dsh/turn-process.ts`, `src/dsh/boundary-worker.ts` | `node scripts/run-tests.mjs tests/dsh/integration/boundary-worker.test.ts` |
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# Native finite-domain micro judge
|
|
2
|
+
|
|
3
|
+
The experimental `crates/micro-judge` program propagates finite domains and uses minimum-remaining-values search. It has no host callbacks, filesystem effects, network access, permissions or task authority. It is a dependency-free, typed and bounded adaptation of the supplied `prolog/solver.rs` reference algorithm, not the earlier five-way enum router. The reference file's original byte hash is not a hash of this adaptation.
|
|
4
|
+
|
|
5
|
+
`src/dsh/decisions/intent-assessment.ts` independently submits the original request/context and the candidate to the selected real `DecisionService` under `intent-semantic-match`. It asks about action, reference, constraints and the latest applicable native answer. It never copies the extraction result as a semantic verdict. The configured provider still has to be available; scripted tests prove orchestration, not live model accuracy.
|
|
6
|
+
|
|
7
|
+
The host builds a typed relation graph over exact message identities/digests, current task/Goal revisions, candidate proposal-set membership, proposal revisions/digests, legal current task operation membership and the independent semantic observation. Strings are interned to opaque integer identities. Boolean unknown has domain `[0,1]`; integer values cannot stand in for Boolean values. Intermediate variables link the relations, so the executable performs propagation and MRV search. These observations cannot grant execution. Existing native ownership, lease, revision, scope, permission, cancellation and admission checks remain required.
|
|
8
|
+
|
|
9
|
+
A complete entailed relation graph can pass the advisory comparison. Contradiction, ambiguity or inconsistency asks a native clarification. A matching actual UI answer is validated against the same agent/session/question and unchanged context, becomes a fresh native user message/source identity, and is reinterpreted. Its exact text labels the latest explicit revision and its scope; unrelated constraints remain applicable. Wrong-question, replaced/stale context, cancellation and repeat replies cannot create new source authority. Ordinary explanatory answers and native evidence gathering bypass this execution assessment. It operates on resolved candidates; unknown optional intake metadata cannot become a new execution prerequisite. Explicit `typedDecisions.mode=off` retains the pre-existing native authority path and records `assessment_disabled`/`not_run`, with no solver verdict or new grant. An enabled assessment that is unavailable is never converted into that disabled state or a successful comparison. Unowned ordinary native tools keep the existing native-policy path; this assessment currently applies to prepared/owned request intent, not arbitrary shell effects or a new command parser.
|
|
10
|
+
|
|
11
|
+
Unavailable provider/artifact, timeout, malformed or mismatched output and incomplete/resource-limited search produce `assessment_unavailable`; no successful comparison or execution grant is inferred. Infrastructure failure is reported, not presented as a semantic question that a human answer could repair. Semantic-match and detector events share the existing intake diagnostic lineage and record bounded input/output digests, executable hash, version, duration, completeness, verdict or finite unavailable reason. Raw request/answer text is not copied into diagnostics.
|
|
12
|
+
|
|
13
|
+
## Protocol and bounds
|
|
14
|
+
|
|
15
|
+
One UTF-8 line: `kiokuko-fd-v1<TAB>inputIdHex<TAB>sha256PayloadHex<TAB>payload<LF>`. The payload is `workBudget variableCount constraintCount`, then each typed domain (`b|i length values...`), prefix constraints and one Boolean prefix query. Operators are `eq ne lt and or implies diag`; `@0` refers to a variable; Boolean constants are `true false`. `diag a b d` means `abs(a-b) != d`.
|
|
16
|
+
|
|
17
|
+
Bounds: 128 KiB input, 128 variables, 32 values/domain, 256 constraints, three variables/constraint, 2048 AST nodes, depth 32, two million work steps, 100000 solutions. The host normally requests 200000 work steps, enforces a 1500 ms external deadline and 16 KiB output ceiling, and checks version, input identity/digest, binary hash and result invariants. `complete=false` always means no proof. RSS is explicitly unavailable (`null`) on this portable protocol; Linux `/proc` data is not invented on macOS.
|
|
18
|
+
|
|
19
|
+
## Native build and delivery
|
|
20
|
+
|
|
21
|
+
`node scripts/build-micro-judge.mjs /absolute/path/to/rustc` performs an explicit offline build matching the current compiler/host target. It never downloads Rust or modifies shell settings. A matching linker, SDK and target standard library must already exist. The artifact manifest records its SHA256 and byte count with `nativeVerified=false` until native acceptance evidence exists. Normal package build verifies bundled artifacts without compiling or downloading anything. The crate and explicit offline build script remain repository sources; the runtime package contains the prebuilt executable and its verification receipt. Runtime executes only the package's matching, verified artifact path, never PATH or a fallback binary. Unsupported/missing platforms are explicit unavailable; an Apple Silicon run proves no Linux, Intel Mac or Windows execution.
|
|
22
|
+
|
|
23
|
+
The bundled artifact currently has native acceptance on Apple Silicon macOS only. The native-verification receipt pins its binary/source digests and evidence log digests; it makes no live-model accuracy claim. Run `KIOKUKO_REQUIRE_MICRO_JUDGE=1 node scripts/run-tests.mjs tests/dsh/integration/micro-judge.test.ts` to require actual subprocess execution, all four complete statuses, resource exhaustion, queens counts and host relation tests. Native full-host clarification, live selected provider, corrupted-binary sensitivity, packed artifact host and modular delivery acceptance must also be collected before shipping. A passing connection-only suite must never be reported as that acceptance.
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
### Native CI artifacts and distribution
|
|
27
|
+
|
|
28
|
+
The supported shipping build catalog is GNU Linux x64/arm64 and macOS Apple Silicon (arm64). Intel Mac is unsupported. CI uses three native runners (`ubuntu-24.04`, `ubuntu-24.04-arm`, `macos-15`) and fixes Rust 1.85.0 as its declared Cargo minimum-support baseline and repeatable compiler input. This is not an exact-version requirement for local builds: the helper uses the explicitly supplied existing compiler and requires successful compilation and native acceptance, recording the observed compiler identity in both the manifest and receipt. The Rust 2021 edition and existing Cargo `rust-version = "1.85"` declaration remain unchanged; no claim of a lower tested minimum is made. Package consumers use prebuilt binaries and need no Rust installation. These scripts never install a compiler on a user's machine. Linux GNU artifacts require a compatible glibc environment; musl and Windows have no claimed artifact.
|
|
29
|
+
|
|
30
|
+
`node scripts/build-verify-micro-judge.mjs /absolute/path/to/rustc --output=/new/artifact-directory` compiles on its actual host, runs at least 18 mandatory native acceptance cases plus platform regression cases (including the independent 200-case oracle), rejects skipped/incomplete runs, binds the observed TAP output and compiler/source/binary hashes, then exports one verified target. A failed test leaves the candidate unverified. The transport collector `node scripts/merge-micro-judge-artifacts.mjs /downloaded/artifact-parent` requires all three distinct supported targets and validates their current source, architecture, bytes, receipts and acceptance log before assembling the package bundle. Missing, duplicate or stale artifacts fail; unsupported execution never becomes success.
|
|
31
|
+
|
|
32
|
+
Every CI consumer that executes the detector or packages depends on the three native jobs and assembles their results before dependency `prepare` runs. The required aggregate includes native artifact and browser results. `verify-main` retains the tested multi-platform `.tgz` as a release review candidate; it does not publish or install it. The checked-in development artifact may cover only the locally verified host. A local Apple Silicon run establishes only that host's acceptance; new Linux acceptance requires the corresponding CI job to execute.
|
|
33
|
+
|
|
34
|
+
Synthetic native workflow and Web approval tests configure a separate scripted decision provider from their known original fixture sources. Wrong actions are contradicted and unknown sources stay insufficient/unavailable. They still execute the packaged Rust detector and native approval/ownership paths; they make no live model accuracy claim. Provider-disabled and provider/artifact-unavailable tests remain separate negative cases.
|