kiokuko-dsh 0.2.39 → 0.2.41
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 +2 -2
- package/README.ja.md +17 -5
- package/README.ko.md +17 -5
- package/README.md +17 -5
- package/README.zh-CN.md +17 -5
- package/dist/akinator/skill-discovery-attempt.d.ts +3 -1
- package/dist/akinator/skill-discovery-attempt.d.ts.map +1 -1
- package/dist/akinator/skill-discovery-attempt.js +12 -11
- package/dist/akinator/skill-discovery-attempt.js.map +1 -1
- package/dist/client.cjs +7 -10
- package/dist/client.d.ts.map +1 -1
- package/dist/context/continuity-view.d.ts +0 -11
- package/dist/context/continuity-view.d.ts.map +1 -1
- package/dist/context/continuity-view.js +5 -9
- package/dist/context/continuity-view.js.map +1 -1
- package/dist/deep-thinker/controller.d.ts +4 -1
- package/dist/deep-thinker/controller.d.ts.map +1 -1
- package/dist/deep-thinker/controller.js +10 -0
- package/dist/deep-thinker/controller.js.map +1 -1
- package/dist/deep-thinker/core/contracts.d.ts +11 -11
- package/dist/deep-thinker/memory-finalizer.d.ts +1 -1
- package/dist/deep-thinker/native-executor.d.ts +1 -1
- package/dist/deep-thinker/native-executor.d.ts.map +1 -1
- package/dist/deep-thinker/prompts.js +1 -1
- package/dist/deep-thinker/prompts.js.map +1 -1
- package/dist/deep-thinker/quality-prompts.js +1 -1
- package/dist/deep-thinker/quality-prompts.js.map +1 -1
- package/dist/deep-thinker/report.d.ts +1 -1
- package/dist/deep-thinker/store.d.ts +1 -1
- package/dist/dsh/agenticreplay-hooks.d.ts.map +1 -1
- package/dist/dsh/agenticreplay-hooks.js +13 -0
- package/dist/dsh/agenticreplay-hooks.js.map +1 -1
- package/dist/dsh/agenticreplay-recorder.d.ts +5 -0
- package/dist/dsh/agenticreplay-recorder.d.ts.map +1 -1
- package/dist/dsh/agenticreplay-recorder.js +19 -0
- package/dist/dsh/agenticreplay-recorder.js.map +1 -1
- package/dist/dsh/coding-workflow/contracts.d.ts +2 -5
- package/dist/dsh/coding-workflow/contracts.d.ts.map +1 -1
- package/dist/dsh/coding-workflow/contracts.js +1 -1
- package/dist/dsh/coding-workflow/contracts.js.map +1 -1
- package/dist/dsh/coding-workflow/host.d.ts.map +1 -1
- package/dist/dsh/coding-workflow/host.js +1 -4
- package/dist/dsh/coding-workflow/host.js.map +1 -1
- package/dist/dsh/coding-workflow/intent.d.ts.map +1 -1
- package/dist/dsh/coding-workflow/intent.js +0 -6
- package/dist/dsh/coding-workflow/intent.js.map +1 -1
- package/dist/dsh/coding-workflow/service.d.ts +4 -8
- package/dist/dsh/coding-workflow/service.d.ts.map +1 -1
- package/dist/dsh/coding-workflow/service.js +5 -57
- package/dist/dsh/coding-workflow/service.js.map +1 -1
- package/dist/dsh/completion-report.d.ts +0 -31
- package/dist/dsh/completion-report.d.ts.map +1 -1
- package/dist/dsh/completion-report.js +16 -94
- package/dist/dsh/completion-report.js.map +1 -1
- package/dist/dsh/composition.d.ts +1 -3
- package/dist/dsh/composition.d.ts.map +1 -1
- package/dist/dsh/composition.js +13 -34
- package/dist/dsh/composition.js.map +1 -1
- package/dist/dsh/config.d.ts +1 -22
- package/dist/dsh/config.d.ts.map +1 -1
- package/dist/dsh/config.js +0 -8
- package/dist/dsh/config.js.map +1 -1
- package/dist/dsh/context-injection.d.ts +1 -11
- package/dist/dsh/context-injection.d.ts.map +1 -1
- package/dist/dsh/context-injection.js +3 -24
- package/dist/dsh/context-injection.js.map +1 -1
- package/dist/dsh/continuity-adapter.d.ts +0 -5
- package/dist/dsh/continuity-adapter.d.ts.map +1 -1
- package/dist/dsh/continuity-adapter.js +1 -39
- package/dist/dsh/continuity-adapter.js.map +1 -1
- package/dist/dsh/decisions/contracts.d.ts +0 -1
- 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/diagnostics.d.ts +8 -11
- package/dist/dsh/decisions/diagnostics.d.ts.map +1 -1
- package/dist/dsh/decisions/diagnostics.js +1 -9
- package/dist/dsh/decisions/diagnostics.js.map +1 -1
- package/dist/dsh/decisions/intent-assessment.d.ts +2 -5
- package/dist/dsh/decisions/intent-assessment.d.ts.map +1 -1
- package/dist/dsh/decisions/intent-assessment.js +17 -9
- package/dist/dsh/decisions/intent-assessment.js.map +1 -1
- package/dist/dsh/efficiency.d.ts +0 -3
- package/dist/dsh/efficiency.d.ts.map +1 -1
- package/dist/dsh/efficiency.js +1 -9
- package/dist/dsh/efficiency.js.map +1 -1
- package/dist/dsh/execution-selection.d.ts +6 -7
- package/dist/dsh/execution-selection.d.ts.map +1 -1
- package/dist/dsh/execution-selection.js +10 -15
- package/dist/dsh/execution-selection.js.map +1 -1
- package/dist/dsh/execution-support.d.ts +0 -4
- package/dist/dsh/execution-support.d.ts.map +1 -1
- package/dist/dsh/execution-support.js +3 -15
- package/dist/dsh/execution-support.js.map +1 -1
- package/dist/dsh/harness/factory.d.ts +109 -0
- package/dist/dsh/harness/factory.d.ts.map +1 -0
- package/dist/dsh/harness/factory.js +566 -0
- package/dist/dsh/harness/factory.js.map +1 -0
- package/dist/dsh/harness/inbox.d.ts +22 -0
- package/dist/dsh/harness/inbox.d.ts.map +1 -0
- package/dist/dsh/harness/inbox.js +61 -0
- package/dist/dsh/harness/inbox.js.map +1 -0
- package/dist/dsh/harness/index.d.ts +19 -0
- package/dist/dsh/harness/index.d.ts.map +1 -0
- package/dist/dsh/harness/index.js +26 -0
- package/dist/dsh/harness/index.js.map +1 -0
- package/dist/dsh/harness/lifecycle.d.ts +26 -0
- package/dist/dsh/harness/lifecycle.d.ts.map +1 -0
- package/dist/dsh/harness/lifecycle.js +21 -0
- package/dist/dsh/harness/lifecycle.js.map +1 -0
- package/dist/dsh/harness/projections.d.ts +16 -0
- package/dist/dsh/harness/projections.d.ts.map +1 -0
- package/dist/dsh/harness/projections.js +34 -0
- package/dist/dsh/harness/projections.js.map +1 -0
- package/dist/dsh/head-worker-configuration.d.ts +1 -2
- package/dist/dsh/head-worker-configuration.d.ts.map +1 -1
- package/dist/dsh/head-worker-configuration.js +0 -5
- package/dist/dsh/head-worker-configuration.js.map +1 -1
- package/dist/dsh/host-adapter/admission.d.ts +1 -8
- package/dist/dsh/host-adapter/admission.d.ts.map +1 -1
- package/dist/dsh/host-adapter/admission.js +51 -260
- package/dist/dsh/host-adapter/admission.js.map +1 -1
- package/dist/dsh/host-adapter/boundaries.d.ts +1 -28
- package/dist/dsh/host-adapter/boundaries.d.ts.map +1 -1
- package/dist/dsh/host-adapter/boundaries.js +27 -328
- package/dist/dsh/host-adapter/boundaries.js.map +1 -1
- package/dist/dsh/host-adapter/context.d.ts +1 -7
- package/dist/dsh/host-adapter/context.d.ts.map +1 -1
- package/dist/dsh/host-adapter/context.js +5 -28
- package/dist/dsh/host-adapter/context.js.map +1 -1
- package/dist/dsh/host-adapter/efficiency-host.d.ts +0 -2
- package/dist/dsh/host-adapter/efficiency-host.d.ts.map +1 -1
- package/dist/dsh/host-adapter/efficiency-host.js +2 -2
- package/dist/dsh/host-adapter/efficiency-host.js.map +1 -1
- package/dist/dsh/host-adapter/lifecycle.d.ts +0 -7
- package/dist/dsh/host-adapter/lifecycle.d.ts.map +1 -1
- package/dist/dsh/host-adapter/lifecycle.js +58 -71
- package/dist/dsh/host-adapter/lifecycle.js.map +1 -1
- package/dist/dsh/host-adapter/memory-application-host.d.ts +0 -2
- package/dist/dsh/host-adapter/memory-application-host.d.ts.map +1 -1
- package/dist/dsh/host-adapter/memory-application-host.js +2 -2
- package/dist/dsh/host-adapter/memory-application-host.js.map +1 -1
- package/dist/dsh/host-adapter/routing.d.ts +1 -5
- package/dist/dsh/host-adapter/routing.d.ts.map +1 -1
- package/dist/dsh/host-adapter/routing.js +21 -73
- package/dist/dsh/host-adapter/routing.js.map +1 -1
- package/dist/dsh/host-adapter/session-observation.d.ts +1 -8
- package/dist/dsh/host-adapter/session-observation.d.ts.map +1 -1
- package/dist/dsh/host-adapter/session-observation.js +2 -55
- package/dist/dsh/host-adapter/session-observation.js.map +1 -1
- package/dist/dsh/host-adapter/tool-host.d.ts +3 -41
- package/dist/dsh/host-adapter/tool-host.d.ts.map +1 -1
- package/dist/dsh/host-adapter/tool-host.js +14 -243
- package/dist/dsh/host-adapter/tool-host.js.map +1 -1
- package/dist/dsh/host-adapter/turn-state.d.ts +0 -4
- package/dist/dsh/host-adapter/turn-state.d.ts.map +1 -1
- package/dist/dsh/host-adapter/turn-state.js +16 -93
- package/dist/dsh/host-adapter/turn-state.js.map +1 -1
- package/dist/dsh/host-adapter.d.ts +0 -11
- package/dist/dsh/host-adapter.d.ts.map +1 -1
- package/dist/dsh/host-adapter.js +17 -179
- package/dist/dsh/host-adapter.js.map +1 -1
- package/dist/dsh/index.d.ts +3 -16
- package/dist/dsh/index.d.ts.map +1 -1
- package/dist/dsh/index.js +0 -6
- package/dist/dsh/index.js.map +1 -1
- package/dist/dsh/lifecycle-memory.d.ts +3 -0
- package/dist/dsh/lifecycle-memory.d.ts.map +1 -1
- package/dist/dsh/lifecycle-memory.js +67 -45
- package/dist/dsh/lifecycle-memory.js.map +1 -1
- package/dist/dsh/lisp/candidate.d.ts +2 -2
- package/dist/dsh/lisp/code-intelligence-contracts.d.ts +1 -1
- package/dist/dsh/lisp/compiled-cache.d.ts.map +1 -1
- package/dist/dsh/lisp/compiled-cache.js +27 -6
- package/dist/dsh/lisp/compiled-cache.js.map +1 -1
- package/dist/dsh/lisp/host-tool-dispatch.d.ts.map +1 -1
- package/dist/dsh/lisp/host-tool-dispatch.js +14 -5
- package/dist/dsh/lisp/host-tool-dispatch.js.map +1 -1
- package/dist/dsh/lisp/manager.d.ts +7 -4
- package/dist/dsh/lisp/manager.d.ts.map +1 -1
- package/dist/dsh/lisp/manager.js +132 -103
- package/dist/dsh/lisp/manager.js.map +1 -1
- package/dist/dsh/lisp/sandbox.d.ts.map +1 -1
- package/dist/dsh/lisp/sandbox.js +1 -5
- package/dist/dsh/lisp/sandbox.js.map +1 -1
- package/dist/dsh/lisp/supervision.d.ts +33 -0
- package/dist/dsh/lisp/supervision.d.ts.map +1 -0
- package/dist/dsh/lisp/supervision.js +89 -0
- package/dist/dsh/lisp/supervision.js.map +1 -0
- package/dist/dsh/lisp/surface.d.ts +2 -2
- package/dist/dsh/lisp/surface.d.ts.map +1 -1
- package/dist/dsh/lisp/surface.js +105 -11
- package/dist/dsh/lisp/surface.js.map +1 -1
- package/dist/dsh/lisp/worker.d.ts +2 -1
- package/dist/dsh/lisp/worker.d.ts.map +1 -1
- package/dist/dsh/lisp/worker.js +7 -1
- package/dist/dsh/lisp/worker.js.map +1 -1
- package/dist/dsh/loop-guard.d.ts +0 -8
- package/dist/dsh/loop-guard.d.ts.map +1 -1
- package/dist/dsh/loop-guard.js +0 -51
- package/dist/dsh/loop-guard.js.map +1 -1
- package/dist/dsh/memory-application.d.ts.map +1 -1
- package/dist/dsh/memory-application.js +0 -6
- package/dist/dsh/memory-application.js.map +1 -1
- package/dist/dsh/message-sources.d.ts +2 -12
- package/dist/dsh/message-sources.d.ts.map +1 -1
- package/dist/dsh/message-sources.js +20 -39
- package/dist/dsh/message-sources.js.map +1 -1
- package/dist/dsh/model-configuration.d.ts +6 -24
- package/dist/dsh/model-configuration.d.ts.map +1 -1
- package/dist/dsh/model-configuration.js +1 -78
- package/dist/dsh/model-configuration.js.map +1 -1
- package/dist/dsh/model-routing.d.ts +1 -3
- package/dist/dsh/model-routing.d.ts.map +1 -1
- package/dist/dsh/model-routing.js +0 -11
- package/dist/dsh/model-routing.js.map +1 -1
- package/dist/dsh/model-selection-ui.d.ts +1 -2
- package/dist/dsh/model-selection-ui.d.ts.map +1 -1
- package/dist/dsh/model-selection-ui.js +48 -309
- package/dist/dsh/model-selection-ui.js.map +1 -1
- package/dist/dsh/models/contracts.d.ts +2 -2
- package/dist/dsh/models/service.d.ts +1 -1
- package/dist/dsh/modules/legacy-bindings.d.ts +3 -1
- package/dist/dsh/modules/legacy-bindings.d.ts.map +1 -1
- package/dist/dsh/modules/legacy-bindings.js +5 -5
- package/dist/dsh/modules/legacy-bindings.js.map +1 -1
- package/dist/dsh/modules/lisp.js +1 -1
- package/dist/dsh/modules/lisp.js.map +1 -1
- package/dist/dsh/native-execution-ownership.d.ts.map +1 -1
- package/dist/dsh/native-execution-ownership.js +0 -2
- package/dist/dsh/native-execution-ownership.js.map +1 -1
- package/dist/dsh/native-worker-routing.d.ts.map +1 -1
- package/dist/dsh/native-worker-routing.js +7 -2
- package/dist/dsh/native-worker-routing.js.map +1 -1
- package/dist/dsh/on-demand-intake.d.ts.map +1 -1
- package/dist/dsh/on-demand-intake.js +17 -8
- package/dist/dsh/on-demand-intake.js.map +1 -1
- package/dist/dsh/orchestration/execution-owner.d.ts +3 -1
- package/dist/dsh/orchestration/execution-owner.d.ts.map +1 -1
- package/dist/dsh/orchestration/execution-owner.js.map +1 -1
- package/dist/dsh/owned-execution.js +1 -1
- package/dist/dsh/owned-execution.js.map +1 -1
- package/dist/dsh/replay-memory-extract.d.ts.map +1 -1
- package/dist/dsh/replay-memory-extract.js +15 -1
- package/dist/dsh/replay-memory-extract.js.map +1 -1
- package/dist/dsh/repository-learning.d.ts.map +1 -1
- package/dist/dsh/repository-learning.js +3 -0
- package/dist/dsh/repository-learning.js.map +1 -1
- package/dist/dsh/runtime.d.ts +10 -2
- package/dist/dsh/runtime.d.ts.map +1 -1
- package/dist/dsh/runtime.js +22 -43
- package/dist/dsh/runtime.js.map +1 -1
- package/dist/dsh/semantic-compaction/policy.js +1 -1
- package/dist/dsh/semantic-compaction/policy.js.map +1 -1
- package/dist/dsh/session-bridge.d.ts +1 -1
- package/dist/dsh/session-bridge.d.ts.map +1 -1
- package/dist/dsh/session-bridge.js +1 -1
- package/dist/dsh/session-bridge.js.map +1 -1
- package/dist/dsh/session-memory-finalizer.js +1 -1
- package/dist/dsh/session-memory-finalizer.js.map +1 -1
- package/dist/dsh/session-review-context.d.ts.map +1 -1
- package/dist/dsh/session-review-context.js +3 -16
- package/dist/dsh/session-review-context.js.map +1 -1
- package/dist/dsh/setup.d.ts +1 -1
- package/dist/dsh/setup.d.ts.map +1 -1
- package/dist/dsh/skill-compiler.js +1 -1
- package/dist/dsh/skill-compiler.js.map +1 -1
- package/dist/dsh/skill-prompt-contracts.d.ts +2 -2
- package/dist/dsh/skill-prompt-contracts.js +1 -1
- package/dist/dsh/skill-prompts.json +1 -1
- package/dist/dsh/standard-skills.d.ts +1 -8
- package/dist/dsh/standard-skills.d.ts.map +1 -1
- package/dist/dsh/standard-skills.js +1 -8
- package/dist/dsh/standard-skills.js.map +1 -1
- package/dist/dsh/task-authority-context.d.ts +3 -0
- package/dist/dsh/task-authority-context.d.ts.map +1 -1
- package/dist/dsh/task-authority-context.js +3 -0
- package/dist/dsh/task-authority-context.js.map +1 -1
- package/dist/dsh/task-completion-guidance.d.ts +1 -5
- package/dist/dsh/task-completion-guidance.d.ts.map +1 -1
- package/dist/dsh/task-completion-guidance.js +4 -6
- package/dist/dsh/task-completion-guidance.js.map +1 -1
- package/dist/dsh/task-completion-host.js +4 -4
- package/dist/dsh/task-completion-host.js.map +1 -1
- package/dist/dsh/task-completion.d.ts +1 -13
- package/dist/dsh/task-completion.d.ts.map +1 -1
- package/dist/dsh/task-completion.js +9 -104
- package/dist/dsh/task-completion.js.map +1 -1
- package/dist/dsh/task-intake.d.ts +2 -3
- package/dist/dsh/task-intake.d.ts.map +1 -1
- package/dist/dsh/task-intake.js +90 -86
- 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 +0 -8
- package/dist/dsh/task-state.js.map +1 -1
- package/dist/dsh/tool-exposure.d.ts +1 -1
- package/dist/dsh/tool-exposure.d.ts.map +1 -1
- package/dist/dsh/tool-exposure.js +0 -2
- package/dist/dsh/tool-exposure.js.map +1 -1
- package/dist/dsh/tool-policy.d.ts +5 -8
- package/dist/dsh/tool-policy.d.ts.map +1 -1
- package/dist/dsh/tool-policy.js +3 -35
- package/dist/dsh/tool-policy.js.map +1 -1
- package/dist/dsh/tools.d.ts +2 -6
- package/dist/dsh/tools.d.ts.map +1 -1
- package/dist/dsh/tools.js +7 -63
- package/dist/dsh/tools.js.map +1 -1
- package/dist/dsh/turn-process.d.ts +0 -93
- package/dist/dsh/turn-process.d.ts.map +1 -1
- package/dist/dsh/turn-process.js +1 -307
- package/dist/dsh/turn-process.js.map +1 -1
- package/dist/dsh/user-interaction.d.ts +9 -16
- package/dist/dsh/user-interaction.d.ts.map +1 -1
- package/dist/dsh/user-interaction.js +19 -158
- package/dist/dsh/user-interaction.js.map +1 -1
- package/dist/index.js +2 -19
- package/dist/ledger/types.d.ts +1 -1
- package/dist/ledger/types.d.ts.map +1 -1
- package/dist/ledger/types.js +0 -7
- package/dist/ledger/types.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/correction-contract.d.ts +4 -4
- package/dist/memory/lifecycle.d.ts +1 -1
- package/dist/memory/review/evidence.js +1 -1
- package/dist/memory/review/evidence.js.map +1 -1
- package/dist/model-tools/contracts.d.ts +0 -437
- package/dist/model-tools/contracts.d.ts.map +1 -1
- package/dist/model-tools/contracts.js +0 -13
- package/dist/model-tools/contracts.js.map +1 -1
- package/dist/model-tools/names.d.ts +1 -1
- package/dist/model-tools/names.d.ts.map +1 -1
- package/dist/model-tools/names.js +0 -7
- package/dist/model-tools/names.js.map +1 -1
- package/dist/model-tools/registry.js +1 -1
- package/dist/model-tools/registry.js.map +1 -1
- package/dist/models-client.cjs +2 -2
- package/dist/models-client.js +2 -2
- package/dist/models-client.js.map +1 -1
- package/docs/README.ja.md +0 -1
- package/docs/README.md +0 -1
- package/docs/agenticreplay-recording.md +1 -1
- package/docs/agenticreplay-verification.md +1 -1
- package/docs/answer-review.md +2 -2
- package/docs/architecture.md +4 -7
- package/docs/auto-memory-review.md +3 -3
- package/docs/coding-workflow.md +1 -1
- package/docs/concepts.ja.md +3 -5
- package/docs/concepts.md +3 -5
- package/docs/core-modules.md +5 -16
- package/docs/database.md +5 -10
- package/docs/decision-diagnostics.md +1 -2
- package/docs/deep-planning.md +3 -3
- package/docs/dsh-plugin.md +42 -178
- package/docs/execution-ledger.md +1 -2
- package/docs/execution-support.md +6 -7
- package/docs/harness-map.md +1 -1
- package/docs/japanese-output.md +1 -1
- package/docs/keyboard-shortcuts.md +1 -1
- package/docs/kiokuko-harness.md +71 -0
- package/docs/kiokuko-models.md +4 -9
- package/docs/lisp-hot-tools.md +12 -7
- package/docs/lisp.md +43 -9
- package/docs/memory-application.md +5 -5
- package/docs/memory-delivery.md +1 -1
- package/docs/memory-reuse.md +1 -1
- package/docs/model-selection.ja.md +40 -123
- package/docs/model-selection.md +45 -114
- package/docs/on-demand-intake.md +2 -2
- package/docs/owned-execution.md +7 -7
- package/docs/pr72-ci-verification.md +2 -2
- package/docs/pstack-adaptation.json +0 -34
- package/docs/pstack-skills.md +1 -1
- package/docs/semantic-compaction.md +2 -2
- package/docs/session-history-repair.md +2 -2
- package/docs/skill-compiler.md +2 -4
- package/docs/tool-exposure.md +1 -1
- package/docs/typed-decisions.md +1 -9
- package/docs/verification.md +11 -7
- package/dsh/cordis.legacy.patch.yml +7 -0
- package/dsh/cordis.patch.yml +6 -1
- package/lisp/supervisor.mjs +16 -7
- package/lisp/tools.lisp +1 -1
- package/migrations/051_drop_enno.sql +19 -0
- package/package.json +5 -14
- package/scripts/session-history-codec.mjs +1 -1
- package/skills/coding-ideal-routine-skill/SKILL.md +1 -1
- package/skills/kiokuko-lisp/SKILL.md +11 -5
- package/skills/kiokuko-single-purpose-functions/SKILL.md +1 -1
- package/skills/kiokuko-ui-design-soul/SKILL.md +2 -2
- package/skills/one-shot-software-completion/SKILL.md +4 -7
- package/skills/one-shot-software-completion/references/boundaries-and-lifecycle.md +3 -5
- package/dist/dsh/advisory-runner.d.ts +0 -32
- package/dist/dsh/advisory-runner.d.ts.map +0 -1
- package/dist/dsh/advisory-runner.js +0 -116
- package/dist/dsh/advisory-runner.js.map +0 -1
- package/dist/dsh/completion-verifiers.d.ts +0 -45
- package/dist/dsh/completion-verifiers.d.ts.map +0 -1
- package/dist/dsh/completion-verifiers.js +0 -9
- package/dist/dsh/completion-verifiers.js.map +0 -1
- package/dist/dsh/continuation.d.ts +0 -24
- package/dist/dsh/continuation.d.ts.map +0 -1
- package/dist/dsh/continuation.js +0 -215
- package/dist/dsh/continuation.js.map +0 -1
- package/dist/dsh/decisions/check-model.d.ts +0 -6
- package/dist/dsh/decisions/check-model.d.ts.map +0 -1
- package/dist/dsh/decisions/check-model.js +0 -36
- package/dist/dsh/decisions/check-model.js.map +0 -1
- package/dist/dsh/decisions/plan-review.d.ts +0 -17
- package/dist/dsh/decisions/plan-review.d.ts.map +0 -1
- package/dist/dsh/decisions/plan-review.js +0 -68
- package/dist/dsh/decisions/plan-review.js.map +0 -1
- package/dist/dsh/directive-projection.d.ts +0 -7
- package/dist/dsh/directive-projection.d.ts.map +0 -1
- package/dist/dsh/directive-projection.js +0 -32
- package/dist/dsh/directive-projection.js.map +0 -1
- package/dist/dsh/enno-controller.d.ts +0 -132
- package/dist/dsh/enno-controller.d.ts.map +0 -1
- package/dist/dsh/enno-controller.js +0 -368
- package/dist/dsh/enno-controller.js.map +0 -1
- package/dist/dsh/enno-delegation.d.ts +0 -36
- package/dist/dsh/enno-delegation.d.ts.map +0 -1
- package/dist/dsh/enno-delegation.js +0 -203
- package/dist/dsh/enno-delegation.js.map +0 -1
- package/dist/dsh/enno-memory-refresh-store.d.ts +0 -26
- package/dist/dsh/enno-memory-refresh-store.d.ts.map +0 -1
- package/dist/dsh/enno-memory-refresh-store.js +0 -45
- package/dist/dsh/enno-memory-refresh-store.js.map +0 -1
- package/dist/dsh/enno-memory-refresh.d.ts +0 -57
- package/dist/dsh/enno-memory-refresh.d.ts.map +0 -1
- package/dist/dsh/enno-memory-refresh.js +0 -280
- package/dist/dsh/enno-memory-refresh.js.map +0 -1
- package/dist/dsh/host-adapter/enno-memory-host.d.ts +0 -29
- package/dist/dsh/host-adapter/enno-memory-host.d.ts.map +0 -1
- package/dist/dsh/host-adapter/enno-memory-host.js +0 -49
- package/dist/dsh/host-adapter/enno-memory-host.js.map +0 -1
- package/dist/dsh/modules/enno.d.ts +0 -70
- package/dist/dsh/modules/enno.d.ts.map +0 -1
- package/dist/dsh/modules/enno.js +0 -22
- package/dist/dsh/modules/enno.js.map +0 -1
- package/dist/dsh/verification-identity.d.ts +0 -3
- package/dist/dsh/verification-identity.d.ts.map +0 -1
- package/dist/dsh/verification-identity.js +0 -15
- package/dist/dsh/verification-identity.js.map +0 -1
- package/dist/enno-oduno/advisory-store.d.ts +0 -31
- package/dist/enno-oduno/advisory-store.d.ts.map +0 -1
- package/dist/enno-oduno/advisory-store.js +0 -105
- package/dist/enno-oduno/advisory-store.js.map +0 -1
- package/dist/enno-oduno/advisory.d.ts +0 -18
- package/dist/enno-oduno/advisory.d.ts.map +0 -1
- package/dist/enno-oduno/advisory.js +0 -311
- package/dist/enno-oduno/advisory.js.map +0 -1
- package/dist/enno-oduno/coding-workflow.d.ts +0 -39
- package/dist/enno-oduno/coding-workflow.d.ts.map +0 -1
- package/dist/enno-oduno/coding-workflow.js +0 -33
- package/dist/enno-oduno/coding-workflow.js.map +0 -1
- package/dist/enno-oduno/confirmation.d.ts +0 -4
- package/dist/enno-oduno/confirmation.d.ts.map +0 -1
- package/dist/enno-oduno/confirmation.js +0 -146
- package/dist/enno-oduno/confirmation.js.map +0 -1
- package/dist/enno-oduno/directives.d.ts +0 -10
- package/dist/enno-oduno/directives.d.ts.map +0 -1
- package/dist/enno-oduno/directives.js +0 -294
- package/dist/enno-oduno/directives.js.map +0 -1
- package/dist/enno-oduno/experts.d.ts +0 -3
- package/dist/enno-oduno/experts.d.ts.map +0 -1
- package/dist/enno-oduno/experts.js +0 -28
- package/dist/enno-oduno/experts.js.map +0 -1
- package/dist/enno-oduno/handoff.d.ts +0 -4
- package/dist/enno-oduno/handoff.d.ts.map +0 -1
- package/dist/enno-oduno/handoff.js +0 -18
- package/dist/enno-oduno/handoff.js.map +0 -1
- package/dist/enno-oduno/language.d.ts +0 -4
- package/dist/enno-oduno/language.d.ts.map +0 -1
- package/dist/enno-oduno/language.js +0 -6
- package/dist/enno-oduno/language.js.map +0 -1
- package/dist/enno-oduno/memory-focus.d.ts +0 -32
- package/dist/enno-oduno/memory-focus.d.ts.map +0 -1
- package/dist/enno-oduno/memory-focus.js +0 -87
- package/dist/enno-oduno/memory-focus.js.map +0 -1
- package/dist/enno-oduno/memory-refresh-policy.d.ts +0 -17
- package/dist/enno-oduno/memory-refresh-policy.d.ts.map +0 -1
- package/dist/enno-oduno/memory-refresh-policy.js +0 -11
- package/dist/enno-oduno/memory-refresh-policy.js.map +0 -1
- package/dist/enno-oduno/memory-verification.d.ts +0 -7
- package/dist/enno-oduno/memory-verification.d.ts.map +0 -1
- package/dist/enno-oduno/memory-verification.js +0 -59
- package/dist/enno-oduno/memory-verification.js.map +0 -1
- package/dist/enno-oduno/plan-draft.d.ts +0 -15
- package/dist/enno-oduno/plan-draft.d.ts.map +0 -1
- package/dist/enno-oduno/plan-draft.js +0 -20
- package/dist/enno-oduno/plan-draft.js.map +0 -1
- package/dist/enno-oduno/plan-recovery.d.ts +0 -44
- package/dist/enno-oduno/plan-recovery.d.ts.map +0 -1
- package/dist/enno-oduno/plan-recovery.js +0 -160
- package/dist/enno-oduno/plan-recovery.js.map +0 -1
- package/dist/enno-oduno/repository-state.d.ts +0 -10
- package/dist/enno-oduno/repository-state.d.ts.map +0 -1
- package/dist/enno-oduno/repository-state.js +0 -146
- package/dist/enno-oduno/repository-state.js.map +0 -1
- package/dist/enno-oduno/sanitize.d.ts +0 -17
- package/dist/enno-oduno/sanitize.d.ts.map +0 -1
- package/dist/enno-oduno/sanitize.js +0 -88
- package/dist/enno-oduno/sanitize.js.map +0 -1
- package/dist/enno-oduno/schemas.d.ts +0 -968
- package/dist/enno-oduno/schemas.d.ts.map +0 -1
- package/dist/enno-oduno/schemas.js +0 -622
- package/dist/enno-oduno/schemas.js.map +0 -1
- package/dist/enno-oduno/service.d.ts +0 -62
- package/dist/enno-oduno/service.d.ts.map +0 -1
- package/dist/enno-oduno/service.js +0 -1505
- package/dist/enno-oduno/service.js.map +0 -1
- package/dist/enno-oduno/skills.d.ts +0 -22
- package/dist/enno-oduno/skills.d.ts.map +0 -1
- package/dist/enno-oduno/skills.js +0 -127
- package/dist/enno-oduno/skills.js.map +0 -1
- package/dist/enno-oduno/store.d.ts +0 -109
- package/dist/enno-oduno/store.d.ts.map +0 -1
- package/dist/enno-oduno/store.js +0 -833
- package/dist/enno-oduno/store.js.map +0 -1
- package/dist/enno-oduno/types.d.ts +0 -457
- package/dist/enno-oduno/types.d.ts.map +0 -1
- package/dist/enno-oduno/types.js +0 -66
- package/dist/enno-oduno/types.js.map +0 -1
- package/dist/enno-oduno/validation-errors.d.ts +0 -93
- package/dist/enno-oduno/validation-errors.d.ts.map +0 -1
- package/dist/enno-oduno/validation-errors.js +0 -159
- package/dist/enno-oduno/validation-errors.js.map +0 -1
- package/dist/enno-oduno/verifier.d.ts +0 -16
- package/dist/enno-oduno/verifier.d.ts.map +0 -1
- package/dist/enno-oduno/verifier.js +0 -271
- package/dist/enno-oduno/verifier.js.map +0 -1
- package/docs/enno-memory-benchmark.json +0 -761
- package/docs/enno-memory-evaluation.md +0 -137
- package/docs/enno-oduno.ja.md +0 -68
- package/docs/enno-oduno.md +0 -94
- package/skills/kiokuko-enno-oduno/SKILL.md +0 -64
- package/skills/kiokuko-enno-oduno/enno-oduno.png +0 -0
package/docs/dsh-plugin.md
CHANGED
|
@@ -5,13 +5,13 @@ Kiokuko provides an out-of-tree DeepSeek Harness bundle at `kiokuko-dsh`.
|
|
|
5
5
|
not fork DeepSeek Harness or modify a repository's files.
|
|
6
6
|
|
|
7
7
|
These installation instructions use the full compatibility package. A separate
|
|
8
|
-
`kiokuko-dsh/core` entry and local core/
|
|
8
|
+
`kiokuko-dsh/core` entry and local core/Lisp artifacts are available through
|
|
9
9
|
the [configured module build](core-modules.md). Selecting a subpath alone does
|
|
10
10
|
not remove files or dependencies from an installed full package.
|
|
11
11
|
|
|
12
12
|
## Compatibility
|
|
13
13
|
|
|
14
|
-
Compatibility depends on the native APIs exercised by the disposable-profile tests, not a package-version prefix. CI resolves official DSH master
|
|
14
|
+
Compatibility depends on the native APIs exercised by the disposable-profile tests, not a package-version prefix. Each CI run resolves the latest official DSH master, builds that revision and records it with the test evidence. The resolved SHA forces compatibility coverage even for prose-only changes; daily GitHub runs also detect upstream-only changes. The SHA is shared within that run, never reused as a fixed baseline for later runs. Historical release records and locked fixtures remain reproducibility data, not proof of current-upstream support.
|
|
15
15
|
|
|
16
16
|
On hosts exposing the batch executor API, development Lisp preserves the Agent’s selected native or PTC executor. Host-owned nested calls use DSH’s exported invocation pipeline, retaining scoped policy, cancellation settlement and host-only task authority. They are not submitted as model batches.
|
|
17
17
|
|
|
@@ -63,7 +63,7 @@ events; ordinary conversation text and native todo items are not state evidence.
|
|
|
63
63
|
|
|
64
64
|
`toolExposure.mode` defaults to `auto`. On verified OpenAI API routes, normal
|
|
65
65
|
chat/research/analysis/writing/review omit Kiokuko model tools; build/debug/devops
|
|
66
|
-
|
|
66
|
+
use lean descriptions. Native
|
|
67
67
|
and external tools remain available. Explicit `full` preserves the surface.
|
|
68
68
|
`phase` removes only verified Kiokuko tools that are unavailable in the current
|
|
69
69
|
execution phase. Opt-in `lean` applies the same phase policy and removes the
|
|
@@ -439,184 +439,48 @@ depend on a consumer-side build permission.
|
|
|
439
439
|
|
|
440
440
|
## Runtime contract
|
|
441
441
|
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
questions, an agent-composed choice such as a release step, and another
|
|
476
|
-
plugin's question alike — so a shortcut is never missing from a question this
|
|
477
|
-
composer shows. Carriers a single number key cannot address — multi-select
|
|
478
|
-
batches, optionless prompts, several questions in one request, and catalogs
|
|
479
|
-
larger than nine options outside the Enno and Deep flows — retain their native
|
|
480
|
-
UI. Plan-review cards also use numbered choices: discussion first, refusal
|
|
481
|
-
when offered, then approval. Cmd/Ctrl+1–3 selects a choice and Enter confirms;
|
|
482
|
-
selecting a number alone never submits approval. The plan remains rendered as
|
|
483
|
-
Markdown, and answers preserve the host's exact option labels. Discussion
|
|
484
|
-
cancels the request through the native carrier;
|
|
485
|
-
- an explicit `chat` intake choice (including free-form aliases such as
|
|
486
|
-
`just chatting` and `雑談`) and the task-type question's **Skip this
|
|
487
|
-
question** action; both skip target/success follow-ups and never create an
|
|
488
|
-
Enno-Oduno contract, and the chat choice carries across conversational
|
|
489
|
-
follow-ups until an explicit actionable request starts a new run;
|
|
490
|
-
- the Kiokuko operations, with only the nine model-facing operations
|
|
491
|
-
exposed as model tools and host identity injected after argument validation;
|
|
492
|
-
- host-bound capability catalogs are carried into plan submission, while
|
|
493
|
-
advisory digests remain host-owned and the current model reports only its
|
|
494
|
-
per-slot advisory dispositions after receiving the bounded advisory evidence;
|
|
495
|
-
- Oduno ideal directives distinguish the mandatory Skill reading list from
|
|
496
|
-
Akinator-discovered Skill contributions, constrain the latter to the exact
|
|
497
|
-
selected names (including an exact empty list), and return bounded corrective
|
|
498
|
-
field diagnostics to DSH when a submission is rejected;
|
|
499
|
-
- request-scoped Ponytail state for concurrent DSH conversations, with native
|
|
500
|
-
commands routed to the exact invoking agent and session;
|
|
501
|
-
- revision, route, phase, lease, idempotency, confirmation, verifier, and
|
|
502
|
-
meditation gates through the Kiokuko core;
|
|
503
|
-
- final verification compares the workspace at verification start, so completed
|
|
504
|
-
implementation edits are allowed. Git and ordinary directories use the same
|
|
505
|
-
file selection as their repository snapshots; unchanged content and ignored
|
|
506
|
-
build output do not trigger plan approval. Actual source changes still
|
|
507
|
-
invalidate evidence, while an unavailable mutation audit stops with a host
|
|
508
|
-
error instead of requesting another plan or repeating completed work;
|
|
509
|
-
- a non-terminal tool result whose next action requires host work (plan confirmation or
|
|
510
|
-
final verification) calls DSH `concludeTurn()` only after
|
|
511
|
-
the successful result exists. Plan submission therefore concludes its model
|
|
512
|
-
step before DSH opens a dedicated `plan-review` interaction. Receipt,
|
|
513
|
-
handoff, outbox, and seal commit atomically; a separate durable job then owns
|
|
514
|
-
approval or cancellation. `agent/turn-stopping` only kicks that worker, so no model tool call remains
|
|
515
|
-
live while the user decides and no stale confirmation directive can race the
|
|
516
|
-
next Goki role. The card offers approve/cancel; **Chat about it** returns the
|
|
517
|
-
normal composer, and the next human message becomes same-run revision
|
|
518
|
-
feedback before Zenki resumes. DSH defines the card chrome from its own UI
|
|
519
|
-
locale, while Kiokuko supplies the plan body as Markdown. Kiokuko derives an
|
|
520
|
-
English or Japanese body language from the original task, instructs Zenki to
|
|
521
|
-
keep every natural-language plan field in that language, and renders headings,
|
|
522
|
-
lists, paths, commands, dependencies, checks, and limits without changing the
|
|
523
|
-
DSH `plan-review` intent or decision labels;
|
|
524
|
-
- a durable run-to-`turn/start` binding and an immutable terminal `turn/end`
|
|
525
|
-
boundary. A successful Oduno meditation result deliberately does not call
|
|
526
|
-
`concludeTurn()`: the same native turn remains open for one visible assistant
|
|
527
|
-
response summarizing the outcome, changes, verification, and remaining
|
|
528
|
-
uncertainty. On the resulting genuinely terminal idle boundary, the adapter
|
|
529
|
-
awaits DSH's exact live `sessions.flush(session)` before the ledger close,
|
|
530
|
-
including the tool result and that final assistant/turn suffix. The
|
|
531
|
-
background finalizer reads only that inclusive range even if the session has
|
|
532
|
-
already received later turns. If the final response is empty or its provider
|
|
533
|
-
fails, a durable plugin-owned result appears in chat, using recorded work,
|
|
534
|
-
verification, and remaining issues. It does not impersonate a model message
|
|
535
|
-
or make another model request. The fallback remains visible after reload;
|
|
536
|
-
- bounded turn continuation, exact run/session/workspace/route binding, and
|
|
537
|
-
in-memory plaintext continuation tokens.
|
|
538
|
-
|
|
539
|
-
Natural model stops before a required phase submission enter the same durable
|
|
540
|
-
three-delivery loop guard. Boundary workers serialize per session, not across
|
|
541
|
-
unrelated sessions. New human input aborts pending questions and supersedes old
|
|
542
|
-
jobs; delivery rechecks ownership after native flushing. Future retry times and
|
|
543
|
-
expired-owner recovery are scheduled from the database after restart as well
|
|
544
|
-
as during normal operation.
|
|
545
|
-
|
|
546
|
-
CI requires full native-loop coverage against the pinned published runtime,
|
|
547
|
-
including natural stops, identical work-report retries, approval cancellation,
|
|
548
|
-
and both empty and failed final responses. Package installation alone is not
|
|
549
|
-
treated as proof of workflow completion.
|
|
550
|
-
|
|
551
|
-
Expected validation or omission failures become bounded retry receipts. The
|
|
552
|
-
first identical failure retries the same phase with temporary evidence; the
|
|
553
|
-
second asks Akinator. A deterministic continuation is delivered only after a
|
|
554
|
-
native flush. Human input supersedes a pending continuation, and plugin delivery
|
|
555
|
-
IDs alone are deduplicated at the next pre-step.
|
|
556
|
-
|
|
557
|
-
A DSH model-request failure, including a WebSocket failure, also leaves an
|
|
558
|
-
unfinished Enno run active and does not automatically replay model or tool
|
|
559
|
-
work. When the user continues in a later turn, the adapter revalidates the exact
|
|
560
|
-
DSH session, contract revision, and current WorkUnit, then rotates its execution
|
|
561
|
-
lease before reinjecting the directive. Recovery therefore remains available
|
|
562
|
-
after the old 15-minute lease expires without allowing an older turn to report.
|
|
563
|
-
|
|
564
|
-
Ordinary chat remains open while the agent is idle between conversational
|
|
565
|
-
messages. An explicit build, debug, review, research, writing, analysis, or
|
|
566
|
-
DevOps request closes the preceding chat run before starting its task run.
|
|
567
|
-
An unfinished, resumable non-chat run remains bound across later user turns so
|
|
568
|
-
a follow-up instruction does not orphan the existing plan. Completed,
|
|
569
|
-
cancelled, and blocked runs are closed before the next independent request
|
|
570
|
-
starts; blocked runs retain their failed ledger outcome rather than lingering
|
|
571
|
-
as unusable active bindings. Disposing the DSH session closes its current run
|
|
572
|
-
after queued events are durable.
|
|
573
|
-
|
|
574
|
-
Short status checks such as `all fixed?` are classified as analysis rather than
|
|
575
|
-
as a new fix request, and commit-message requests are classified as writing.
|
|
576
|
-
If either arrives while an earlier Enno run is still at the unstarted Oduno
|
|
577
|
-
ideal boundary, the old run is cancelled and the explicit lightweight request
|
|
578
|
-
starts independently instead of being trapped inside that contract.
|
|
579
|
-
|
|
580
|
-
After a plugin reload or process restart has cleared in-memory turn state, the
|
|
581
|
-
adapter resumes only the single unambiguous active Enno-Oduno run already bound
|
|
582
|
-
to the same persistent DSH session and canonical repository. The session is
|
|
583
|
-
revalidated through the core continuation gate, persisted pending advisory evidence is restored once, and
|
|
584
|
-
previous ordinary-memory context is not replayed implicitly. Multiple matching
|
|
585
|
-
runs, a continuation limit, a conflicting execution lease, or a changed
|
|
586
|
-
capability catalog still fails closed instead of selecting or advancing a run.
|
|
587
|
-
User questions retain the exact live native Agent object; confirmation answers
|
|
588
|
-
revalidate both that scope and the bound catalog/revision before they can mutate
|
|
589
|
-
the core state machine.
|
|
590
|
-
|
|
591
|
-
`runId` is required for dsh resume. The plugin never selects a repository-wide
|
|
592
|
-
latest run. Ambiguous, stale, cancelled, aborted, lease-conflicting, or
|
|
593
|
-
unavailable states stop without converting the failure into a normal success.
|
|
442
|
+
Kiokuko owns the input → model → tool → result → continue/finish loop through
|
|
443
|
+
DSH's AgentFactory/Agent API. The default bundle disables the stock AgentLoop;
|
|
444
|
+
model connections, native SessionEvent records and Web/CLI consumers retain
|
|
445
|
+
their DSH contracts. The explicit legacy-loop profile selects the stock loop
|
|
446
|
+
instead of the Kiokuko factory; the two loops never drive the same agent.
|
|
447
|
+
|
|
448
|
+
The native session retains the human request, attachments, model responses and
|
|
449
|
+
tool results. Kiokuko's SQLite database owns task identity, execution receipts
|
|
450
|
+
and memory. AgenticReplay records correlated execution for inspection; it does
|
|
451
|
+
not replace the memory store or authorize replay of effects.
|
|
452
|
+
|
|
453
|
+
Current session ownership, explicit operation permissions, cancellation and
|
|
454
|
+
Plan state are checked at the operation boundary. Memory retrieval, extraction
|
|
455
|
+
and saving are optional: their failure cannot authorize an operation, block
|
|
456
|
+
unrelated development or establish completion. Diagnostics distinguish work,
|
|
457
|
+
verification, receipt persistence and memory storage.
|
|
458
|
+
|
|
459
|
+
Owned operations keep stable request identities and durable receipts. Exact
|
|
460
|
+
retries return saved results; changed arguments conflict. After interruption,
|
|
461
|
+
unknown effects are reported without re-execution. Receipt persistence retries
|
|
462
|
+
and memory adoption retries reuse their existing journals and staged results.
|
|
463
|
+
|
|
464
|
+
A follow-up stays in its native session. Resume requires the exact session and
|
|
465
|
+
repository binding; ambiguous or stale ownership cannot be replaced with a
|
|
466
|
+
repository-wide latest task. Explicit task completion advances its authority;
|
|
467
|
+
final closing rechecks that authority so a delayed close cannot retire resumed
|
|
468
|
+
work. An idle model or a passing intermediate test is not task completion.
|
|
469
|
+
|
|
470
|
+
Lisp is an optional tool surface. Every Lisp worker is OS-isolated; workspace
|
|
471
|
+
changes and external commands use host tools and their permission checks.
|
|
472
|
+
The development surface coexists with ordinary tools, and its worker failure
|
|
473
|
+
leaves those tools available. See [owned execution](owned-execution.md) for
|
|
474
|
+
operation receipts, recovery and the protected compatibility mode.
|
|
594
475
|
|
|
595
476
|
## Verification
|
|
596
477
|
|
|
597
|
-
From the Kiokuko checkout
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
This builds the package, runs the Cordis composition test with an in-memory
|
|
604
|
-
host adapter, validates model/tool/question/ledger/turn-end boundaries, and
|
|
605
|
-
then runs the pack/install/dump-config/Web-start/Web-stop/remove flow when a
|
|
606
|
-
`dsh` executable is available. When `DSH_BIN` points into a local DeepSeek
|
|
607
|
-
Harness source checkout (or `KIOKUKO_DSH_SOURCE_ROOT` is set), it also resumes a
|
|
608
|
-
persisted pending advisory round and runs two consecutive full Enno agent-loop
|
|
609
|
-
flows through intake, ideal, planning, dedicated review, work reporting, final
|
|
610
|
-
verification, advisory disposition, meditation, native DSH checkpoint,
|
|
611
|
-
terminal close, and post-completion memory finalization. The second flow
|
|
612
|
-
dismisses review, carries revision feedback through the
|
|
613
|
-
next human turn, resubmits, and approves before work starts. It then handles
|
|
614
|
-
consecutive `all fixed?` and commit-message turns without creating another Enno
|
|
615
|
-
contract. The first flow includes a long streamed response and verifies that
|
|
616
|
-
no DSH events are copied into the Kiokuko ledger; the rebuildable mirror retains
|
|
617
|
-
them for cursor-backed finalization/export and records cache usage. Without a dsh executable the CLI portion is reported
|
|
618
|
-
as `unsupported`; CI sets `KIOKUKO_REQUIRE_DSH_CLI=1` so absence is a failure
|
|
619
|
-
rather than an unverified success.
|
|
478
|
+
From the Kiokuko checkout, `npm run build && node scripts/run-tests.mjs tests/dsh/e2e`
|
|
479
|
+
builds the package, runs the Cordis composition test with an in-memory host
|
|
480
|
+
adapter, and validates model/tool/ledger/turn-end boundaries. The
|
|
481
|
+
pack/install/Web-start/Web-stop/remove flow is exercised by the pinned
|
|
482
|
+
end-to-end suite when a `dsh` executable is available; without one the CLI
|
|
483
|
+
portion is reported as `unsupported`.
|
|
620
484
|
|
|
621
485
|
The terminal profile has a separate acceptance runner. Supply a built DSH CLI,
|
|
622
486
|
packed UI and Kiokuko tarballs, the installed `node-pty/package.json`, and a
|
package/docs/execution-ledger.md
CHANGED
|
@@ -4,8 +4,7 @@ The ledger records one DSH run, its Akinator intake, ordered lifecycle events,
|
|
|
4
4
|
evidence, context deliveries, and feedback. Every `ledger_runs` row carries its
|
|
5
5
|
authoritative `dsh_session_id`; the schema baseline has no client-kind column.
|
|
6
6
|
|
|
7
|
-
DSH session rebinding emits
|
|
8
|
-
`enno.dsh_session_rebound` with
|
|
7
|
+
DSH session rebinding emits its rebind lifecycle event with
|
|
9
8
|
only the previous and next DSH session IDs. The route epoch increments at the
|
|
10
9
|
same mutation. A current WorkUnit lease prevents rebinding; an expired lease may
|
|
11
10
|
be replaced atomically by the new session.
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
上限付きの表示に置き換えます。圧縮で消えた snapshot は再提示の抑制に使いません。
|
|
6
6
|
設定、限界、無効化と検証結果は [continuity.md](continuity.md) を参照してください。
|
|
7
7
|
|
|
8
|
-
対応するDSHは `0.2.1-alpha.2`。この機能はKiokuko
|
|
8
|
+
対応するDSHは `0.2.1-alpha.2`。この機能はKiokukoの任意の補助状態として動作し、モデル呼び出しや独立した承認画面を追加しません。改訂番号、receipt、outbox、最終回答の境界は従来の処理が管理します。
|
|
9
9
|
|
|
10
10
|
## 作業条件の指定
|
|
11
11
|
|
|
@@ -36,13 +36,13 @@
|
|
|
36
36
|
|
|
37
37
|
`completion.mode` は `shadow` が既定です。条件別に `satisfied`、`unmet`、`unknown`、`stale` を記録しますが、従来の終了動作は変えません。`enforce` を明示した場合は、その設定で開始した新しいrunだけを対象とし、明示・承認済みの必須条件に新しい証拠がそろうまで検証待ちとして保持します。会話ターンの終了や、追加の指示・取消は妨げません。
|
|
38
38
|
|
|
39
|
-
モデル向け `task_completion` の `status` は条件と不足理由を返し、`bind` は条件と検証方法の対応を提案します。`bind`
|
|
39
|
+
モデル向け `task_completion` の `status` は条件と不足理由を返し、`bind` は条件と検証方法の対応を提案します。`bind` はコマンドを実行しません。検証方法の承認後、リポジトリ直下で実行した正確なforegroundコマンドと対象ファイルの状態をホストが観測します。条件の変更、対象ファイルの変更、別runの結果は古い証拠として扱います。回答文だけで条件を達成済みとは判定しません。
|
|
40
40
|
|
|
41
|
-
`exit_zero` は指定コマンドの正常終了だけを表します。`selected_tests_pass` は対象を絞ったNode test/TAPの最終集計が必要です。対象テストのスキップ・未完了は未達、集計が欠ける場合は不明です。
|
|
41
|
+
`exit_zero` は指定コマンドの正常終了だけを表します。`selected_tests_pass` は対象を絞ったNode test/TAPの最終集計が必要です。対象テストのスキップ・未完了は未達、集計が欠ける場合は不明です。
|
|
42
42
|
|
|
43
43
|
パス指定はリテラルです。glob式や自然文の「src以外は変更しない」を新しい機械制約へ自動変換しません。引用行、コードブロック、インデントされた例からも強制条件を作りません。添付ファイルの内容をこの抽出器へ読み込むことはありません。原文と出典のダイジェストを保持し、再提示が長くなる場合は表示だけを短縮します。強制対象のパス条件を黙って間引くことはありません。
|
|
44
44
|
|
|
45
|
-
|
|
45
|
+
同じラベルを後の人間の入力で明示し直すと、その条件を更新します。単なる「続行」では消えません。自然文から取り出した条件は候補として扱い、明示された入力と照合します。
|
|
46
46
|
|
|
47
47
|
```json
|
|
48
48
|
{
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
|
|
59
59
|
対応する構造化ツールは `read`、`read_image`、`glob`、`grep`、`write`、`edit`、および `str_replace_editor` の `view/create/str_replace/insert/undo_edit` です。探索ツールの省略されたパスは作業ディレクトリです。パスの祖先も解決するため、新規ファイルをシンボリックリンク経由で範囲外へ作る操作も拒否します。
|
|
60
60
|
|
|
61
|
-
|
|
61
|
+
拒否は当該ツールの通常のエラー結果です。報告・質問回答・取消・記憶保存をこのガードで拒否しません。既知の条件を復元できない場合は、その条件に依存する操作を保留し、会話と復旧入力を受け付けます。
|
|
62
62
|
|
|
63
63
|
これはOSのサンドボックスではありません。任意Shell、未対応ツール、別のファイルシステムを持つ外部サービス、呼び出し後の外部変更を完全に制御する機能ではありません。検索の指定パスを検査するもので、外部サービスの検索実装全体を仲介するものでもありません。
|
|
64
64
|
|
|
@@ -69,9 +69,8 @@
|
|
|
69
69
|
同じ検索・読み取りと同じ結果を3回観測すると、次の要求で軌道修正を一度提示します。その提示後に開始された操作が同じ結果を繰り返した場合、入力を消費しないステップ境界で一時停止します。同時実行された4件を、注意後の再反復とは判定しません。24件ごとの整理要求は助言です。
|
|
70
70
|
|
|
71
71
|
- 実際の子call IDでPTCを識別し、同じイベントの再配送は計数しません。
|
|
72
|
-
-
|
|
72
|
+
- ホスト検証、状態確認、記憶保存は計数しません。
|
|
73
73
|
- 再検証の実行世代が変わったら、正当な再読を新しく扱います。
|
|
74
|
-
- カウンターや提示状態はEnnoの進展ダイジェストに入りません。
|
|
75
74
|
- 停止通知をネイティブログへ保存しflushできた場合だけ停止します。失敗時は助言へ縮退します。
|
|
76
75
|
- ターン封鎖や成功receiptを作って停止を偽装しません。「提出忘れ」の継続も生成しません。
|
|
77
76
|
- 新しいユーザー入力で停止を解除し、条件・承認・検証結果は保持します。別sessionには波及しません。
|
package/docs/harness-map.md
CHANGED
|
@@ -8,7 +8,7 @@ Use this map to find the current entry point and a focused check before editing.
|
|
|
8
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
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` |
|
|
10
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` |
|
|
11
|
-
| Normal
|
|
11
|
+
| Normal completion evidence | `src/dsh/task-completion.ts` | `node scripts/run-tests.mjs tests/dsh/unit/task-completion.test.ts` |
|
|
12
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` |
|
|
13
13
|
| Memory selection and application | `src/dsh/message-sources.ts`, `src/dsh/memory-application.ts` | `node scripts/run-tests.mjs tests/dsh/integration/memory-application.test.ts` |
|
|
14
14
|
| Context projection and provenance | `src/dsh/context-projection.ts`, `src/dsh/agenticreplay-event-mapper.ts` | `node scripts/run-tests.mjs tests/dsh/unit/agenticreplay-request-manifest.test.ts tests/dsh/integration/continuity` |
|
package/docs/japanese-output.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Kiokuko automatically includes the complete bundled
|
|
4
4
|
[Natural Japanese Output Skill](../skills/japanese-translation-for-oss-models/SKILL.md)
|
|
5
5
|
in native Agent prompts for DeepSeek, Kimi, GLM, Qwen, HY/Hunyuan, MiMo and
|
|
6
|
-
MiniMax model families. This covers ordinary work
|
|
6
|
+
MiniMax model families. This covers ordinary work and Deep workers.
|
|
7
7
|
No additional configuration or Skill tool permission is needed.
|
|
8
8
|
|
|
9
9
|
The exact selected **model ID** determines the match, after host routing.
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# Kiokuko-owned harness
|
|
2
|
+
|
|
3
|
+
This unreleased source build replaces DSH's agent factory through a plugin. It does not modify DSH core or dsh-cli. The bundle disables `agent-loop` and installs `kiokuko-dsh/harness`; do not enable both factories in one profile.
|
|
4
|
+
|
|
5
|
+
## Configuration
|
|
6
|
+
|
|
7
|
+
Build the package, then install the resulting local tarball into an isolated profile:
|
|
8
|
+
|
|
9
|
+
```sh
|
|
10
|
+
npm ci --ignore-scripts
|
|
11
|
+
npm run build
|
|
12
|
+
npm pack --ignore-scripts
|
|
13
|
+
dsh plugin --profile dsh-cli add ./kiokuko-dsh-0.2.39.tgz --ignore-scripts
|
|
14
|
+
dsh --profile dsh-cli --dump-config
|
|
15
|
+
dsh-cli
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
The profile must already supply DSH and the CLI's required peer services. DSH delegates plugin installation to pnpm; adding a tarball with npm to an existing dsh-cli dependency tree can reject the CLI's bundled `workspace:*` dependencies. Keep the host dependency graph coherent. Do not disable compatibility checks or relax permissions to repair a missing peer package.
|
|
19
|
+
|
|
20
|
+
The resolved configuration must have one enabled `kiokuko-dsh/harness` and a disabled `agent-loop`. Harness options are provider/model defaults and an explicit step budget:
|
|
21
|
+
|
|
22
|
+
```yaml
|
|
23
|
+
- id: kiokuko-harness
|
|
24
|
+
config:
|
|
25
|
+
maxSteps: 128
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
Reaching the budget records a failed turn for inspection; it does not assert task success. Set a suitable budget for longer work. Tool authority still belongs to the native tool scope and approvals.
|
|
29
|
+
|
|
30
|
+
For the previous plugin integration, pass the installed overlay **after** the bundle:
|
|
31
|
+
|
|
32
|
+
```sh
|
|
33
|
+
dsh --profile dsh-cli --patch /absolute/install/path/kiokuko-dsh/dsh/cordis.legacy.patch.yml
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
It disables the Kiokuko factory, enables the standard factory, and removes the main plugin's replacement-factory dependency. The default bundle still selects the replacement. With a supporting CLI, `dsh-cli --ignore-kiokuko` excludes Kiokuko for that launch and restores the other bundles' configuration. A profile containing only DSH and dsh-cli remains independent of Kiokuko.
|
|
37
|
+
|
|
38
|
+
## Runtime contracts
|
|
39
|
+
|
|
40
|
+
`AgentFactory.createAgent` and `resume` publish agents only after scoped setup. The registry, session storage, model adapters, system prompt assembly, tool execution and UI remain native DSH services. Kiokuko owns the inbox, turn/step scheduling, direct intake and continuation callbacks. Public pre-step, turn-stopping and idle notifications remain available to other plugins; the standard AgentLoop is not required to drive them.
|
|
41
|
+
|
|
42
|
+
`followup` wakes the next turn; `steer` wakes the next step; `inject` queues context without waking an idle agent. Rejected intake retains its request and parks until another wake, rather than consuming it or spinning. Cancellation preserves a streamed prefix, closes the turn and leaves subsequent input usable. Resume reads the persisted session, closes interrupted turns with native recovery records and does not automatically repeat past tool effects. This does not provide exactly-once effects after an unacknowledged external operation: inspect its receipt before retrying.
|
|
43
|
+
|
|
44
|
+
Parent and child agents use the same factory and native scope inheritance. A separately scheduled turn clears the caller's ambient task lease and resolves its own authority at tool admission. A child restricted by the native tools service cannot execute a denied tool through this driver.
|
|
45
|
+
|
|
46
|
+
Lisp function definition, composition, invocation and workspace observation do not require switching to task mode or creating a Working task. Only the caller's own protected-mode worker may be reused; development workers and other owners' heaps are never borrowed. Other calls use protected scratch without a repository mount or host RPC. Arbitrary Lisp is not certified pure by a JSON schema. Shared publication, file changes and external commands retain their existing task/approval/receipt boundaries. A child with an exact live native owner inherits only Lisp capabilities its native scope already exposes, with separate results and scratch execution. There is no worker handoff layer. Real SBCL behavior remains an explicit environment-dependent acceptance check.
|
|
47
|
+
|
|
48
|
+
## Memory and improvement
|
|
49
|
+
|
|
50
|
+
Native repository learning consumes the canonical turn observations, emits hypotheses with source references, persists the compact projection and supplies it to later requests as untrusted reference data. A terminal `completed` event means the turn ended, not that the task was independently verified. Re-check hypotheses against current files. Root discovery matches the runtime registration even when launched from a repository subdirectory.
|
|
51
|
+
|
|
52
|
+
Optional retrieval, validation or reflection failures leave ordinary permitted work usable. Diagnostics distinguish saved, not saved and unknown acknowledgement. Existing pending admissions support repository-learning recovery after reload; exact approved curated-memory candidates retain their original save identity for retry. Neither path reruns the original task. Capture refusal, exclusion, stale authority and actual operation approvals remain enforced. Curated replay-memory proposals still require the native question and approval of the exact preview revision.
|
|
53
|
+
|
|
54
|
+
The improvement loop is recorded outcome → bounded reflection → evidence-linked hypothesis → later retrieval and current-source verification. It does not rewrite production code or infer approval from logs. The live assistant acceptance has exercised generation, persisted hypothesis retrieval after process restart, and re-reading the current input before using the recalled suggestion.
|
|
55
|
+
|
|
56
|
+
## Logs and limits
|
|
57
|
+
|
|
58
|
+
| Path | Evidence retained | Limits |
|
|
59
|
+
| --- | --- | --- |
|
|
60
|
+
| Inbox and lifecycle | Native session commands, turn/step boundaries, harness action metadata | Host/process death can leave a final boundary pending until resume |
|
|
61
|
+
| Model stream | Native assistant stream, committed message or interrupted attempt, error/cancel/retry metadata | Provider internals and activity outside this driver are not observable |
|
|
62
|
+
| Tool execution | Native call/result IDs, harness start/result/error/cancel metadata; flush before effect | A crash between effect and receipt leaves an uncertain external outcome |
|
|
63
|
+
| Parent/child | Native ownership, session parent identity and call/turn correlation; child capability filters are preserved | Detached external agents and real SBCL child execution remain unverified |
|
|
64
|
+
| AgenticReplay | Existing model/tool hooks plus bounded harness metadata when recording is enabled and the session is bound | Early unbound lifecycle records remain only in the canonical DSH session; recorder completion is not task success |
|
|
65
|
+
| Memory | Capture/retrieval diagnostics, source references, reflection status, saved revision | Unavailable stores cannot be described as saved; optional generation is not a permission grant |
|
|
66
|
+
|
|
67
|
+
Harness metadata contains no copied tool arguments or model bodies. AgenticReplay retains its existing redaction and metadata modes. DSH's canonical conversation persistence remains DSH's own content contract; this change does not retrofit redaction into old sessions. Do not put API keys into prompts or tool arguments.
|
|
68
|
+
|
|
69
|
+
Cloud checks exercised DSH `0.2.1-rc.5`, dsh-cli `0.14.18`, Node `24.19.0` and pnpm `11.25.0`, plus unit contracts against the repository's declared development dependencies. These identify tested artifacts, not a version-number compatibility fence. Scripted providers test wire contracts; live assistant-in-loop transport uses fresh decisions by the executing assistant and is not an authenticated external provider API session.
|
|
70
|
+
|
|
71
|
+
SBCL is required for real Lisp execution. It was absent in this cloud runtime and its configured OS package source returned HTTP 403. Manager/transport contracts and a real DSH child read/scope test passed without SBCL; these are not Lisp execution or OS isolation proof. Real SBCL tests now include resident composition, preserved parent state, child scratch, restart and reader-time write refusal, but still require execution on a supported host. Deep native planning contracts (24 cases) ran against the replacement factory with scripted adapters. External provider authentication and the actual browser UI remain unverified. No complete-compatibility claim follows from these checks.
|
package/docs/kiokuko-models.md
CHANGED
|
@@ -31,7 +31,7 @@ once, preserving any preceding path prefix.
|
|
|
31
31
|
returns nothing usable, register the exact model ID and limits manually under
|
|
32
32
|
**Advanced settings → Register model manually**, then **Save connection**. Search the
|
|
33
33
|
resulting list. **Use in current chat** only changes that idle chat; **Default for new
|
|
34
|
-
chats** saves the native default for future chats.
|
|
34
|
+
chats** saves the native default for future chats. Deep and model-auto use the
|
|
35
35
|
same registered adapters and model capabilities. An unavailable model is rejected
|
|
36
36
|
rather than silently substituted.
|
|
37
37
|
|
|
@@ -52,13 +52,8 @@ a different normal head model also leaves pair mode for the selected scope. Sele
|
|
|
52
52
|
the exact same provider and head model preserves the worker choice. Profile defaults are
|
|
53
53
|
snapshotted per chat, so changing the default does not rewrite existing chats.
|
|
54
54
|
|
|
55
|
-
The execution-choice card also offers the pair for just the current normal task
|
|
56
|
-
|
|
57
|
-
choice and uses the normal parent/worker routing. In Enno, `ideal`, `zenki`, `goki`
|
|
58
|
-
and `check` use the head; the delegated `worker` uses Flash. A profile/chat pair
|
|
59
|
-
seeds the initial Enno role review. An already approved Enno task keeps its explicit
|
|
60
|
-
role configuration until the next task; selecting another Enno custom configuration
|
|
61
|
-
continues to work.
|
|
55
|
+
The execution-choice card also offers the pair for just the current normal task.
|
|
56
|
+
Lisp is an execution-tool choice and uses the normal parent/worker routing.
|
|
62
57
|
|
|
63
58
|
Selection and dispatch require the exact live catalog bindings. The head ID is
|
|
64
59
|
`gpt-6.1-sol`. The worker ID is `deepseek-flash` on a DeepSeek route,
|
|
@@ -101,7 +96,7 @@ appear in list responses, normal profile settings or command history. The settin
|
|
|
101
96
|
necessarily grants access to the shared credentials through login, replacement and logout.
|
|
102
97
|
Session tool permissions do not govern these explicit human settings operations.
|
|
103
98
|
|
|
104
|
-
OrcaRouter is no longer offered or recommended. Legacy saved
|
|
99
|
+
OrcaRouter is no longer offered or recommended. Legacy saved Deep configurations
|
|
105
100
|
remain readable and require explicit model reselection before reuse. Replay history and
|
|
106
101
|
migrations are unaffected.
|
|
107
102
|
|
package/docs/lisp-hot-tools.md
CHANGED
|
@@ -23,10 +23,12 @@ ZIP の試作をそのまま別の実行環境にするのではなく、既存
|
|
|
23
23
|
|
|
24
24
|
設定の `lisp.enabled: true` と SBCL が必要です。既存の選択画面で Lisp を選べば、
|
|
25
25
|
共有関数をそのまま利用できます。選択肢の順序、番号キー・修飾キー・Enterによる操作、
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
PID
|
|
29
|
-
|
|
26
|
+
実行方式の選択とは別に、Lisp の選択をタスクと scopeVersion に保存します。新しい実装タスクでは再確認し、未回答・閉じる操作では起動しません。
|
|
27
|
+
`lisp_define`・`lisp_call`・`lisp_observe` は、Working taskや `enable-task` への切替を要求しません。
|
|
28
|
+
同じsession・agentの保護済み常駐workerは再利用し、PID・世代・既存定義を維持します。
|
|
29
|
+
開発用workerや別ownerのheapは借りず、リポジトリをマウントしない保護付きscratchで計算します。
|
|
30
|
+
JSON schemaは任意Lispの安全性を証明しません。計算側のホストRPCを拒否し、実際の副作用には従来の承認・scope・証拠を要求します。
|
|
31
|
+
親のworkerを停止・譲渡する必要はありません。同じownerの評価中は `BUSY` です。
|
|
30
32
|
ワーカー枠がすべて使用中の場合は `WORKER_LIMIT` で停止します。
|
|
31
33
|
|
|
32
34
|
次は任意の確認コマンドです。有効化の追加操作は不要です。
|
|
@@ -113,9 +115,11 @@ PID・世代・既存定義を維持し、別SBCLの起動やmode切替はしま
|
|
|
113
115
|
各検証は新しいpackageで行います。常駐ownerがない場合は検証ごとにworkerを起動します。
|
|
114
116
|
- 入力・結果はセッションとエージェントに束縛されます。共有関数の呼び出しは
|
|
115
117
|
他人の `resultRef` の参照権限や、作業ファイルの書き込み権限を与えません。
|
|
116
|
-
-
|
|
117
|
-
|
|
118
|
-
|
|
118
|
+
- 保護済み常駐workerを再利用する呼び出しは、新しいpackage・object参照表・専用結果scratchを使い、host RPCを許可しません。
|
|
119
|
+
同じownerのheap全体を分離する仕組みではありませんが、外部への操作はOSの保護範囲に制限します。
|
|
120
|
+
別owner・開発用workerとはheapを共有せず、リポジトリマウントも渡しません。
|
|
121
|
+
- nativeの生きた親子所有関係と同じ作業場所を確認できる子には、見えているLisp計算機能だけを準備します。
|
|
122
|
+
拒否済みのツールを子のローカル登録で復活させず、親のtask leaseや入力・結果参照も渡しません。
|
|
119
123
|
|
|
120
124
|
再送は同一の操作 ID と同一の引数で行います。保存結果を返し、再実行しません。
|
|
121
125
|
`UNKNOWN` は成功でも安全な再試行でもありません。
|
|
@@ -135,5 +139,6 @@ npm run test:skill-delivery
|
|
|
135
139
|
```
|
|
136
140
|
|
|
137
141
|
通常の `npm test` は保護付き SBCL / ネイティブ DSH の任意テストを省略します。
|
|
142
|
+
`hot-tools.test.ts` の常駐合成・親子scratch・読込時書込み拒否の実SBCL試験も、明示した必須実行で確認します。
|
|
138
143
|
上記の必須実行を別途確認してください。ローカルテストの成功は、稼働中の
|
|
139
144
|
DSH プロファイルの更新、別プラットフォームの実行、リモート CI の成功を意味しません。
|
package/docs/lisp.md
CHANGED
|
@@ -10,7 +10,7 @@ For explicit semantic decisions and `/kioku-typesafe-key` setup, see
|
|
|
10
10
|
[TypeSafe from Lisp](typesafe.md). Answers can guide inspection and proposals;
|
|
11
11
|
the existing permission and approval boundaries still apply.
|
|
12
12
|
|
|
13
|
-
The default is `lisp.executionMode: development`. Old `approvalMode` values remain readable. Set `executionMode: protected` explicitly to select the
|
|
13
|
+
The default is `lisp.executionMode: development`. Old `approvalMode` values remain readable. Set `executionMode: protected` explicitly to select the additional approval and tool-fence policy. See [owned execution and memory evidence](owned-execution.md).
|
|
14
14
|
|
|
15
15
|
## Task state at execution boundaries
|
|
16
16
|
|
|
@@ -87,9 +87,43 @@ Session disposal also stops its workers. Normal suspension appears as `SUSPENDED
|
|
|
87
87
|
retains protection and resumes automatically on the next use; status polling never
|
|
88
88
|
starts a worker. Variables, definitions and references are lost on restart; the
|
|
89
89
|
agent receives the new generation and must rebuild helpers without replaying
|
|
90
|
-
completed effects.
|
|
91
|
-
|
|
92
|
-
|
|
90
|
+
completed effects. A clean host restart or an exited idle child resumes on the next
|
|
91
|
+
admitted request after confirmed process termination and journal reconciliation.
|
|
92
|
+
Fault replacements are limited to two per owner in 60 seconds. Explicit cancellation,
|
|
93
|
+
unresolved effects, unconfirmed termination and exhausted restart limits require recovery.
|
|
94
|
+
|
|
95
|
+
Kiokuko owns a local master–worker hierarchy: `LispManager` binds requests and their
|
|
96
|
+
existing operation journals; `LispSupervisor` owns shared capacity, compiled startup,
|
|
97
|
+
isolation probes and confirmed release for persistent and disposable children;
|
|
98
|
+
`LispWorker` owns one RPC evaluation slot and reports process failures immediately.
|
|
99
|
+
The external `supervisor.mjs` retains OS process ownership and stops descendants when
|
|
100
|
+
the host pipe closes. Local process events and bounded RPC deadlines provide liveness
|
|
101
|
+
signals; no network heartbeat, separate task router or recovery daemon is involved.
|
|
102
|
+
Restarting replaces a process generation, never a journaled operation. A worker whose
|
|
103
|
+
termination is uncertain continues to consume capacity.
|
|
104
|
+
|
|
105
|
+
This separates durable work from execution, as in the
|
|
106
|
+
[DeepSeek executor](https://github.com/deepseek-ai/dsh-superagent-prototype/blob/main/src/executor/dsh.ts),
|
|
107
|
+
and uses bounded, per-child recovery following
|
|
108
|
+
[OTP supervision](https://www.erlang.org/doc/system/sup_princ.html).
|
|
109
|
+
It preserves the existing Kiokuko execution loop and DSH Agent/SessionEvent contracts.
|
|
110
|
+
|
|
111
|
+
Routed child work sessions each own a persistent Lisp runtime, private heap,
|
|
112
|
+
scratch directory and owner-bound result journal. The router supplies the task
|
|
113
|
+
and receives the native child result; siblings do not inherit each other's
|
|
114
|
+
variables, object references or task authority. Repeated model steps reuse the
|
|
115
|
+
same worker generation. Completing/disposal of a child stops only its runtime.
|
|
116
|
+
The session worker starts before the first child model request; startup failure
|
|
117
|
+
prevents that request instead of silently selecting another execution route.
|
|
118
|
+
Existing disposable child sessions are promoted on their next admitted request,
|
|
119
|
+
and the saved session mode survives a host restart without replaying old code.
|
|
120
|
+
|
|
121
|
+
These workers compute in private scratch without taking a repository-wide lease.
|
|
122
|
+
Project reads, commands and changes still use the owning session's host adapters,
|
|
123
|
+
native tool restrictions, permission checks and operation journal. Shared project
|
|
124
|
+
files are not separate worktrees; callers must still coordinate conflicting edits.
|
|
125
|
+
|
|
126
|
+
A standalone repository runtime has one owner and one persistent supervisor/SBCL,
|
|
93
127
|
including across separate DSH databases and sessions. Git subdirectories and symlink
|
|
94
128
|
aliases resolve to the same repository; separate worktrees retain their own root.
|
|
95
129
|
The existing supervisor holds an OS-backed SQLite lease under the current user's
|
|
@@ -125,7 +159,7 @@ rejection and model abstention defer classification. Native adapters let the
|
|
|
125
159
|
ordinary model infer advisory intent or ask a concrete clarification; they do not
|
|
126
160
|
repeat the generic category dialog merely because the classifier abstained. Classification does not authorize implementation. For an explicit coding request the agent defines the Goal, implementation items and their observable criteria, then the host asks whether to use Lisp for that task. Both yes and no persist for the task and scope across restart. Conversation, review and plan-only requests do not trigger this prompt. Closing, free text without a clear choice or a disconnected question leaves implementation pending. Cancellation preserves the prepared work. A selected Lisp startup failure remains a recoverable blocker.
|
|
127
161
|
|
|
128
|
-
|
|
162
|
+
Execution-mode selection and Lisp choice are separate. The task question remains available when the Lisp module is disabled; no needs no Lisp runtime, while yes requires the enabled module and working SBCL. To explicitly change the current task's Lisp route or inspect its state, use these commands in the desired DSH session:
|
|
129
163
|
|
|
130
164
|
```text
|
|
131
165
|
/kioku-lisp enable
|
|
@@ -192,7 +226,7 @@ not the complete worker startup or the speed of an individual Lisp computation.
|
|
|
192
226
|
copied into the worker's read-only inputs. Files from other sessions and arbitrary
|
|
193
227
|
absolute paths are refused. The original attachment store stays inaccessible to
|
|
194
228
|
Lisp and its subprocesses. Limits: 64 MiB per file, 256 MiB per worker generation.
|
|
195
|
-
- Lisp/FFI
|
|
229
|
+
- Lisp/FFI runs inside OS isolation without workspace access or inherited credentials. Project file changes and external Python/shell commands cross the host tool boundary, which checks operation permissions and records the result.
|
|
196
230
|
- Project proposals freeze targets, preserve backups and reject duplicate targets. Writes/edits are authorized; source/data deletion requires concrete confirmation. Generated/temp/disposable artifacts are routine development.
|
|
197
231
|
- Refusal, skip, timeout, cancelled confirmation or unavailable UI means no change.
|
|
198
232
|
File identities/content are checked again after approval. Links, directories,
|
|
@@ -271,8 +305,8 @@ The host serializes conflicting target proposals and checks their captured hashe
|
|
|
271
305
|
|
|
272
306
|
## Stop and recover
|
|
273
307
|
|
|
274
|
-
The control beside the session input shows the Lisp state
|
|
275
|
-
|
|
308
|
+
The control beside the session input shows the Lisp state. Selecting it opens the
|
|
309
|
+
recovery view; failures do not repeatedly open a modal. It offers stop/recovery without needing a model response. The commands
|
|
276
310
|
remain available when the AI loop is stopped:
|
|
277
311
|
|
|
278
312
|
```text
|
|
@@ -366,7 +400,7 @@ subprocesses use the same output limit and parent-liveness supervisor as workers
|
|
|
366
400
|
Published bundles are limited to 256 MiB each. Concurrent first enables share one
|
|
367
401
|
serialized build under the host's existing exclusive data-directory lease.
|
|
368
402
|
|
|
369
|
-
Lisp workers
|
|
403
|
+
Lisp workers remain OS-isolated. Host processes launched through kioku.process run/start-job use the normal user environment and supervised process groups after the host permission check; directory defaults to the admitted workspace and may select a real subdirectory. Collect background results rather than rerunning commands.
|
|
370
404
|
`python`, `shell`, `run-lines`, `python-stdout` and `shell-stdout` also accept
|
|
371
405
|
`:directory`. The output-only helpers signal an error on process failure, so a
|
|
372
406
|
composed operation stops before its next step. Use `run` when the function needs
|