@askdkc/kiokuko 0.1.17 → 0.1.20
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/README.ja.md +91 -112
- package/README.ko.md +90 -102
- package/README.md +103 -262
- package/README.zh-CN.md +88 -102
- package/dist/agent-file/atomic-write.d.ts +90 -3
- package/dist/agent-file/atomic-write.d.ts.map +1 -1
- package/dist/agent-file/atomic-write.js +990 -14
- package/dist/agent-file/atomic-write.js.map +1 -1
- package/dist/agent-file/managed-block.d.ts +12 -1
- package/dist/agent-file/managed-block.d.ts.map +1 -1
- package/dist/agent-file/managed-block.js +49 -4
- package/dist/agent-file/managed-block.js.map +1 -1
- package/dist/agent-file/render.d.ts +1 -1
- package/dist/agent-file/render.d.ts.map +1 -1
- package/dist/agent-file/render.js +10 -7
- package/dist/agent-file/render.js.map +1 -1
- package/dist/akinator/agent-task.d.ts +11 -22
- package/dist/akinator/agent-task.d.ts.map +1 -1
- package/dist/akinator/agent-task.js +454 -99
- package/dist/akinator/agent-task.js.map +1 -1
- package/dist/akinator/capabilities.d.ts +18 -6
- package/dist/akinator/capabilities.d.ts.map +1 -1
- package/dist/akinator/capabilities.js +72 -35
- package/dist/akinator/capabilities.js.map +1 -1
- package/dist/akinator/capability-binding.d.ts +11 -0
- package/dist/akinator/capability-binding.d.ts.map +1 -0
- package/dist/akinator/capability-binding.js +56 -0
- package/dist/akinator/capability-binding.js.map +1 -0
- package/dist/akinator/domain.js +2 -2
- package/dist/akinator/domain.js.map +1 -1
- package/dist/akinator/knowledge-path.d.ts.map +1 -1
- package/dist/akinator/knowledge-path.js +409 -39
- package/dist/akinator/knowledge-path.js.map +1 -1
- package/dist/akinator/orchestrator.d.ts +3 -4
- package/dist/akinator/orchestrator.d.ts.map +1 -1
- package/dist/akinator/orchestrator.js +1 -4
- package/dist/akinator/orchestrator.js.map +1 -1
- package/dist/akinator/service.d.ts +0 -4
- package/dist/akinator/service.d.ts.map +1 -1
- package/dist/akinator/service.js +19 -35
- package/dist/akinator/service.js.map +1 -1
- package/dist/akinator/skill-discovery-attempt.d.ts +20 -0
- package/dist/akinator/skill-discovery-attempt.d.ts.map +1 -0
- package/dist/akinator/skill-discovery-attempt.js +390 -0
- package/dist/akinator/skill-discovery-attempt.js.map +1 -0
- package/dist/akinator/store.d.ts.map +1 -1
- package/dist/akinator/store.js +107 -52
- package/dist/akinator/store.js.map +1 -1
- package/dist/akinator/types.d.ts +0 -12
- package/dist/akinator/types.d.ts.map +1 -1
- package/dist/cli.d.ts +2 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +560 -150
- package/dist/cli.js.map +1 -1
- package/dist/client/server-client.d.ts +5 -3
- package/dist/client/server-client.d.ts.map +1 -1
- package/dist/client/server-client.js +486 -181
- package/dist/client/server-client.js.map +1 -1
- package/dist/commands/agent.d.ts +2 -0
- package/dist/commands/agent.d.ts.map +1 -1
- package/dist/commands/agent.js +861 -86
- package/dist/commands/agent.js.map +1 -1
- package/dist/commands/backup.d.ts +2 -1
- package/dist/commands/backup.d.ts.map +1 -1
- package/dist/commands/backup.js +71 -8
- package/dist/commands/backup.js.map +1 -1
- package/dist/commands/doctor.d.ts +5 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +70 -26
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/export.d.ts +0 -4
- package/dist/commands/export.d.ts.map +1 -1
- package/dist/commands/export.js +191 -32
- package/dist/commands/export.js.map +1 -1
- package/dist/commands/import.d.ts +10 -1
- package/dist/commands/import.d.ts.map +1 -1
- package/dist/commands/import.js +592 -113
- package/dist/commands/import.js.map +1 -1
- package/dist/commands/init.d.ts +19 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +569 -22
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/purge.d.ts.map +1 -1
- package/dist/commands/purge.js +3 -0
- package/dist/commands/purge.js.map +1 -1
- package/dist/commands/setup.d.ts +37 -8
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +448 -86
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/skills.d.ts +9 -0
- package/dist/commands/skills.d.ts.map +1 -0
- package/dist/commands/skills.js +317 -0
- package/dist/commands/skills.js.map +1 -0
- package/dist/commands/use.d.ts +10 -2
- package/dist/commands/use.d.ts.map +1 -1
- package/dist/commands/use.js +851 -73
- package/dist/commands/use.js.map +1 -1
- package/dist/config/paths.d.ts +11 -1
- package/dist/config/paths.d.ts.map +1 -1
- package/dist/config/paths.js +64 -29
- package/dist/config/paths.js.map +1 -1
- package/dist/config/project-config.d.ts +1 -0
- package/dist/config/project-config.d.ts.map +1 -1
- package/dist/config/project-config.js +70 -32
- package/dist/config/project-config.js.map +1 -1
- package/dist/context/broker.d.ts +28 -14
- package/dist/context/broker.d.ts.map +1 -1
- package/dist/context/broker.js +604 -145
- package/dist/context/broker.js.map +1 -1
- package/dist/context/delivery.d.ts +6 -21
- package/dist/context/delivery.d.ts.map +1 -1
- package/dist/context/delivery.js +196 -147
- package/dist/context/delivery.js.map +1 -1
- package/dist/context/feedback.d.ts +11 -12
- package/dist/context/feedback.d.ts.map +1 -1
- package/dist/context/feedback.js +229 -261
- package/dist/context/feedback.js.map +1 -1
- package/dist/context/ranking.d.ts +1 -12
- package/dist/context/ranking.d.ts.map +1 -1
- package/dist/context/ranking.js +13 -4
- package/dist/context/ranking.js.map +1 -1
- package/dist/context/recommendations.d.ts +0 -5
- package/dist/context/recommendations.d.ts.map +1 -1
- package/dist/context/recommendations.js +0 -1
- package/dist/context/recommendations.js.map +1 -1
- package/dist/context/run-state.d.ts +26 -0
- package/dist/context/run-state.d.ts.map +1 -0
- package/dist/context/run-state.js +399 -0
- package/dist/context/run-state.js.map +1 -0
- package/dist/context/scoped-broker.d.ts +17 -5
- package/dist/context/scoped-broker.d.ts.map +1 -1
- package/dist/context/scoped-broker.js +512 -106
- package/dist/context/scoped-broker.js.map +1 -1
- package/dist/context/selection-state.d.ts +19 -0
- package/dist/context/selection-state.d.ts.map +1 -0
- package/dist/context/selection-state.js +250 -0
- package/dist/context/selection-state.js.map +1 -0
- package/dist/db/adapter.d.ts +5 -3
- package/dist/db/adapter.d.ts.map +1 -1
- package/dist/db/adapter.js +7 -3
- package/dist/db/adapter.js.map +1 -1
- package/dist/db/capabilities.d.ts.map +1 -1
- package/dist/db/capabilities.js +34 -16
- package/dist/db/capabilities.js.map +1 -1
- package/dist/db/connection.d.ts +8 -0
- package/dist/db/connection.d.ts.map +1 -1
- package/dist/db/connection.js +55 -26
- package/dist/db/connection.js.map +1 -1
- package/dist/db/migrate.d.ts +28 -7
- package/dist/db/migrate.d.ts.map +1 -1
- package/dist/db/migrate.js +106 -78
- package/dist/db/migrate.js.map +1 -1
- package/dist/db/sqlite-retry.d.ts +11 -0
- package/dist/db/sqlite-retry.d.ts.map +1 -0
- package/dist/db/sqlite-retry.js +66 -0
- package/dist/db/sqlite-retry.js.map +1 -0
- package/dist/db/transaction.d.ts +13 -0
- package/dist/db/transaction.d.ts.map +1 -1
- package/dist/db/transaction.js +53 -24
- package/dist/db/transaction.js.map +1 -1
- package/dist/db/upgrade-backup.d.ts +58 -2
- package/dist/db/upgrade-backup.d.ts.map +1 -1
- package/dist/db/upgrade-backup.js +758 -28
- package/dist/db/upgrade-backup.js.map +1 -1
- package/dist/errors.d.ts +4 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +29 -1
- package/dist/errors.js.map +1 -1
- package/dist/gateway/agent-service.d.ts +4 -1
- package/dist/gateway/agent-service.d.ts.map +1 -1
- package/dist/gateway/agent-service.js +71 -58
- package/dist/gateway/agent-service.js.map +1 -1
- package/dist/gateway/checkpoint-service.d.ts +1 -0
- package/dist/gateway/checkpoint-service.d.ts.map +1 -1
- package/dist/gateway/checkpoint-service.js +47 -24
- package/dist/gateway/checkpoint-service.js.map +1 -1
- package/dist/ledger/archive.d.ts +1 -4
- package/dist/ledger/archive.d.ts.map +1 -1
- package/dist/ledger/archive.js +77 -39
- package/dist/ledger/archive.js.map +1 -1
- package/dist/ledger/maintenance.d.ts +0 -11
- package/dist/ledger/maintenance.d.ts.map +1 -1
- package/dist/ledger/maintenance.js +24 -40
- package/dist/ledger/maintenance.js.map +1 -1
- package/dist/ledger/projection.d.ts +0 -1
- package/dist/ledger/projection.d.ts.map +1 -1
- package/dist/ledger/projection.js.map +1 -1
- package/dist/ledger/promotion.d.ts +0 -9
- package/dist/ledger/promotion.d.ts.map +1 -1
- package/dist/ledger/promotion.js.map +1 -1
- package/dist/ledger/query.d.ts +1 -15
- package/dist/ledger/query.d.ts.map +1 -1
- package/dist/ledger/query.js.map +1 -1
- package/dist/ledger/store.d.ts +0 -1
- package/dist/ledger/store.d.ts.map +1 -1
- package/dist/ledger/store.js +11 -8
- package/dist/ledger/store.js.map +1 -1
- package/dist/ledger/types.d.ts +0 -4
- package/dist/ledger/types.d.ts.map +1 -1
- package/dist/ledger/types.js.map +1 -1
- package/dist/ledger/validate.d.ts.map +1 -1
- package/dist/ledger/validate.js +0 -5
- package/dist/ledger/validate.js.map +1 -1
- package/dist/mcp/server.d.ts +4 -0
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +105 -54
- package/dist/mcp/server.js.map +1 -1
- package/dist/memory/audit.d.ts +0 -1
- package/dist/memory/audit.d.ts.map +1 -1
- package/dist/memory/audit.js +0 -1
- package/dist/memory/audit.js.map +1 -1
- package/dist/memory/curator.d.ts.map +1 -1
- package/dist/memory/curator.js +172 -96
- package/dist/memory/curator.js.map +1 -1
- package/dist/memory/entries.d.ts +12 -2
- package/dist/memory/entries.d.ts.map +1 -1
- package/dist/memory/entries.js +199 -115
- package/dist/memory/entries.js.map +1 -1
- package/dist/memory/federated-retrieval.d.ts +12 -1
- package/dist/memory/federated-retrieval.d.ts.map +1 -1
- package/dist/memory/federated-retrieval.js +183 -70
- package/dist/memory/federated-retrieval.js.map +1 -1
- package/dist/memory/hybrid-retrieval.d.ts +5 -11
- package/dist/memory/hybrid-retrieval.d.ts.map +1 -1
- package/dist/memory/hybrid-retrieval.js +78 -58
- package/dist/memory/hybrid-retrieval.js.map +1 -1
- package/dist/memory/lifecycle.d.ts.map +1 -1
- package/dist/memory/lifecycle.js +17 -13
- package/dist/memory/lifecycle.js.map +1 -1
- package/dist/memory/rebuild-search.d.ts +5 -0
- package/dist/memory/rebuild-search.d.ts.map +1 -1
- package/dist/memory/rebuild-search.js +101 -76
- package/dist/memory/rebuild-search.js.map +1 -1
- package/dist/memory/retrieval-query.d.ts +0 -5
- package/dist/memory/retrieval-query.d.ts.map +1 -1
- package/dist/memory/retrieval-query.js +0 -5
- package/dist/memory/retrieval-query.js.map +1 -1
- package/dist/memory/retrieval.d.ts.map +1 -1
- package/dist/memory/retrieval.js +25 -131
- package/dist/memory/retrieval.js.map +1 -1
- package/dist/memory/revisions.d.ts +76 -1
- package/dist/memory/revisions.d.ts.map +1 -1
- package/dist/memory/revisions.js +540 -36
- package/dist/memory/revisions.js.map +1 -1
- package/dist/memory/scoped-memory.d.ts +16 -1
- package/dist/memory/scoped-memory.d.ts.map +1 -1
- package/dist/memory/scoped-memory.js +240 -107
- package/dist/memory/scoped-memory.js.map +1 -1
- package/dist/memory/secrets.d.ts +2 -0
- package/dist/memory/secrets.d.ts.map +1 -1
- package/dist/memory/secrets.js +36 -0
- package/dist/memory/secrets.js.map +1 -1
- package/dist/memory/structured-memory.d.ts +3 -2
- package/dist/memory/structured-memory.d.ts.map +1 -1
- package/dist/memory/structured-memory.js +54 -22
- package/dist/memory/structured-memory.js.map +1 -1
- package/dist/memory/workspaces.d.ts +9 -0
- package/dist/memory/workspaces.d.ts.map +1 -1
- package/dist/memory/workspaces.js +67 -0
- package/dist/memory/workspaces.js.map +1 -1
- package/dist/package-version.d.ts +2 -0
- package/dist/package-version.d.ts.map +1 -0
- package/dist/package-version.js +7 -0
- package/dist/package-version.js.map +1 -0
- package/dist/repository/binding.d.ts +5 -0
- package/dist/repository/binding.d.ts.map +1 -1
- package/dist/repository/binding.js +117 -17
- package/dist/repository/binding.js.map +1 -1
- package/dist/repository/framework-version.d.ts +8 -0
- package/dist/repository/framework-version.d.ts.map +1 -0
- package/dist/repository/framework-version.js +29 -0
- package/dist/repository/framework-version.js.map +1 -0
- package/dist/repository/identity-value.d.ts +4 -0
- package/dist/repository/identity-value.d.ts.map +1 -0
- package/dist/repository/identity-value.js +24 -0
- package/dist/repository/identity-value.js.map +1 -0
- package/dist/repository/identity.d.ts.map +1 -1
- package/dist/repository/identity.js +2 -0
- package/dist/repository/identity.js.map +1 -1
- package/dist/repository/project-fingerprint.d.ts +14 -2
- package/dist/repository/project-fingerprint.d.ts.map +1 -1
- package/dist/repository/project-fingerprint.js +312 -33
- package/dist/repository/project-fingerprint.js.map +1 -1
- package/dist/repository/remote-url.d.ts +0 -1
- package/dist/repository/remote-url.d.ts.map +1 -1
- package/dist/repository/remote-url.js +0 -1
- package/dist/repository/remote-url.js.map +1 -1
- package/dist/runtime-version.d.ts +2 -1
- package/dist/runtime-version.d.ts.map +1 -1
- package/dist/runtime-version.js +21 -4
- package/dist/runtime-version.js.map +1 -1
- package/dist/serialization/boundary-json.d.ts +20 -0
- package/dist/serialization/boundary-json.d.ts.map +1 -0
- package/dist/serialization/boundary-json.js +129 -0
- package/dist/serialization/boundary-json.js.map +1 -0
- package/dist/serialization/envelope.js +1 -1
- package/dist/serialization/envelope.js.map +1 -1
- package/dist/serialization/validate.d.ts +7 -0
- package/dist/serialization/validate.d.ts.map +1 -1
- package/dist/serialization/validate.js +53 -13
- package/dist/serialization/validate.js.map +1 -1
- package/dist/server/app.js +1 -1
- package/dist/server/app.js.map +1 -1
- package/dist/server/http.d.ts +4 -3
- package/dist/server/http.d.ts.map +1 -1
- package/dist/server/http.js +90 -50
- package/dist/server/http.js.map +1 -1
- package/dist/server/idempotency.d.ts +0 -6
- package/dist/server/idempotency.d.ts.map +1 -1
- package/dist/server/idempotency.js.map +1 -1
- package/dist/server/router.d.ts.map +1 -1
- package/dist/server/router.js +21 -4
- package/dist/server/router.js.map +1 -1
- package/dist/server/routes/agent-capability-gate.d.ts +40 -0
- package/dist/server/routes/agent-capability-gate.d.ts.map +1 -0
- package/dist/server/routes/agent-capability-gate.js +182 -0
- package/dist/server/routes/agent-capability-gate.js.map +1 -0
- package/dist/server/routes/agent-events.d.ts.map +1 -1
- package/dist/server/routes/agent-events.js +8 -1
- package/dist/server/routes/agent-events.js.map +1 -1
- package/dist/server/routes/agent-intake.d.ts.map +1 -1
- package/dist/server/routes/agent-intake.js +10 -2
- package/dist/server/routes/agent-intake.js.map +1 -1
- package/dist/server/routes/agent-promotions.d.ts.map +1 -1
- package/dist/server/routes/agent-promotions.js +5 -2
- package/dist/server/routes/agent-promotions.js.map +1 -1
- package/dist/server/routes/agent-runs.d.ts.map +1 -1
- package/dist/server/routes/agent-runs.js +18 -4
- package/dist/server/routes/agent-runs.js.map +1 -1
- package/dist/server/routes/request-binding.d.ts +5 -0
- package/dist/server/routes/request-binding.d.ts.map +1 -0
- package/dist/server/routes/request-binding.js +49 -0
- package/dist/server/routes/request-binding.js.map +1 -0
- package/dist/server/routes/task5-support.d.ts +1 -8
- package/dist/server/routes/task5-support.d.ts.map +1 -1
- package/dist/server/routes/task5-support.js +1 -17
- package/dist/server/routes/task5-support.js.map +1 -1
- package/dist/server/routes/task5.d.ts.map +1 -1
- package/dist/server/routes/task5.js +106 -36
- package/dist/server/routes/task5.js.map +1 -1
- package/dist/server/write-queue.js +2 -2
- package/dist/server/write-queue.js.map +1 -1
- package/dist/setup/claude-config.d.ts +4 -1
- package/dist/setup/claude-config.d.ts.map +1 -1
- package/dist/setup/claude-config.js +62 -4
- package/dist/setup/claude-config.js.map +1 -1
- package/dist/setup/client-detection.d.ts +7 -2
- package/dist/setup/client-detection.d.ts.map +1 -1
- package/dist/setup/client-detection.js +27 -9
- package/dist/setup/client-detection.js.map +1 -1
- package/dist/setup/hermes-config.d.ts +4 -1
- package/dist/setup/hermes-config.d.ts.map +1 -1
- package/dist/setup/hermes-config.js +71 -17
- package/dist/setup/hermes-config.js.map +1 -1
- package/dist/setup/legacy-client-cleanup.d.ts +6 -0
- package/dist/setup/legacy-client-cleanup.d.ts.map +1 -0
- package/dist/setup/legacy-client-cleanup.js +152 -0
- package/dist/setup/legacy-client-cleanup.js.map +1 -0
- package/dist/setup/managed-text.d.ts.map +1 -1
- package/dist/setup/managed-text.js +11 -1
- package/dist/setup/managed-text.js.map +1 -1
- package/dist/setup/mcp-conflict.d.ts +4 -0
- package/dist/setup/mcp-conflict.d.ts.map +1 -0
- package/dist/setup/mcp-conflict.js +15 -0
- package/dist/setup/mcp-conflict.js.map +1 -0
- package/dist/setup/opencode-config.d.ts +4 -1
- package/dist/setup/opencode-config.d.ts.map +1 -1
- package/dist/setup/opencode-config.js +65 -5
- package/dist/setup/opencode-config.js.map +1 -1
- package/dist/setup/render.d.ts +4 -1
- package/dist/setup/render.d.ts.map +1 -1
- package/dist/setup/render.js +168 -18
- package/dist/setup/render.js.map +1 -1
- package/dist/setup/standard-skills.d.ts +16 -2
- package/dist/setup/standard-skills.d.ts.map +1 -1
- package/dist/setup/standard-skills.js +37 -13
- package/dist/setup/standard-skills.js.map +1 -1
- package/dist/setup/strict-json.d.ts +7 -0
- package/dist/setup/strict-json.d.ts.map +1 -0
- package/dist/setup/strict-json.js +98 -0
- package/dist/setup/strict-json.js.map +1 -0
- package/dist/setup/strict-toml.d.ts +18 -0
- package/dist/setup/strict-toml.d.ts.map +1 -0
- package/dist/setup/strict-toml.js +491 -0
- package/dist/setup/strict-toml.js.map +1 -0
- package/dist/skills/cache.d.ts +15 -0
- package/dist/skills/cache.d.ts.map +1 -0
- package/dist/skills/cache.js +19 -0
- package/dist/skills/cache.js.map +1 -0
- package/dist/skills/candidate-ranking.d.ts +15 -0
- package/dist/skills/candidate-ranking.d.ts.map +1 -0
- package/dist/skills/candidate-ranking.js +52 -0
- package/dist/skills/candidate-ranking.js.map +1 -0
- package/dist/skills/chunking.d.ts +11 -0
- package/dist/skills/chunking.d.ts.map +1 -0
- package/dist/skills/chunking.js +291 -0
- package/dist/skills/chunking.js.map +1 -0
- package/dist/skills/config.d.ts +19 -0
- package/dist/skills/config.d.ts.map +1 -0
- package/dist/skills/config.js +103 -0
- package/dist/skills/config.js.map +1 -0
- package/dist/skills/discovery-service.d.ts +26 -0
- package/dist/skills/discovery-service.d.ts.map +1 -0
- package/dist/skills/discovery-service.js +921 -0
- package/dist/skills/discovery-service.js.map +1 -0
- package/dist/skills/external-transport.d.ts +2 -0
- package/dist/skills/external-transport.d.ts.map +1 -0
- package/dist/skills/external-transport.js +30 -0
- package/dist/skills/external-transport.js.map +1 -0
- package/dist/skills/find.d.ts +16 -0
- package/dist/skills/find.d.ts.map +1 -0
- package/dist/skills/find.js +58 -0
- package/dist/skills/find.js.map +1 -0
- package/dist/skills/gap-detection.d.ts +23 -0
- package/dist/skills/gap-detection.d.ts.map +1 -0
- package/dist/skills/gap-detection.js +62 -0
- package/dist/skills/gap-detection.js.map +1 -0
- package/dist/skills/import-preparation.d.ts +4 -0
- package/dist/skills/import-preparation.d.ts.map +1 -0
- package/dist/skills/import-preparation.js +20 -0
- package/dist/skills/import-preparation.js.map +1 -0
- package/dist/skills/materialization-authority.d.ts +11 -0
- package/dist/skills/materialization-authority.d.ts.map +1 -0
- package/dist/skills/materialization-authority.js +92 -0
- package/dist/skills/materialization-authority.js.map +1 -0
- package/dist/skills/materialization-service.d.ts +22 -0
- package/dist/skills/materialization-service.d.ts.map +1 -0
- package/dist/skills/materialization-service.js +101 -0
- package/dist/skills/materialization-service.js.map +1 -0
- package/dist/skills/official-catalog.d.ts +31 -0
- package/dist/skills/official-catalog.d.ts.map +1 -0
- package/dist/skills/official-catalog.js +110 -0
- package/dist/skills/official-catalog.js.map +1 -0
- package/dist/skills/providers/schema.d.ts +30 -0
- package/dist/skills/providers/schema.d.ts.map +1 -0
- package/dist/skills/providers/schema.js +354 -0
- package/dist/skills/providers/schema.js.map +1 -0
- package/dist/skills/providers/skills-sh-compat.d.ts +17 -0
- package/dist/skills/providers/skills-sh-compat.d.ts.map +1 -0
- package/dist/skills/providers/skills-sh-compat.js +71 -0
- package/dist/skills/providers/skills-sh-compat.js.map +1 -0
- package/dist/skills/providers/skills-sh-v1.d.ts +23 -0
- package/dist/skills/providers/skills-sh-v1.d.ts.map +1 -0
- package/dist/skills/providers/skills-sh-v1.js +134 -0
- package/dist/skills/providers/skills-sh-v1.js.map +1 -0
- package/dist/skills/query-builder.d.ts +18 -0
- package/dist/skills/query-builder.d.ts.map +1 -0
- package/dist/skills/query-builder.js +93 -0
- package/dist/skills/query-builder.js.map +1 -0
- package/dist/skills/source/errors.d.ts +9 -0
- package/dist/skills/source/errors.d.ts.map +1 -0
- package/dist/skills/source/errors.js +15 -0
- package/dist/skills/source/errors.js.map +1 -0
- package/dist/skills/source/frontmatter.d.ts +9 -0
- package/dist/skills/source/frontmatter.d.ts.map +1 -0
- package/dist/skills/source/frontmatter.js +77 -0
- package/dist/skills/source/frontmatter.js.map +1 -0
- package/dist/skills/source/github-fetcher.d.ts +20 -0
- package/dist/skills/source/github-fetcher.d.ts.map +1 -0
- package/dist/skills/source/github-fetcher.js +292 -0
- package/dist/skills/source/github-fetcher.js.map +1 -0
- package/dist/skills/source/snapshot-validator.d.ts +28 -0
- package/dist/skills/source/snapshot-validator.d.ts.map +1 -0
- package/dist/skills/source/snapshot-validator.js +186 -0
- package/dist/skills/source/snapshot-validator.js.map +1 -0
- package/dist/skills/store.d.ts +181 -0
- package/dist/skills/store.d.ts.map +1 -0
- package/dist/skills/store.js +1710 -0
- package/dist/skills/store.js.map +1 -0
- package/dist/skills/types.d.ts +169 -0
- package/dist/skills/types.d.ts.map +1 -0
- package/dist/skills/types.js +2 -0
- package/dist/skills/types.js.map +1 -0
- package/dist/web/i18n.d.ts +32 -0
- package/dist/web/i18n.d.ts.map +1 -1
- package/dist/web/i18n.js +128 -0
- package/dist/web/i18n.js.map +1 -1
- package/dist/web/server.d.ts.map +1 -1
- package/dist/web/server.js +386 -38
- package/dist/web/server.js.map +1 -1
- package/dist/web/ui.d.ts +4 -0
- package/dist/web/ui.d.ts.map +1 -1
- package/dist/web/ui.js +382 -6
- package/dist/web/ui.js.map +1 -1
- package/migrations/009_external_skill_discovery.sql +126 -0
- package/package.json +6 -3
- package/skills/kiokuko-single-purpose-functions/SKILL.md +288 -0
- package/skills/kiokuko-single-purpose-functions/references/kiokuko-patterns.md +344 -0
- package/skills/kiokuko-single-purpose-functions/references/review-checklist.md +97 -0
- package/skills/kiokuko-ui-design-soul/SKILL.md +1186 -28
- package/templates/AGENTS.md +8 -7
- package/dist/client/runtime-discovery.d.ts +0 -15
- package/dist/client/runtime-discovery.d.ts.map +0 -1
- package/dist/client/runtime-discovery.js +0 -45
- package/dist/client/runtime-discovery.js.map +0 -1
- package/dist/commands/call.d.ts +0 -7
- package/dist/commands/call.d.ts.map +0 -1
- package/dist/commands/call.js +0 -10
- package/dist/commands/call.js.map +0 -1
- package/dist/commands/link.d.ts +0 -6
- package/dist/commands/link.d.ts.map +0 -1
- package/dist/commands/link.js +0 -6
- package/dist/commands/link.js.map +0 -1
- package/dist/commands/promote.d.ts +0 -6
- package/dist/commands/promote.d.ts.map +0 -1
- package/dist/commands/promote.js +0 -6
- package/dist/commands/promote.js.map +0 -1
- package/dist/commands/read.d.ts +0 -6
- package/dist/commands/read.d.ts.map +0 -1
- package/dist/commands/read.js +0 -4
- package/dist/commands/read.js.map +0 -1
- package/dist/commands/recall.d.ts +0 -6
- package/dist/commands/recall.d.ts.map +0 -1
- package/dist/commands/recall.js +0 -4
- package/dist/commands/recall.js.map +0 -1
- package/dist/commands/record.d.ts +0 -6
- package/dist/commands/record.d.ts.map +0 -1
- package/dist/commands/record.js +0 -4
- package/dist/commands/record.js.map +0 -1
- package/dist/commands/search.d.ts +0 -6
- package/dist/commands/search.d.ts.map +0 -1
- package/dist/commands/search.js +0 -4
- package/dist/commands/search.js.map +0 -1
- package/dist/commands/supersede.d.ts +0 -6
- package/dist/commands/supersede.d.ts.map +0 -1
- package/dist/commands/supersede.js +0 -6
- package/dist/commands/supersede.js.map +0 -1
- package/dist/knowledge/sources.d.ts +0 -72
- package/dist/knowledge/sources.d.ts.map +0 -1
- package/dist/knowledge/sources.js +0 -388
- package/dist/knowledge/sources.js.map +0 -1
- package/dist/setup/opencode-evidence.d.ts +0 -37
- package/dist/setup/opencode-evidence.d.ts.map +0 -1
- package/dist/setup/opencode-evidence.js +0 -58
- package/dist/setup/opencode-evidence.js.map +0 -1
- package/dist/setup/opencode-loop-guard.d.ts +0 -9
- package/dist/setup/opencode-loop-guard.d.ts.map +0 -1
- package/dist/setup/opencode-loop-guard.js +0 -248
- package/dist/setup/opencode-loop-guard.js.map +0 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { randomUUID } from 'node:crypto';
|
|
2
|
+
import { isProxy } from 'node:util/types';
|
|
2
3
|
import { withImmediateTransaction } from '../db/transaction.js';
|
|
3
4
|
import { KiokukoError } from '../errors.js';
|
|
4
5
|
import { readAkinatorSession, readRunIntakeLink } from '../akinator/store.js';
|
|
@@ -8,7 +9,8 @@ import { sanitizeEvent } from '../ledger/redaction.js';
|
|
|
8
9
|
import { validateEventBatch, validateTimestamp } from '../ledger/validate.js';
|
|
9
10
|
import { executeIdempotentInTransaction } from '../server/idempotency.js';
|
|
10
11
|
import { buildRecommendations } from '../context/recommendations.js';
|
|
11
|
-
import {
|
|
12
|
+
import { readContextRunRetrievalState } from '../context/run-state.js';
|
|
13
|
+
import { recordContextFeedbackInTransaction, recordIntakeFeedbackInTransaction, recordRunFeedbackInTransaction, validateFeedbackTimestamp, } from '../context/feedback.js';
|
|
12
14
|
const CHECKPOINT_EVENT_TYPES = [
|
|
13
15
|
'step.started', 'step.completed', 'step.failed', 'file.changed', 'error.recorded',
|
|
14
16
|
'context.feedback', 'task_profile.revised', 'correction.recorded', 'request.received',
|
|
@@ -24,7 +26,7 @@ function conflict(message = 'Checkpoint requires an active run') {
|
|
|
24
26
|
throw new KiokukoError('CONFLICT', message);
|
|
25
27
|
}
|
|
26
28
|
function assertPlainObject(value) {
|
|
27
|
-
if (typeof value !== 'object' || value === null || Array.isArray(value))
|
|
29
|
+
if (typeof value !== 'object' || value === null || Array.isArray(value) || isProxy(value))
|
|
28
30
|
validation();
|
|
29
31
|
const prototype = Object.getPrototypeOf(value);
|
|
30
32
|
if (prototype !== Object.prototype && prototype !== null)
|
|
@@ -151,21 +153,26 @@ function projectionFor(database, runId, acceptedThrough) {
|
|
|
151
153
|
...(row.outcome === null ? {} : { outcome: row.outcome }),
|
|
152
154
|
...(row.payload_json === null ? {} : { payload: JSON.parse(row.payload_json) }),
|
|
153
155
|
}));
|
|
154
|
-
return
|
|
155
|
-
initialProfile: session.profile,
|
|
156
|
+
return {
|
|
156
157
|
intakeStatus: session.status,
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
158
|
+
projection: projectLedger({
|
|
159
|
+
initialProfile: session.profile,
|
|
160
|
+
intakeStatus: session.status,
|
|
161
|
+
coverage: run.coverage,
|
|
162
|
+
throughSequence: acceptedThrough,
|
|
163
|
+
events,
|
|
164
|
+
}),
|
|
165
|
+
};
|
|
161
166
|
}
|
|
162
167
|
function responseValue(database, runId, request, idempotencyKey, now) {
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
168
|
+
// The route's broker validates this state again after checkpoint persistence.
|
|
169
|
+
// Validate the exact same authoritative run/intake/event chain before the
|
|
170
|
+
// first mutation so a corrupt pre-existing state cannot commit a checkpoint.
|
|
171
|
+
const state = readContextRunRetrievalState(database, runId);
|
|
172
|
+
const run = state.run;
|
|
167
173
|
if (run.status !== 'active')
|
|
168
174
|
conflict(run.status === 'intake' ? 'Checkpoint is not allowed during intake' : 'Checkpoint is not allowed for a terminal run');
|
|
175
|
+
const store = new LedgerStore(database);
|
|
169
176
|
const ack = store.appendBatchInTransaction(runId, { events: request.events });
|
|
170
177
|
for (let index = 0; index < request.contextFeedback.length; index += 1) {
|
|
171
178
|
const feedback = assertPlainObject(request.contextFeedback[index]);
|
|
@@ -173,16 +180,17 @@ function responseValue(database, runId, request, idempotencyKey, now) {
|
|
|
173
180
|
...feedback,
|
|
174
181
|
workspace: run.workspace,
|
|
175
182
|
runId,
|
|
176
|
-
actor:
|
|
183
|
+
actor: Object.hasOwn(feedback, 'actor') ? feedback.actor : 'kiokuko-checkpoint',
|
|
177
184
|
idempotencyKey: `${idempotencyKey}:context:${index}`,
|
|
178
|
-
createdAt:
|
|
185
|
+
createdAt: Object.hasOwn(feedback, 'createdAt') ? validateFeedbackTimestamp(feedback.createdAt) : now,
|
|
179
186
|
});
|
|
180
187
|
}
|
|
181
|
-
const projection = projectionFor(database, runId, ack.acceptedThrough);
|
|
188
|
+
const { intakeStatus, projection } = projectionFor(database, runId, ack.acceptedThrough);
|
|
182
189
|
const recommendations = buildRecommendations({ projection, broker: {} });
|
|
183
190
|
return {
|
|
184
191
|
...ack,
|
|
185
192
|
runStatus: 'active',
|
|
193
|
+
intakeStatus,
|
|
186
194
|
taskProfile: { ...projection.taskProfile, source: 'akinator+ledger-revisions' },
|
|
187
195
|
profileHash: projection.profileHash,
|
|
188
196
|
projection,
|
|
@@ -212,7 +220,18 @@ export class CheckpointService {
|
|
|
212
220
|
}
|
|
213
221
|
}
|
|
214
222
|
function feedbackRequest(raw) {
|
|
215
|
-
const
|
|
223
|
+
const input = assertPlainObject(raw);
|
|
224
|
+
const keys = Reflect.ownKeys(input);
|
|
225
|
+
const descriptors = Object.getOwnPropertyDescriptors(input);
|
|
226
|
+
const value = Object.create(null);
|
|
227
|
+
for (const key of keys) {
|
|
228
|
+
if (typeof key !== 'string')
|
|
229
|
+
validation();
|
|
230
|
+
const descriptor = descriptors[key];
|
|
231
|
+
if (!descriptor || !('value' in descriptor) || descriptor.enumerable !== true)
|
|
232
|
+
validation();
|
|
233
|
+
value[key] = descriptor.value;
|
|
234
|
+
}
|
|
216
235
|
if (value.apiVersion !== '1' || typeof value.category !== 'string' || !['context', 'recommendation', 'intake', 'run'].includes(value.category))
|
|
217
236
|
validation();
|
|
218
237
|
const categoryFields = value.category === 'context'
|
|
@@ -221,22 +240,26 @@ function feedbackRequest(raw) {
|
|
|
221
240
|
? ['sessionId', 'questionId', 'profileField', 'verdict']
|
|
222
241
|
: ['outcome', 'recommendationCode', 'recommendationVerdict', 'rating'];
|
|
223
242
|
const allowed = new Set(['apiVersion', 'category', 'feedbackId', 'actor', 'createdAt', 'comment', ...categoryFields]);
|
|
224
|
-
if (
|
|
243
|
+
if (keys.some((field) => typeof field !== 'string' || !allowed.has(field)))
|
|
225
244
|
validation();
|
|
245
|
+
if (Object.hasOwn(value, 'createdAt'))
|
|
246
|
+
validateFeedbackTimestamp(value.createdAt);
|
|
247
|
+
if (value.category === 'intake' && Object.hasOwn(value, 'sessionId'))
|
|
248
|
+
boundedString(value.sessionId, 256);
|
|
226
249
|
return value;
|
|
227
250
|
}
|
|
228
251
|
function feedbackField(value, field) {
|
|
229
252
|
return Object.hasOwn(value, field) ? value[field] : undefined;
|
|
230
253
|
}
|
|
231
|
-
function feedbackValue(database, runId, key,
|
|
254
|
+
function feedbackValue(database, runId, key, value, now) {
|
|
232
255
|
const run = new LedgerStore(database).readRun(runId);
|
|
233
256
|
if (!run)
|
|
234
257
|
throw new KiokukoError('NOT_FOUND', 'Ledger run not found');
|
|
235
|
-
const value = feedbackRequest(raw);
|
|
236
258
|
const category = value.category;
|
|
237
|
-
const actor = value
|
|
259
|
+
const actor = Object.hasOwn(value, 'actor') ? boundedString(value.actor) : 'kiokuko-feedback';
|
|
238
260
|
const feedbackId = boundedString(value.feedbackId, 256);
|
|
239
|
-
const
|
|
261
|
+
const createdAt = Object.hasOwn(value, 'createdAt') ? validateFeedbackTimestamp(value.createdAt) : now;
|
|
262
|
+
const common = { workspace: run.workspace, feedbackId, actor, createdAt, idempotencyKey: key };
|
|
240
263
|
let record;
|
|
241
264
|
if (category === 'context') {
|
|
242
265
|
record = recordContextFeedbackInTransaction(database, {
|
|
@@ -253,7 +276,7 @@ function feedbackValue(database, runId, key, raw, now) {
|
|
|
253
276
|
record = recordIntakeFeedbackInTransaction(database, {
|
|
254
277
|
...common,
|
|
255
278
|
runId,
|
|
256
|
-
sessionId: value.sessionId
|
|
279
|
+
sessionId: Object.hasOwn(value, 'sessionId') ? boundedString(value.sessionId, 256) : link.sessionId,
|
|
257
280
|
questionId: value.questionId ?? null,
|
|
258
281
|
profileField: value.profileField ?? null,
|
|
259
282
|
verdict: feedbackField(value, 'verdict'),
|
|
@@ -288,8 +311,8 @@ export class FeedbackService {
|
|
|
288
311
|
if (!run)
|
|
289
312
|
throw new KiokukoError('NOT_FOUND', 'Ledger run not found');
|
|
290
313
|
const now = validateTimestamp(this.now(), 'createdAt');
|
|
291
|
-
feedbackRequest(value.request);
|
|
292
|
-
return withImmediateTransaction(this.database, () => executeIdempotentInTransaction(this.database, { scope: `agent.feedback.${value.runId}`, key: value.idempotencyKey, request
|
|
314
|
+
const request = feedbackRequest(value.request);
|
|
315
|
+
return withImmediateTransaction(this.database, () => executeIdempotentInTransaction(this.database, { scope: `agent.feedback.${value.runId}`, key: value.idempotencyKey, request, createdAt: now }, () => feedbackValue(this.database, value.runId, value.idempotencyKey, request, now)));
|
|
293
316
|
}
|
|
294
317
|
}
|
|
295
318
|
//# sourceMappingURL=checkpoint-service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkpoint-service.js","sourceRoot":"","sources":["../../src/gateway/checkpoint-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"checkpoint-service.js","sourceRoot":"","sources":["../../src/gateway/checkpoint-service.ts"],"names":[],"mappings":"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"}
|
package/dist/ledger/archive.d.ts
CHANGED
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
import type { SqliteDatabase } from '../db/adapter.js';
|
|
2
2
|
export declare const LEDGER_ARCHIVE_FORMAT: "kiokuko-ledger-jsonl";
|
|
3
3
|
export declare const LEDGER_ARCHIVE_API_VERSION: "1";
|
|
4
|
-
export declare const LEDGER_ARCHIVE_VERSION:
|
|
4
|
+
export declare const LEDGER_ARCHIVE_VERSION: 2;
|
|
5
5
|
export declare const MAX_ARCHIVE_LINE_COUNT = 10000;
|
|
6
6
|
export declare const MAX_ARCHIVE_LINE_BYTES: number;
|
|
7
7
|
export declare const MAX_ARCHIVE_TOTAL_BYTES: number;
|
|
8
|
-
export declare const MAX_LEDGER_ARCHIVE_LINES = 10000;
|
|
9
|
-
export declare const MAX_LEDGER_ARCHIVE_LINE_BYTES: number;
|
|
10
|
-
export declare const MAX_LEDGER_ARCHIVE_BYTES: number;
|
|
11
8
|
export interface LedgerArchiveCounts {
|
|
12
9
|
runs: number;
|
|
13
10
|
sessions: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archive.d.ts","sourceRoot":"","sources":["../../src/ledger/archive.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAe,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"archive.d.ts","sourceRoot":"","sources":["../../src/ledger/archive.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAe,MAAM,kBAAkB,CAAC;AAkBpE,eAAO,MAAM,qBAAqB,EAAG,sBAA+B,CAAC;AACrE,eAAO,MAAM,0BAA0B,EAAG,GAAY,CAAC;AACvD,eAAO,MAAM,sBAAsB,EAAG,CAAU,CAAC;AAEjD,eAAO,MAAM,sBAAsB,QAAS,CAAC;AAC7C,eAAO,MAAM,sBAAsB,QAAa,CAAC;AACjD,eAAO,MAAM,uBAAuB,QAAmB,CAAC;AAkBxD,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,0BAA0B;IACzC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,yBAAyB;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,UAAU,EAAE,mBAAmB,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;CACnB;AAyjBD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,0BAA0B,GAAG,mBAAmB,CAOtH;AA0YD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,cAAc,GAAG,SAAS,EAAE,OAAO,EAAE,0BAA0B,GAAG,yBAAyB,CA4CxI"}
|
package/dist/ledger/archive.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { createHash } from 'node:crypto';
|
|
2
|
+
import { isSqliteCorruptionError, isSqliteUniqueConstraintError } from '../db/sqlite-retry.js';
|
|
2
3
|
import { withImmediateTransaction } from '../db/transaction.js';
|
|
3
4
|
import { KiokukoError } from '../errors.js';
|
|
4
5
|
import { findSecret } from '../memory/secrets.js';
|
|
@@ -8,13 +9,10 @@ import { entryOriginMatchesWorkspace, isContextEntryOrigin } from '../context/or
|
|
|
8
9
|
import { CAPTURE_PROFILES, COVERAGE_LEVELS, LEDGER_EVENT_TYPES, RUN_STATUSES, TERMINAL_RUN_STATUSES, } from './types.js';
|
|
9
10
|
export const LEDGER_ARCHIVE_FORMAT = 'kiokuko-ledger-jsonl';
|
|
10
11
|
export const LEDGER_ARCHIVE_API_VERSION = '1';
|
|
11
|
-
export const LEDGER_ARCHIVE_VERSION =
|
|
12
|
+
export const LEDGER_ARCHIVE_VERSION = 2;
|
|
12
13
|
export const MAX_ARCHIVE_LINE_COUNT = 10_000;
|
|
13
14
|
export const MAX_ARCHIVE_LINE_BYTES = 512 * 1024;
|
|
14
15
|
export const MAX_ARCHIVE_TOTAL_BYTES = 64 * 1024 * 1024;
|
|
15
|
-
export const MAX_LEDGER_ARCHIVE_LINES = MAX_ARCHIVE_LINE_COUNT;
|
|
16
|
-
export const MAX_LEDGER_ARCHIVE_LINE_BYTES = MAX_ARCHIVE_LINE_BYTES;
|
|
17
|
-
export const MAX_LEDGER_ARCHIVE_BYTES = MAX_ARCHIVE_TOTAL_BYTES;
|
|
18
16
|
const COMMENT_MAX_BYTES = 4 * 1024;
|
|
19
17
|
const IDENTIFIER_MAX_LENGTH = 256;
|
|
20
18
|
const TEXT_MAX_LENGTH = 16 * 1024;
|
|
@@ -72,7 +70,7 @@ const RECORD_FIELDS = {
|
|
|
72
70
|
],
|
|
73
71
|
deliveries: [
|
|
74
72
|
'type', 'delivery_id', 'run_id', 'through_sequence', 'intake_session_id', 'task_profile_hash', 'query_hash',
|
|
75
|
-
'policy_version', '
|
|
73
|
+
'policy_version', 'score_schema_version', 'char_budget', 'char_count', 'truncated', 'created_at',
|
|
76
74
|
],
|
|
77
75
|
deliveryEntries: ['type', 'delivery_id', 'entry_id', 'entry_revision', 'rank', 'score_components_json', 'selection_reason_json', 'origin_scope'],
|
|
78
76
|
contextFeedback: ['type', 'feedback_id', 'delivery_id', 'entry_id', 'run_id', 'verdict', 'comment', 'actor', 'idempotency_key', 'created_at'],
|
|
@@ -115,6 +113,21 @@ const TABLE_NAMES = {
|
|
|
115
113
|
memoryLinks: 'ledger_memory_links',
|
|
116
114
|
purgeAudit: 'ledger_purge_audit',
|
|
117
115
|
};
|
|
116
|
+
const UNIQUE_CONSTRAINT_TARGETS = {
|
|
117
|
+
runs: ['ledger_runs.run_id'],
|
|
118
|
+
sessions: ['akinator_sessions.id'],
|
|
119
|
+
answers: ['akinator_answers.session_id, akinator_answers.question_id'],
|
|
120
|
+
runIntakes: ['run_intakes.run_id', 'run_intakes.session_id'],
|
|
121
|
+
intakeFeedback: ['intake_feedback.feedback_id', 'intake_feedback.run_id, intake_feedback.actor, intake_feedback.idempotency_key'],
|
|
122
|
+
events: ['ledger_events.event_id', 'ledger_events.run_id, ledger_events.sequence', 'ledger_events.run_id, ledger_events.source_event_id'],
|
|
123
|
+
evidence: ['ledger_evidence.evidence_id'],
|
|
124
|
+
deliveries: ['context_deliveries.delivery_id'],
|
|
125
|
+
deliveryEntries: ['context_delivery_entries.delivery_id, context_delivery_entries.entry_id'],
|
|
126
|
+
contextFeedback: ['context_feedback.feedback_id', 'context_feedback.run_id, context_feedback.actor, context_feedback.idempotency_key'],
|
|
127
|
+
runFeedback: ['run_feedback.feedback_id', 'run_feedback.run_id, run_feedback.actor, run_feedback.idempotency_key'],
|
|
128
|
+
memoryLinks: ['ledger_memory_links.link_id'],
|
|
129
|
+
purgeAudit: ['ledger_purge_audit.purge_id'],
|
|
130
|
+
};
|
|
118
131
|
const RECORD_NAMES = {
|
|
119
132
|
runs: 'run',
|
|
120
133
|
sessions: 'session',
|
|
@@ -149,6 +162,11 @@ function notFound() {
|
|
|
149
162
|
function databaseFailure() {
|
|
150
163
|
return fail('DATABASE_ERROR', 'Ledger archive database operation failed');
|
|
151
164
|
}
|
|
165
|
+
function canonicalIntegrityFailure(error) {
|
|
166
|
+
if (error instanceof KiokukoError && error.code === 'VALIDATION_ERROR')
|
|
167
|
+
integrity();
|
|
168
|
+
throw error;
|
|
169
|
+
}
|
|
152
170
|
function isObject(value) {
|
|
153
171
|
if (typeof value !== 'object' || value === null || Array.isArray(value))
|
|
154
172
|
return false;
|
|
@@ -212,32 +230,30 @@ function parsedJson(value, validator) {
|
|
|
212
230
|
let parsed;
|
|
213
231
|
try {
|
|
214
232
|
parsed = JSON.parse(value);
|
|
215
|
-
canonicalJson(parsed);
|
|
216
233
|
}
|
|
217
|
-
catch {
|
|
218
|
-
|
|
234
|
+
catch (error) {
|
|
235
|
+
if (error instanceof SyntaxError)
|
|
236
|
+
integrity();
|
|
237
|
+
throw error;
|
|
219
238
|
}
|
|
239
|
+
let canonical;
|
|
220
240
|
try {
|
|
221
|
-
|
|
241
|
+
canonical = canonicalJson(parsed);
|
|
222
242
|
}
|
|
223
243
|
catch (error) {
|
|
224
|
-
|
|
225
|
-
throw error;
|
|
226
|
-
integrity();
|
|
227
|
-
}
|
|
228
|
-
try {
|
|
229
|
-
return canonicalJson(parsed);
|
|
244
|
+
canonicalIntegrityFailure(error);
|
|
230
245
|
}
|
|
231
|
-
|
|
246
|
+
if (canonical !== value)
|
|
232
247
|
integrity();
|
|
233
|
-
|
|
248
|
+
validator(parsed);
|
|
249
|
+
return value;
|
|
234
250
|
}
|
|
235
251
|
function anyJson(value) {
|
|
236
252
|
try {
|
|
237
253
|
canonicalJson(value);
|
|
238
254
|
}
|
|
239
|
-
catch {
|
|
240
|
-
|
|
255
|
+
catch (error) {
|
|
256
|
+
canonicalIntegrityFailure(error);
|
|
241
257
|
}
|
|
242
258
|
}
|
|
243
259
|
function objectJson(value) {
|
|
@@ -304,13 +320,14 @@ function commentValue(value) {
|
|
|
304
320
|
return result;
|
|
305
321
|
}
|
|
306
322
|
function secretScan(record) {
|
|
307
|
-
let
|
|
323
|
+
let serialized;
|
|
308
324
|
try {
|
|
309
|
-
|
|
325
|
+
serialized = canonicalJson(record);
|
|
310
326
|
}
|
|
311
|
-
catch {
|
|
312
|
-
|
|
327
|
+
catch (error) {
|
|
328
|
+
canonicalIntegrityFailure(error);
|
|
313
329
|
}
|
|
330
|
+
const finding = findSecret(serialized);
|
|
314
331
|
if (finding)
|
|
315
332
|
fail('SECURITY_REJECTION', 'Ledger archive contains secret residue', { kind: finding.kind });
|
|
316
333
|
}
|
|
@@ -438,7 +455,10 @@ function normalizeRecord(type, source, workspace, importing) {
|
|
|
438
455
|
normalized.task_profile_hash = hashValue(raw.task_profile_hash);
|
|
439
456
|
normalized.query_hash = hashValue(raw.query_hash);
|
|
440
457
|
normalized.policy_version = stringValue(raw.policy_version, true, IDENTIFIER_MAX_LENGTH);
|
|
441
|
-
|
|
458
|
+
const scoreSchemaVersion = integerValue(raw.score_schema_version, 1);
|
|
459
|
+
if (scoreSchemaVersion !== 1 && scoreSchemaVersion !== 2)
|
|
460
|
+
integrity();
|
|
461
|
+
normalized.score_schema_version = scoreSchemaVersion;
|
|
442
462
|
normalized.char_budget = integerValue(raw.char_budget);
|
|
443
463
|
normalized.char_count = integerValue(raw.char_count);
|
|
444
464
|
const truncated = integerValue(raw.truncated);
|
|
@@ -456,7 +476,7 @@ function normalizeRecord(type, source, workspace, importing) {
|
|
|
456
476
|
normalized.rank = integerValue(raw.rank, 1);
|
|
457
477
|
normalized.score_components_json = parsedJson(raw.score_components_json, scoreJson);
|
|
458
478
|
normalized.selection_reason_json = parsedJson(raw.selection_reason_json, tagsJson);
|
|
459
|
-
normalized.origin_scope = enumValue(raw.origin_scope
|
|
479
|
+
normalized.origin_scope = enumValue(raw.origin_scope, new Set(['project', 'ecosystem', 'global']));
|
|
460
480
|
break;
|
|
461
481
|
case 'contextFeedback':
|
|
462
482
|
normalized.feedback_id = stringValue(raw.feedback_id, true, IDENTIFIER_MAX_LENGTH);
|
|
@@ -520,13 +540,14 @@ function rows(database, sql, ...parameters) {
|
|
|
520
540
|
try {
|
|
521
541
|
return database.prepare(sql).all(...parameters);
|
|
522
542
|
}
|
|
523
|
-
catch {
|
|
524
|
-
|
|
543
|
+
catch (error) {
|
|
544
|
+
if (isSqliteCorruptionError(error))
|
|
545
|
+
integrity();
|
|
546
|
+
throw error;
|
|
525
547
|
}
|
|
526
548
|
}
|
|
527
549
|
function queryRows(database, type, workspace) {
|
|
528
550
|
const fields = TABLE_FIELDS[type].join(', ');
|
|
529
|
-
const table = TABLE_NAMES[type];
|
|
530
551
|
const scoped = {
|
|
531
552
|
runs: { sql: `SELECT ${fields} FROM ledger_runs WHERE workspace = ? ORDER BY run_id ASC`, parameters: [workspace] },
|
|
532
553
|
sessions: { sql: `SELECT s.${TABLE_FIELDS.sessions.join(', s.')} FROM akinator_sessions AS s JOIN run_intakes AS ri ON ri.session_id = s.id JOIN ledger_runs AS lr ON lr.run_id = ri.run_id WHERE lr.workspace = ? ORDER BY s.id ASC`, parameters: [workspace] },
|
|
@@ -596,8 +617,10 @@ function parseLine(line, fields) {
|
|
|
596
617
|
try {
|
|
597
618
|
parsed = JSON.parse(line);
|
|
598
619
|
}
|
|
599
|
-
catch {
|
|
600
|
-
|
|
620
|
+
catch (error) {
|
|
621
|
+
if (error instanceof SyntaxError)
|
|
622
|
+
integrity();
|
|
623
|
+
throw error;
|
|
601
624
|
}
|
|
602
625
|
assertObject(parsed);
|
|
603
626
|
assertFields(parsed, fields);
|
|
@@ -605,8 +628,8 @@ function parseLine(line, fields) {
|
|
|
605
628
|
if (canonicalJson(parsed) !== line)
|
|
606
629
|
integrity();
|
|
607
630
|
}
|
|
608
|
-
catch {
|
|
609
|
-
|
|
631
|
+
catch (error) {
|
|
632
|
+
canonicalIntegrityFailure(error);
|
|
610
633
|
}
|
|
611
634
|
return parsed;
|
|
612
635
|
}
|
|
@@ -646,8 +669,10 @@ function parseArchive(content) {
|
|
|
646
669
|
try {
|
|
647
670
|
raw = JSON.parse(line);
|
|
648
671
|
}
|
|
649
|
-
catch {
|
|
650
|
-
|
|
672
|
+
catch (error) {
|
|
673
|
+
if (error instanceof SyntaxError)
|
|
674
|
+
integrity();
|
|
675
|
+
throw error;
|
|
651
676
|
}
|
|
652
677
|
assertObject(raw);
|
|
653
678
|
if (raw.type === 'manifest' || raw.type === 'checksum')
|
|
@@ -1028,10 +1053,23 @@ function compareExisting(database, type, record, workspace) {
|
|
|
1028
1053
|
return 'new';
|
|
1029
1054
|
}
|
|
1030
1055
|
function insertRecord(database, type, record) {
|
|
1031
|
-
const fields = TABLE_FIELDS[type];
|
|
1056
|
+
const fields = [...TABLE_FIELDS[type]];
|
|
1032
1057
|
const values = fields.map((field) => record[field]);
|
|
1058
|
+
if (type === 'deliveries') {
|
|
1059
|
+
fields.push('external_sync_summary_json');
|
|
1060
|
+
values.push('{}');
|
|
1061
|
+
}
|
|
1033
1062
|
const placeholders = fields.map(() => '?').join(', ');
|
|
1034
|
-
|
|
1063
|
+
try {
|
|
1064
|
+
database.prepare(`INSERT INTO ${TABLE_NAMES[type]} (${fields.join(', ')}) VALUES (${placeholders})`).run(...values);
|
|
1065
|
+
}
|
|
1066
|
+
catch (error) {
|
|
1067
|
+
if (isSqliteUniqueConstraintError(error, UNIQUE_CONSTRAINT_TARGETS[type]))
|
|
1068
|
+
conflict();
|
|
1069
|
+
if (isSqliteCorruptionError(error))
|
|
1070
|
+
integrity();
|
|
1071
|
+
throw error;
|
|
1072
|
+
}
|
|
1035
1073
|
}
|
|
1036
1074
|
function orderedForImport(records) {
|
|
1037
1075
|
const output = [];
|
|
@@ -1113,9 +1151,9 @@ export function importLedgerArchive(database, options) {
|
|
|
1113
1151
|
catch (error) {
|
|
1114
1152
|
if (error instanceof KiokukoError)
|
|
1115
1153
|
throw error;
|
|
1116
|
-
if (
|
|
1117
|
-
|
|
1118
|
-
|
|
1154
|
+
if (isSqliteCorruptionError(error))
|
|
1155
|
+
integrity();
|
|
1156
|
+
throw error;
|
|
1119
1157
|
}
|
|
1120
1158
|
return { workspace: parsed.workspace, dryRun: false, counts: parsed.counts, imported, duplicates, conflicts };
|
|
1121
1159
|
}
|