dsh-data-domain-knowledge 0.1.0-alpha.9 → 0.1.1-alpha.2
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.md +118 -567
- package/cordis.patch.yml +5 -418
- package/eval/README.md +19 -8
- package/eval/benchmark-extraction-format.mjs +20 -0
- package/eval/evaluate-retrieval.mjs +17 -8
- package/eval/queries.example.jsonl +1 -0
- package/lib/client.js +4181 -3239
- package/lib/contract-envelope.d.ts +91 -0
- package/lib/contract-envelope.js +106 -0
- package/lib/contract-layout.d.ts +130 -0
- package/lib/contract-layout.js +138 -0
- package/lib/contract-refs.d.ts +39 -0
- package/lib/contract-refs.js +9 -0
- package/lib/contract-version.d.ts +311 -0
- package/lib/contract-version.js +270 -0
- package/lib/contract-wire.d.ts +147 -0
- package/lib/contract-wire.js +99 -0
- package/lib/contracts.d.ts +12 -0
- package/lib/contracts.js +12 -0
- package/lib/doc-page.js +2 -2
- package/lib/pages.js +3329 -1296
- package/lib/types/agent-behavior-rules.d.ts +10 -0
- package/lib/types/agent-behavior-rules.d.ts.map +1 -0
- package/lib/types/agent-behavior-rules.js +28 -0
- package/lib/types/agent-behavior-rules.js.map +1 -0
- package/lib/types/axis-registry.d.ts +37 -5
- package/lib/types/axis-registry.d.ts.map +1 -1
- package/lib/types/axis-registry.js +234 -26
- package/lib/types/axis-registry.js.map +1 -1
- package/lib/types/card-organize.d.ts +27 -12
- package/lib/types/card-organize.d.ts.map +1 -1
- package/lib/types/card-organize.js +58 -73
- package/lib/types/card-organize.js.map +1 -1
- package/lib/types/compiler/embedding-identity.d.ts +3 -0
- package/lib/types/compiler/embedding-identity.d.ts.map +1 -0
- package/lib/types/compiler/embedding-identity.js +24 -0
- package/lib/types/compiler/embedding-identity.js.map +1 -0
- package/lib/types/compiler/snapshot.d.ts +16 -0
- package/lib/types/compiler/snapshot.d.ts.map +1 -0
- package/lib/types/compiler/snapshot.js +2 -0
- package/lib/types/compiler/snapshot.js.map +1 -0
- package/lib/types/config-schema.d.ts +6 -3
- package/lib/types/config-schema.d.ts.map +1 -1
- package/lib/types/config-schema.js +6 -2
- package/lib/types/config-schema.js.map +1 -1
- package/lib/types/convert/host.d.ts +6 -5
- package/lib/types/convert/host.d.ts.map +1 -1
- package/lib/types/convert/host.js +58 -18
- package/lib/types/convert/host.js.map +1 -1
- package/lib/types/convert/ingest.d.ts +10 -1
- package/lib/types/convert/ingest.d.ts.map +1 -1
- package/lib/types/convert/ingest.js +68 -9
- package/lib/types/convert/ingest.js.map +1 -1
- package/lib/types/derive-contract.d.ts +3 -0
- package/lib/types/derive-contract.d.ts.map +1 -0
- package/lib/types/derive-contract.js +15 -0
- package/lib/types/derive-contract.js.map +1 -0
- package/lib/types/diagnosis/cards.d.ts +7 -3
- package/lib/types/diagnosis/cards.d.ts.map +1 -1
- package/lib/types/diagnosis/cards.js +13 -8
- package/lib/types/diagnosis/cards.js.map +1 -1
- package/lib/types/diagnosis/run.d.ts +4 -13
- package/lib/types/diagnosis/run.d.ts.map +1 -1
- package/lib/types/diagnosis/run.js +26 -16
- package/lib/types/diagnosis/run.js.map +1 -1
- package/lib/types/diagnosis/schema.js +2 -2
- package/lib/types/diagnosis/schema.js.map +1 -1
- package/lib/types/diagnosis/seed-source.d.ts +1 -1
- package/lib/types/diagnosis/seed-source.d.ts.map +1 -1
- package/lib/types/diagnosis/seed-source.js +5 -4
- package/lib/types/diagnosis/seed-source.js.map +1 -1
- package/lib/types/diagnosis/seed.d.ts +4 -4
- package/lib/types/diagnosis/seed.d.ts.map +1 -1
- package/lib/types/diagnosis/seed.js +6 -8
- package/lib/types/diagnosis/seed.js.map +1 -1
- package/lib/types/diagnosis/store.d.ts +24 -18
- package/lib/types/diagnosis/store.d.ts.map +1 -1
- package/lib/types/diagnosis/store.js +130 -65
- package/lib/types/diagnosis/store.js.map +1 -1
- package/lib/types/diagnosis/types.d.ts +47 -15
- package/lib/types/diagnosis/types.d.ts.map +1 -1
- package/lib/types/diagnosis/types.js.map +1 -1
- package/lib/types/environment/dsh-python.d.ts +77 -0
- package/lib/types/environment/dsh-python.d.ts.map +1 -0
- package/lib/types/environment/dsh-python.js +139 -0
- package/lib/types/environment/dsh-python.js.map +1 -0
- package/lib/types/environment/install.d.ts +15 -0
- package/lib/types/environment/install.d.ts.map +1 -0
- package/lib/types/environment/install.js +297 -0
- package/lib/types/environment/install.js.map +1 -0
- package/lib/types/environment/manifest.d.ts +208 -0
- package/lib/types/environment/manifest.d.ts.map +1 -0
- package/lib/types/environment/manifest.js +26 -0
- package/lib/types/environment/manifest.js.map +1 -0
- package/lib/types/environment/model-catalog.d.ts +223 -0
- package/lib/types/environment/model-catalog.d.ts.map +1 -0
- package/lib/types/environment/model-catalog.js +129 -0
- package/lib/types/environment/model-catalog.js.map +1 -0
- package/lib/types/environment/process.d.ts +10 -0
- package/lib/types/environment/process.d.ts.map +1 -0
- package/lib/types/environment/process.js +54 -0
- package/lib/types/environment/process.js.map +1 -0
- package/lib/types/environment/selection.d.ts +9 -0
- package/lib/types/environment/selection.d.ts.map +1 -0
- package/lib/types/environment/selection.js +29 -0
- package/lib/types/environment/selection.js.map +1 -0
- package/lib/types/environment/service.d.ts +64 -0
- package/lib/types/environment/service.d.ts.map +1 -0
- package/lib/types/environment/service.js +424 -0
- package/lib/types/environment/service.js.map +1 -0
- package/lib/types/environment/types.d.ts +56 -0
- package/lib/types/environment/types.d.ts.map +1 -0
- package/lib/types/environment/types.js +2 -0
- package/lib/types/environment/types.js.map +1 -0
- package/lib/types/events.d.ts +76 -0
- package/lib/types/events.d.ts.map +1 -0
- package/lib/types/events.js +52 -0
- package/lib/types/events.js.map +1 -0
- package/lib/types/extract-contract.d.ts +3 -0
- package/lib/types/extract-contract.d.ts.map +1 -0
- package/lib/types/extract-contract.js +41 -0
- package/lib/types/extract-contract.js.map +1 -0
- package/lib/types/extract-model.d.ts +5 -0
- package/lib/types/extract-model.d.ts.map +1 -1
- package/lib/types/extract-model.js.map +1 -1
- package/lib/types/extract-table-contract.d.ts +3 -0
- package/lib/types/extract-table-contract.d.ts.map +1 -0
- package/lib/types/extract-table-contract.js +27 -0
- package/lib/types/extract-table-contract.js.map +1 -0
- package/lib/types/extract-table.d.ts +8 -0
- package/lib/types/extract-table.d.ts.map +1 -0
- package/lib/types/extract-table.js +158 -0
- package/lib/types/extract-table.js.map +1 -0
- package/lib/types/extraction-runs.d.ts +30 -6
- package/lib/types/extraction-runs.d.ts.map +1 -1
- package/lib/types/extraction-runs.js +69 -8
- package/lib/types/extraction-runs.js.map +1 -1
- package/lib/types/fs-atomic.d.ts +0 -7
- package/lib/types/fs-atomic.d.ts.map +1 -1
- package/lib/types/fs-atomic.js +17 -2
- package/lib/types/fs-atomic.js.map +1 -1
- package/lib/types/images.d.ts +26 -0
- package/lib/types/images.d.ts.map +1 -0
- package/lib/types/images.js +196 -0
- package/lib/types/images.js.map +1 -0
- package/lib/types/index.d.ts +2 -2
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/index.js +598 -209
- package/lib/types/index.js.map +1 -1
- package/lib/types/intent/engine.d.ts +12 -4
- package/lib/types/intent/engine.d.ts.map +1 -1
- package/lib/types/intent/engine.js +43 -5
- package/lib/types/intent/engine.js.map +1 -1
- package/lib/types/intent/host.d.ts +5 -8
- package/lib/types/intent/host.d.ts.map +1 -1
- package/lib/types/intent/host.js +56 -11
- package/lib/types/intent/host.js.map +1 -1
- package/lib/types/intent/scope.d.ts +25 -0
- package/lib/types/intent/scope.d.ts.map +1 -0
- package/lib/types/intent/scope.js +116 -0
- package/lib/types/intent/scope.js.map +1 -0
- package/lib/types/intent/tools.d.ts +24 -20
- package/lib/types/intent/tools.d.ts.map +1 -1
- package/lib/types/intent/tools.js +65 -23
- package/lib/types/intent/tools.js.map +1 -1
- package/lib/types/intent/types.d.ts +11 -4
- package/lib/types/intent/types.d.ts.map +1 -1
- package/lib/types/knowledge-bases.d.ts +11 -5
- package/lib/types/knowledge-bases.d.ts.map +1 -1
- package/lib/types/knowledge-bases.js +52 -20
- package/lib/types/knowledge-bases.js.map +1 -1
- package/lib/types/knowledge-contract.d.ts +32 -0
- package/lib/types/knowledge-contract.d.ts.map +1 -0
- package/lib/types/knowledge-contract.js +116 -0
- package/lib/types/knowledge-contract.js.map +1 -0
- package/lib/types/knowledge.d.ts +31 -9
- package/lib/types/knowledge.d.ts.map +1 -1
- package/lib/types/knowledge.js +137 -60
- package/lib/types/knowledge.js.map +1 -1
- package/lib/types/layout.d.ts +10 -29
- package/lib/types/layout.d.ts.map +1 -1
- package/lib/types/layout.js +17 -36
- package/lib/types/layout.js.map +1 -1
- package/lib/types/materialize-snapshot.d.ts +49 -0
- package/lib/types/materialize-snapshot.d.ts.map +1 -0
- package/lib/types/materialize-snapshot.js +2 -0
- package/lib/types/materialize-snapshot.js.map +1 -0
- package/lib/types/migrate.d.ts +11 -0
- package/lib/types/migrate.d.ts.map +1 -1
- package/lib/types/migrate.js +83 -2
- package/lib/types/migrate.js.map +1 -1
- package/lib/types/model-text.d.ts +58 -1
- package/lib/types/model-text.d.ts.map +1 -1
- package/lib/types/model-text.js +85 -30
- package/lib/types/model-text.js.map +1 -1
- package/lib/types/oplog.d.ts.map +1 -1
- package/lib/types/oplog.js +7 -0
- package/lib/types/oplog.js.map +1 -1
- package/lib/types/organize-contract.d.ts +18 -0
- package/lib/types/organize-contract.d.ts.map +1 -0
- package/lib/types/organize-contract.js +82 -0
- package/lib/types/organize-contract.js.map +1 -0
- package/lib/types/pipeline/engine.d.ts +66 -0
- package/lib/types/pipeline/engine.d.ts.map +1 -0
- package/lib/types/pipeline/engine.js +352 -0
- package/lib/types/pipeline/engine.js.map +1 -0
- package/lib/types/pipeline/store.d.ts +73 -0
- package/lib/types/pipeline/store.d.ts.map +1 -0
- package/lib/types/pipeline/store.js +143 -0
- package/lib/types/pipeline/store.js.map +1 -0
- package/lib/types/pipeline/types.d.ts +102 -0
- package/lib/types/pipeline/types.d.ts.map +1 -0
- package/lib/types/pipeline/types.js +5 -0
- package/lib/types/pipeline/types.js.map +1 -0
- package/lib/types/present.d.ts +2 -0
- package/lib/types/present.d.ts.map +1 -1
- package/lib/types/present.js +9 -4
- package/lib/types/present.js.map +1 -1
- package/lib/types/preset-ids.d.ts +4 -0
- package/lib/types/preset-ids.d.ts.map +1 -0
- package/lib/types/preset-ids.js +6 -0
- package/lib/types/preset-ids.js.map +1 -0
- package/lib/types/query-analysis.d.ts +13 -1
- package/lib/types/query-analysis.d.ts.map +1 -1
- package/lib/types/query-analysis.js +62 -6
- package/lib/types/query-analysis.js.map +1 -1
- package/lib/types/recall-rank.d.ts +3 -3
- package/lib/types/recall-rank.d.ts.map +1 -1
- package/lib/types/recall-rank.js +4 -4
- package/lib/types/recall-rank.js.map +1 -1
- package/lib/types/retention.d.ts +39 -0
- package/lib/types/retention.d.ts.map +1 -0
- package/lib/types/retention.js +42 -0
- package/lib/types/retention.js.map +1 -0
- package/lib/types/retrieval/vector-index.d.ts +32 -0
- package/lib/types/retrieval/vector-index.d.ts.map +1 -0
- package/lib/types/retrieval/vector-index.js +15 -0
- package/lib/types/retrieval/vector-index.js.map +1 -0
- package/lib/types/retrieval/visibility.d.ts +6 -0
- package/lib/types/retrieval/visibility.d.ts.map +1 -0
- package/lib/types/retrieval/visibility.js +11 -0
- package/lib/types/retrieval/visibility.js.map +1 -0
- package/lib/types/runtime.d.ts +272 -27
- package/lib/types/runtime.d.ts.map +1 -1
- package/lib/types/runtime.js +2751 -537
- package/lib/types/runtime.js.map +1 -1
- package/lib/types/settings-schema.d.ts +17 -15
- package/lib/types/settings-schema.d.ts.map +1 -1
- package/lib/types/settings-schema.js +50 -47
- package/lib/types/settings-schema.js.map +1 -1
- package/lib/types/settings-volatile.d.ts +4 -4
- package/lib/types/settings-volatile.js +4 -4
- package/lib/types/source-evidence.d.ts +14 -0
- package/lib/types/source-evidence.d.ts.map +1 -0
- package/lib/types/source-evidence.js +36 -0
- package/lib/types/source-evidence.js.map +1 -0
- package/lib/types/store/axis-references.d.ts +5 -0
- package/lib/types/store/axis-references.d.ts.map +1 -0
- package/lib/types/store/axis-references.js +106 -0
- package/lib/types/store/axis-references.js.map +1 -0
- package/lib/types/store/derived.d.ts +12 -1
- package/lib/types/store/derived.d.ts.map +1 -1
- package/lib/types/store/derived.js +71 -12
- package/lib/types/store/derived.js.map +1 -1
- package/lib/types/store/knowledge-db.d.ts +31 -1
- package/lib/types/store/knowledge-db.d.ts.map +1 -1
- package/lib/types/store/knowledge-db.js +252 -18
- package/lib/types/store/knowledge-db.js.map +1 -1
- package/lib/types/store/migrate.d.ts.map +1 -1
- package/lib/types/store/migrate.js +17 -6
- package/lib/types/store/migrate.js.map +1 -1
- package/lib/types/trajectory-types.d.ts +172 -0
- package/lib/types/trajectory-types.d.ts.map +1 -0
- package/lib/types/trajectory-types.js +36 -0
- package/lib/types/trajectory-types.js.map +1 -0
- package/lib/types/types.d.ts +59 -27
- package/lib/types/types.d.ts.map +1 -1
- package/lib/types/types.js +6 -15
- package/lib/types/types.js.map +1 -1
- package/lib/types/wiki-finalize.d.ts +16 -0
- package/lib/types/wiki-finalize.d.ts.map +1 -1
- package/lib/types/wiki-finalize.js +26 -0
- package/lib/types/wiki-finalize.js.map +1 -1
- package/lib/types/wiki-materialize.d.ts +4 -0
- package/lib/types/wiki-materialize.d.ts.map +1 -1
- package/lib/types/wiki-materialize.js +21 -7
- package/lib/types/wiki-materialize.js.map +1 -1
- package/lib/types/wiki-trial-types.d.ts +87 -0
- package/lib/types/wiki-trial-types.d.ts.map +1 -1
- package/lib/types/wiki-trial-types.js +0 -16
- package/lib/types/wiki-trial-types.js.map +1 -1
- package/lib/types/wiki-trial.d.ts +40 -16
- package/lib/types/wiki-trial.d.ts.map +1 -1
- package/lib/types/wiki-trial.js +337 -224
- package/lib/types/wiki-trial.js.map +1 -1
- package/package.json +29 -20
- package/python/prepare-models.py +19 -0
- package/python/requirements.txt +8 -6
- package/scripts/doctor.mjs +13 -19
- package/scripts/environment.mjs +29 -0
- package/scripts/setup-embedding.sh +15 -5
- package/src/agent-behavior-rules.ts +37 -0
- package/src/axis-registry.ts +234 -27
- package/src/card-organize.ts +69 -75
- package/src/client/AgentBehaviorRulesCard.tsx +65 -0
- package/src/client/AttributionEventGuide.tsx +41 -39
- package/src/client/AxisRegistrySection.tsx +204 -164
- package/src/client/CompileDialogs.tsx +44 -29
- package/src/client/DeleteDocumentDialog.tsx +36 -5
- package/src/client/DirectoryPicker.tsx +0 -10
- package/src/client/EnvironmentSetup.tsx +243 -0
- package/src/client/ExpansionGraph.tsx +13 -7
- package/src/client/ExtractionTasksPage.tsx +578 -0
- package/src/client/GuideArchitectureCanvas.tsx +470 -0
- package/src/client/ImportFilesDialog.tsx +2 -13
- package/src/client/IntentLogic.tsx +2 -2
- package/src/client/IntentTab.tsx +118 -47
- package/src/client/KnowledgeBaseTab.tsx +277 -197
- package/src/client/KnowledgeLayerSection.tsx +24 -6
- package/src/client/KnowledgePanel.tsx +58 -93
- package/src/client/KnowledgeSettingsDrawer.tsx +90 -0
- package/src/client/ListPager.tsx +15 -5
- package/src/client/MaterializeTrajectoryView.tsx +124 -0
- package/src/client/NodeSettings.tsx +210 -89
- package/src/client/NormalizeTrajectoryView.tsx +136 -0
- package/src/client/PipelineNotice.tsx +26 -0
- package/src/client/PreviewSections.tsx +118 -51
- package/src/client/RecallPanel.tsx +89 -85
- package/src/client/TabGuide.tsx +159 -184
- package/src/client/TrialReportView.tsx +391 -214
- package/src/client/TypeDefinitionDrawer.tsx +150 -23
- package/src/client/WikiCardPreview.tsx +62 -16
- package/src/client/WikiFlowPanel.tsx +4 -4
- package/src/client/arch/NodeLogicPanel.tsx +3 -4
- package/src/client/arch/model.ts +6 -9
- package/src/client/architecture.tsx +23 -33
- package/src/client/attribution/AttributionGraph.tsx +10 -6
- package/src/client/attribution/AttributionTab.tsx +136 -84
- package/src/client/attribution/CaseView.tsx +3 -1
- package/src/client/attribution/EventView.tsx +108 -0
- package/src/client/attribution/RunView.tsx +2 -2
- package/src/client/attribution/StageChrome.tsx +34 -3
- package/src/client/attribution/ViewSwitch.tsx +20 -5
- package/src/client/attribution/graph-options.ts +47 -39
- package/src/client/attribution/model.ts +17 -10
- package/src/client/config-scope.ts +3 -3
- package/src/client/graph/palette.ts +165 -0
- package/src/client/index.ts +49 -42
- package/src/client/pages.css +459 -135
- package/src/client/pages.tsx +37 -9
- package/src/client/problem-domains.ts +1 -1
- package/src/client/session-remote.ts +9 -0
- package/src/client/styles.css +205 -62
- package/src/client/wiki-trial.ts +44 -3
- package/src/compiler/embedding-identity.ts +21 -0
- package/src/compiler/snapshot.ts +17 -0
- package/src/config-schema.ts +8 -3
- package/src/convert/host.ts +56 -21
- package/src/convert/ingest.ts +74 -10
- package/src/derive-contract.ts +14 -0
- package/src/diagnosis/cards.ts +13 -8
- package/src/diagnosis/run.ts +27 -17
- package/src/diagnosis/schema.ts +2 -2
- package/src/diagnosis/seed-source.ts +5 -4
- package/src/diagnosis/seed.ts +6 -8
- package/src/diagnosis/store.ts +138 -69
- package/src/diagnosis/types.ts +34 -15
- package/src/environment/dsh-python.ts +156 -0
- package/src/environment/install.ts +244 -0
- package/src/environment/manifest.ts +28 -0
- package/src/environment/model-catalog.ts +147 -0
- package/src/environment/process.ts +54 -0
- package/src/environment/selection.ts +29 -0
- package/src/environment/service.ts +348 -0
- package/src/environment/types.ts +45 -0
- package/src/events.ts +108 -0
- package/src/extract-contract.ts +42 -0
- package/src/extract-model.ts +10 -1
- package/src/extract-table-contract.ts +26 -0
- package/src/extract-table.ts +132 -0
- package/src/extraction-runs.ts +70 -11
- package/src/fs-atomic.ts +19 -2
- package/src/images.ts +203 -0
- package/src/index.ts +553 -205
- package/src/intent/README.md +8 -6
- package/src/intent/engine.ts +44 -6
- package/src/intent/host.ts +59 -18
- package/src/intent/scope.ts +125 -0
- package/src/intent/tools.ts +70 -28
- package/src/intent/types.ts +11 -4
- package/src/knowledge-bases.ts +56 -20
- package/src/knowledge-contract.ts +114 -0
- package/src/knowledge.ts +138 -69
- package/src/layout.ts +17 -37
- package/src/materialize-snapshot.ts +46 -0
- package/src/migrate.ts +75 -2
- package/src/model-text.ts +109 -4
- package/src/oplog.ts +7 -0
- package/src/organize-contract.ts +83 -0
- package/src/pipeline/engine.ts +323 -0
- package/src/pipeline/store.ts +147 -0
- package/src/pipeline/types.ts +93 -0
- package/src/present.ts +10 -4
- package/src/preset-ids.ts +6 -0
- package/src/python/embedding_worker.py +66 -2
- package/src/query-analysis.ts +68 -8
- package/src/recall-rank.ts +5 -5
- package/src/retention.ts +76 -0
- package/src/retrieval/vector-index.ts +45 -0
- package/src/retrieval/visibility.ts +14 -0
- package/src/runtime.ts +2708 -567
- package/src/settings-schema.ts +11 -8
- package/src/settings-volatile.ts +4 -4
- package/src/source-evidence.ts +37 -0
- package/src/store/axis-references.ts +96 -0
- package/src/store/derived.ts +70 -12
- package/src/store/knowledge-db.ts +248 -17
- package/src/store/migrate.ts +16 -6
- package/src/trajectory-types.ts +142 -0
- package/src/types.ts +61 -35
- package/src/wiki-finalize.ts +28 -0
- package/src/wiki-materialize.ts +25 -6
- package/src/wiki-trial-types.ts +83 -1
- package/src/wiki-trial.ts +357 -185
- package/lib/types/intent/preset-tools.d.ts +0 -37
- package/lib/types/intent/preset-tools.d.ts.map +0 -1
- package/lib/types/intent/preset-tools.js +0 -45
- package/lib/types/intent/preset-tools.js.map +0 -1
- package/preset/tita-data-agent/agent.cordis.yml +0 -394
- package/preset/tita-data-agent/preset.yml +0 -3
- package/scripts/install-agent-preset.mjs +0 -92
- package/scripts/sync-agent-preset.mjs +0 -188
- package/src/client/AgentPresetCard.tsx +0 -247
- package/src/client/agent-preset.ts +0 -121
- package/src/client/convert/ConvertPanel.tsx +0 -583
- package/src/client/convert/styles.css +0 -138
- package/src/client/convert/styles.ts +0 -49
- package/src/intent/preset-tools.ts +0 -48
|
@@ -123,19 +123,37 @@ export class DerivedDb {
|
|
|
123
123
|
return { ok: false, code: 'OPEN_FAILED', message: `打开失败:${cause instanceof Error ? cause.message : String(cause)}` };
|
|
124
124
|
}
|
|
125
125
|
try {
|
|
126
|
-
db.exec('PRAGMA journal_mode = WAL');
|
|
127
126
|
const owner = readPragma(db, 'application_id');
|
|
128
127
|
const version = readPragma(db, 'user_version');
|
|
129
|
-
|
|
128
|
+
/**
|
|
129
|
+
* 属主标记为 0 = 这份文件从来没有被我们的初始化**写完过**。两种来源都要按「无主」处理:
|
|
130
|
+
*
|
|
131
|
+
* 1. 全新/空的文件(一张表都没有);
|
|
132
|
+
* 2. `schemaSql()` 已经建好表、`PRAGMA application_id` 还没写就被杀掉的那一次
|
|
133
|
+
* (崩溃、kill、磁盘满)。第二种原来会落到下面的「属主不对」分支,返回
|
|
134
|
+
* `NOT_A_DERIVED_DB` —— 而 `derivedHandle()` 会把这个结论缓存住,于是编译与召回
|
|
135
|
+
* **永久**失败,尽管这个文件按定义是可重建的。
|
|
136
|
+
*
|
|
137
|
+
* 但不能因此误伤别人的库:只有「文件里所有表都是我们自己建的」才认领重建,
|
|
138
|
+
* 出现陌生表就仍然拒绝打开(认错库比打不开糟)。
|
|
139
|
+
*/
|
|
140
|
+
const tables = userTables(db);
|
|
141
|
+
const foreign = tables.filter(name => !['artifact', 'vector_index', 'fts'].includes(name));
|
|
142
|
+
if (owner === 0 && foreign.length === 0) {
|
|
143
|
+
db.exec('DROP TABLE IF EXISTS fts');
|
|
144
|
+
db.exec('DROP TABLE IF EXISTS artifact');
|
|
145
|
+
db.exec('DROP TABLE IF EXISTS vector_index');
|
|
146
|
+
db.exec('PRAGMA journal_mode = WAL');
|
|
130
147
|
db.exec(schemaSql());
|
|
131
148
|
db.exec(`PRAGMA application_id = ${DERIVED_DB_APPLICATION_ID}`);
|
|
132
149
|
db.exec(`PRAGMA user_version = ${DERIVED_DB_SCHEMA}`);
|
|
133
|
-
return { ok: true, db: new DerivedDb(db, file), rebuilt:
|
|
150
|
+
return { ok: true, db: new DerivedDb(db, file), rebuilt: tables.length > 0 };
|
|
134
151
|
}
|
|
135
152
|
if (owner !== DERIVED_DB_APPLICATION_ID) {
|
|
136
153
|
db.close();
|
|
137
154
|
return { ok: false, code: 'NOT_A_DERIVED_DB', message: `这个文件不是知识库的派生库(属主标记 ${owner}):${file}` };
|
|
138
155
|
}
|
|
156
|
+
db.exec('PRAGMA journal_mode = WAL');
|
|
139
157
|
if (version !== DERIVED_DB_SCHEMA) {
|
|
140
158
|
// 整体重建。**没有迁移分支是刻意的**(见模块头)。
|
|
141
159
|
db.exec('DROP TABLE IF EXISTS fts');
|
|
@@ -180,6 +198,30 @@ export class DerivedDb {
|
|
|
180
198
|
this.raw('INSERT OR REPLACE INTO artifact(name, body, hash, bytes, at) VALUES (?, ?, ?, ?, ?)')
|
|
181
199
|
.run(name, body, hashOf(body), Buffer.byteLength(body, 'utf8'), new Date().toISOString());
|
|
182
200
|
}
|
|
201
|
+
/** Model calls finish before this short transaction starts. */
|
|
202
|
+
publish(publication) {
|
|
203
|
+
this.db.exec('BEGIN IMMEDIATE');
|
|
204
|
+
try {
|
|
205
|
+
for (const [name, body] of publication.artifacts)
|
|
206
|
+
this.putArtifact(name, body);
|
|
207
|
+
if (publication.fts !== undefined)
|
|
208
|
+
this.rebuildFts(publication.fts);
|
|
209
|
+
if (publication.vectors === null)
|
|
210
|
+
this.raw('DELETE FROM vector_index').run();
|
|
211
|
+
else if (publication.vectors !== undefined) {
|
|
212
|
+
const { manifest, binary, int8 } = publication.vectors;
|
|
213
|
+
this.putVectorIndex(manifest, binary, int8);
|
|
214
|
+
}
|
|
215
|
+
this.db.exec('COMMIT');
|
|
216
|
+
}
|
|
217
|
+
catch (cause) {
|
|
218
|
+
try {
|
|
219
|
+
this.db.exec('ROLLBACK');
|
|
220
|
+
}
|
|
221
|
+
catch { /* preserve the original failure */ }
|
|
222
|
+
throw cause;
|
|
223
|
+
}
|
|
224
|
+
}
|
|
183
225
|
removeArtifact(name) {
|
|
184
226
|
this.raw('DELETE FROM artifact WHERE name = ?').run(name);
|
|
185
227
|
}
|
|
@@ -215,14 +257,14 @@ export class DerivedDb {
|
|
|
215
257
|
*/
|
|
216
258
|
rebuildFts(documents) {
|
|
217
259
|
/*
|
|
218
|
-
* `
|
|
260
|
+
* `SAVEPOINT` 在 DDL **之前**:SQLite 的 DDL 是事务性的(实测 `CREATE VIRTUAL TABLE` 与它
|
|
219
261
|
* 的 shadow 表一起回滚),而放在事务外就变成自动提交 —— 于是构建中途失败会留下一张
|
|
220
262
|
* **空的** `fts` 表,`hasFts()` 还说它在,查询却一条也回不来。
|
|
221
263
|
*
|
|
222
264
|
* 放进同一个事务之后的实际行为:**上一版索引原样留着**(还能查),或者(本来就还没有
|
|
223
265
|
* 索引时)仍然没有索引。两种都比「空表」好 —— 空表是一种既不报错也不可用的状态。
|
|
224
266
|
*/
|
|
225
|
-
this.db.exec('
|
|
267
|
+
this.db.exec('SAVEPOINT rebuild_fts');
|
|
226
268
|
try {
|
|
227
269
|
this.db.exec('DROP TABLE IF EXISTS fts');
|
|
228
270
|
this.db.exec(ftsSql());
|
|
@@ -232,11 +274,11 @@ export class DerivedDb {
|
|
|
232
274
|
const tokens = [...segment(document.title), ...segment(document.title), ...segment(document.content)];
|
|
233
275
|
insert.run(document.unitId, tokens.join(' '));
|
|
234
276
|
}
|
|
235
|
-
this.db.exec('
|
|
277
|
+
this.db.exec('RELEASE rebuild_fts');
|
|
236
278
|
}
|
|
237
279
|
catch (cause) {
|
|
238
280
|
try {
|
|
239
|
-
this.db.exec('ROLLBACK');
|
|
281
|
+
this.db.exec('ROLLBACK TO rebuild_fts; RELEASE rebuild_fts');
|
|
240
282
|
}
|
|
241
283
|
catch { /* rollback of a dead tx */ }
|
|
242
284
|
throw cause;
|
|
@@ -255,12 +297,20 @@ export class DerivedDb {
|
|
|
255
297
|
* 查询语法错误或索引损坏时**返回空数组而不抛**:关键词路是三条召回路线之一,
|
|
256
298
|
* 它挂了不该把整次召回带走 —— 调用方在诊断里如实说明这一路没结果。
|
|
257
299
|
*/
|
|
258
|
-
searchFts(query, limit) {
|
|
300
|
+
searchFts(query, limit, eligible) {
|
|
259
301
|
const expression = matchExpression(query);
|
|
260
302
|
if (expression === null || !this.hasFts())
|
|
261
303
|
return [];
|
|
262
304
|
try {
|
|
263
|
-
|
|
305
|
+
/*
|
|
306
|
+
* `eligible` 必须进 SQL。先 LIMIT 再在 JS 里过滤,会让已删除/停用卡片的死
|
|
307
|
+
* unitId 占满候选窗口(索引只在编译时重建,删除不会立刻反映到 fts 表)。
|
|
308
|
+
* 用 `json_each` 传一个 JSON 数组而不是拼参数列表:一个绑定参数,不受
|
|
309
|
+
* SQLITE_MAX_VARIABLE_NUMBER 限制。
|
|
310
|
+
*/
|
|
311
|
+
const rows = (eligible === undefined
|
|
312
|
+
? this.raw('SELECT unit_id, bm25(fts) AS rank FROM fts WHERE fts MATCH ? ORDER BY rank LIMIT ?').all(expression, limit)
|
|
313
|
+
: this.raw('SELECT unit_id, bm25(fts) AS rank FROM fts WHERE fts MATCH ? AND unit_id IN (SELECT value FROM json_each(?)) ORDER BY rank LIMIT ?').all(expression, JSON.stringify([...eligible]), limit));
|
|
264
314
|
const parsed = rows
|
|
265
315
|
.map(row => ({ unitId: String(row.unit_id ?? ''), raw: Number(row.rank ?? 0) }))
|
|
266
316
|
.filter(row => row.unitId !== '' && Number.isFinite(row.raw));
|
|
@@ -272,6 +322,15 @@ export class DerivedDb {
|
|
|
272
322
|
return parsed.map(row => ({ ...row, score: Math.max(0, Math.min(1, -row.raw / scale)) }));
|
|
273
323
|
}
|
|
274
324
|
catch {
|
|
325
|
+
/**
|
|
326
|
+
* `json_each` 不可用(SQLite 没编 JSON)或索引损坏时,**不能直接返回空**。
|
|
327
|
+
*
|
|
328
|
+
* 空数组会被上游读成「这一路没命中」,而实际是「这一路坏了」—— 正是这次要消灭的
|
|
329
|
+
* 那种静默降级。退回不带资格过滤的两参数查询:结果仍然正确(调用方还会过滤一遍),
|
|
330
|
+
* 只是候选窗口可能被已删除的条目占掉。真的连那条也失败,才认「没有结果」。
|
|
331
|
+
*/
|
|
332
|
+
if (eligible !== undefined)
|
|
333
|
+
return this.searchFts(query, limit);
|
|
275
334
|
return [];
|
|
276
335
|
}
|
|
277
336
|
}
|
|
@@ -288,8 +347,8 @@ function readPragma(db, name) {
|
|
|
288
347
|
const first = row === undefined ? undefined : Object.values(row)[0];
|
|
289
348
|
return typeof first === 'number' ? first : Number(first ?? 0);
|
|
290
349
|
}
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
return
|
|
350
|
+
/** 文件里现有的表名。用来判断「这份文件是不是我们建的」。 */
|
|
351
|
+
function userTables(db) {
|
|
352
|
+
return db.prepare("SELECT name FROM sqlite_master WHERE type = 'table' AND name NOT LIKE 'sqlite_%'").all().map(row => String(row.name ?? ''));
|
|
294
353
|
}
|
|
295
354
|
//# sourceMappingURL=derived.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"derived.js","sourceRoot":"","sources":["../../../src/store/derived.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAE9C,mDAAmD;AACnD,OAAO,EAAE,eAAe,EAAE,CAAA;AAE1B;;;;;GAKG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,UAAU,CAAA;AAEnD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"derived.js","sourceRoot":"","sources":["../../../src/store/derived.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,6 +29,7 @@
|
|
|
29
29
|
import type { SqliteDatabase, SqliteStatement } from '../fts.js';
|
|
30
30
|
import { KNOWLEDGE_DB_FILE } from '../layout.js';
|
|
31
31
|
import { type KnowledgeCard, type SourceRaw } from '../types.js';
|
|
32
|
+
import type { EventEntity } from '../events.js';
|
|
32
33
|
/** 知识库里那个文件的名字。定义在 `layout.ts`(布局的唯一真源),这里只是本模块的别名。 */
|
|
33
34
|
export { KNOWLEDGE_DB_FILE };
|
|
34
35
|
/**
|
|
@@ -208,7 +209,7 @@ export declare class KnowledgeTx {
|
|
|
208
209
|
* 会把「只改备注」「只补图」那几条路径变成一次静默的关联丢失 —— 它们本来就不该
|
|
209
210
|
* 碰落位(那件事只有编译知道)。
|
|
210
211
|
*/
|
|
211
|
-
putCard(card: KnowledgeCard, frontmatter: Record<string, unknown>, journal: Journal, placements?: CardKnowledgeRow[]): WriteOutcome;
|
|
212
|
+
putCard(card: KnowledgeCard, frontmatter: Record<string, unknown>, journal: Journal, placements?: CardKnowledgeRow[], allowCoordinateMove?: boolean): WriteOutcome;
|
|
212
213
|
/**
|
|
213
214
|
* 重写一张卡的知识落位(0069)。**整块替换**:它可以从抽取轨迹整体重算,逐条对齐
|
|
214
215
|
* 只会多出一套「哪条该留」的判据。
|
|
@@ -237,6 +238,9 @@ export declare class KnowledgeTx {
|
|
|
237
238
|
export declare class KnowledgeDb {
|
|
238
239
|
private readonly db;
|
|
239
240
|
readonly file: string;
|
|
241
|
+
private transactionSequence;
|
|
242
|
+
/** 距离上一次保留裁剪又提交了几次写事务。 */
|
|
243
|
+
private writesSincePrune;
|
|
240
244
|
private constructor();
|
|
241
245
|
/**
|
|
242
246
|
* 打开(必要时创建)一个知识库文件。
|
|
@@ -254,6 +258,8 @@ export declare class KnowledgeDb {
|
|
|
254
258
|
static open(file: string, DatabaseSync: new (path: string) => SqliteDatabase): Promise<OpenResult>;
|
|
255
259
|
close(): void;
|
|
256
260
|
raw(sql: string): SqliteStatement;
|
|
261
|
+
/** Repositories share this validated connection; only its owner closes it. */
|
|
262
|
+
connection(): SqliteDatabase;
|
|
257
263
|
/**
|
|
258
264
|
* 一次操作 = 一个事务 = 一行 `tree` + 若干行 `revision`。
|
|
259
265
|
*
|
|
@@ -265,6 +271,22 @@ export declare class KnowledgeDb {
|
|
|
265
271
|
* 说明不了自己改了什么的行。
|
|
266
272
|
*/
|
|
267
273
|
transact<T>(entry: TreeEntry, fn: (tx: KnowledgeTx) => T): T;
|
|
274
|
+
/**
|
|
275
|
+
* 保留上限(0070)。
|
|
276
|
+
*
|
|
277
|
+
* 文档里写了保留策略,代码里一条 `DELETE` 都没有。这里补上**新数据**的上限,
|
|
278
|
+
* 且只裁「水位以上」的行 —— 升级那一刻已有的历史一行不动(见 `retention.ts`)。
|
|
279
|
+
*
|
|
280
|
+
* - `revision`:机器版本(`auto`)每个实体留最近 20 版;**命名版本永不裁**
|
|
281
|
+
* (`named` 是人对内容做的决定,保留策略里它是永久的)。
|
|
282
|
+
* - `pipeline_extractions`:抽取检查点同时是复用缓存,每份来源留最近 5 份;
|
|
283
|
+
* `pipeline_sources` 指着的那两份(当前抽取 / 当前归一)绝不删 ——
|
|
284
|
+
* 删了会让那份来源显示成「还没抽取」。
|
|
285
|
+
* - `blob`:水位以上、已经没有任何 revision 引用的才删。水位以下的 blob 一律留着,
|
|
286
|
+
* 因为老版本可能还在引用它们。
|
|
287
|
+
* - `tree`:操作台账,与处理日志同一量级。
|
|
288
|
+
*/
|
|
289
|
+
private pruneRetention;
|
|
268
290
|
/** 记一次**没有内容变更**的操作(迁移收尾、审核结论这一类)。 */
|
|
269
291
|
recordOperation(entry: TreeEntry, manifest?: Record<string, number>): void;
|
|
270
292
|
versions(kind: EntityKind, id: string): RevisionRow[];
|
|
@@ -283,6 +305,14 @@ export declare class KnowledgeDb {
|
|
|
283
305
|
versionCount(kind: EntityKind, id: string): number;
|
|
284
306
|
sources(): SourceRecord[];
|
|
285
307
|
cards(): CardRecord[];
|
|
308
|
+
/** Knowledge 的同层事实实体。事件正文是结构化 JSON,不经过 WikiCard 的内容版本表。 */
|
|
309
|
+
events(): EventEntity[];
|
|
310
|
+
event(id: string): EventEntity | undefined;
|
|
311
|
+
writeEvent(event: EventEntity): void;
|
|
312
|
+
caseVersion(id: string, version: number): EventEntity | undefined;
|
|
313
|
+
removeEvent(id: string): void;
|
|
314
|
+
cardEventIds(cardId: string): string[];
|
|
315
|
+
setCardEvents(cardId: string, eventIds: string[]): boolean;
|
|
286
316
|
source(id: string): SourceRecord | undefined;
|
|
287
317
|
/**
|
|
288
318
|
* 谁已经用了这个标题。
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"knowledge-db.d.ts","sourceRoot":"","sources":["../../../src/store/knowledge-db.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"knowledge-db.d.ts","sourceRoot":"","sources":["../../../src/store/knowledge-db.ts"],"names":[],"mappings":"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"}
|