@legioncodeinc/nectar 0.0.1
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/LICENSE.md +662 -0
- package/README.md +307 -0
- package/dist/api/daemon-api-wiring.d.ts +72 -0
- package/dist/api/daemon-api-wiring.d.ts.map +1 -0
- package/dist/api/daemon-api-wiring.js +150 -0
- package/dist/api/daemon-api-wiring.js.map +1 -0
- package/dist/api/hive-graph-api.d.ts +136 -0
- package/dist/api/hive-graph-api.d.ts.map +1 -0
- package/dist/api/hive-graph-api.js +234 -0
- package/dist/api/hive-graph-api.js.map +1 -0
- package/dist/api/loopback-client.d.ts +27 -0
- package/dist/api/loopback-client.d.ts.map +1 -0
- package/dist/api/loopback-client.js +87 -0
- package/dist/api/loopback-client.js.map +1 -0
- package/dist/api/router.d.ts +172 -0
- package/dist/api/router.d.ts.map +1 -0
- package/dist/api/router.js +212 -0
- package/dist/api/router.js.map +1 -0
- package/dist/api/status-query.d.ts +49 -0
- package/dist/api/status-query.d.ts.map +1 -0
- package/dist/api/status-query.js +103 -0
- package/dist/api/status-query.js.map +1 -0
- package/dist/brood-guard.d.ts +24 -0
- package/dist/brood-guard.d.ts.map +1 -0
- package/dist/brood-guard.js +19 -0
- package/dist/brood-guard.js.map +1 -0
- package/dist/brood-prereqs.d.ts +62 -0
- package/dist/brood-prereqs.d.ts.map +1 -0
- package/dist/brood-prereqs.js +87 -0
- package/dist/brood-prereqs.js.map +1 -0
- package/dist/brooding/bucketing.d.ts +68 -0
- package/dist/brooding/bucketing.d.ts.map +1 -0
- package/dist/brooding/bucketing.js +122 -0
- package/dist/brooding/bucketing.js.map +1 -0
- package/dist/brooding/cli.d.ts +78 -0
- package/dist/brooding/cli.d.ts.map +1 -0
- package/dist/brooding/cli.js +140 -0
- package/dist/brooding/cli.js.map +1 -0
- package/dist/brooding/constants.d.ts +75 -0
- package/dist/brooding/constants.d.ts.map +1 -0
- package/dist/brooding/constants.js +91 -0
- package/dist/brooding/constants.js.map +1 -0
- package/dist/brooding/cost.d.ts +110 -0
- package/dist/brooding/cost.d.ts.map +1 -0
- package/dist/brooding/cost.js +96 -0
- package/dist/brooding/cost.js.map +1 -0
- package/dist/brooding/describe.d.ts +152 -0
- package/dist/brooding/describe.d.ts.map +1 -0
- package/dist/brooding/describe.js +281 -0
- package/dist/brooding/describe.js.map +1 -0
- package/dist/brooding/discovery.d.ts +116 -0
- package/dist/brooding/discovery.d.ts.map +1 -0
- package/dist/brooding/discovery.js +179 -0
- package/dist/brooding/discovery.js.map +1 -0
- package/dist/brooding/index.d.ts +23 -0
- package/dist/brooding/index.d.ts.map +1 -0
- package/dist/brooding/index.js +33 -0
- package/dist/brooding/index.js.map +1 -0
- package/dist/brooding/pipeline-async.d.ts +97 -0
- package/dist/brooding/pipeline-async.d.ts.map +1 -0
- package/dist/brooding/pipeline-async.js +364 -0
- package/dist/brooding/pipeline-async.js.map +1 -0
- package/dist/brooding/pipeline.d.ts +198 -0
- package/dist/brooding/pipeline.d.ts.map +1 -0
- package/dist/brooding/pipeline.js +454 -0
- package/dist/brooding/pipeline.js.map +1 -0
- package/dist/brooding/precheck.d.ts +52 -0
- package/dist/brooding/precheck.d.ts.map +1 -0
- package/dist/brooding/precheck.js +143 -0
- package/dist/brooding/precheck.js.map +1 -0
- package/dist/brooding/resumability.d.ts +57 -0
- package/dist/brooding/resumability.d.ts.map +1 -0
- package/dist/brooding/resumability.js +46 -0
- package/dist/brooding/resumability.js.map +1 -0
- package/dist/cli.d.ts +139 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +912 -0
- package/dist/cli.js.map +1 -0
- package/dist/config-file.d.ts +52 -0
- package/dist/config-file.d.ts.map +1 -0
- package/dist/config-file.js +130 -0
- package/dist/config-file.js.map +1 -0
- package/dist/config.d.ts +49 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +98 -0
- package/dist/config.js.map +1 -0
- package/dist/daemon.d.ts +265 -0
- package/dist/daemon.d.ts.map +1 -0
- package/dist/daemon.js +664 -0
- package/dist/daemon.js.map +1 -0
- package/dist/doctor-registry.d.ts +134 -0
- package/dist/doctor-registry.d.ts.map +1 -0
- package/dist/doctor-registry.js +173 -0
- package/dist/doctor-registry.js.map +1 -0
- package/dist/embeddings/cohere-portkey.d.ts +67 -0
- package/dist/embeddings/cohere-portkey.d.ts.map +1 -0
- package/dist/embeddings/cohere-portkey.js +171 -0
- package/dist/embeddings/cohere-portkey.js.map +1 -0
- package/dist/embeddings/config.d.ts +74 -0
- package/dist/embeddings/config.d.ts.map +1 -0
- package/dist/embeddings/config.js +131 -0
- package/dist/embeddings/config.js.map +1 -0
- package/dist/embeddings/guard.d.ts +34 -0
- package/dist/embeddings/guard.d.ts.map +1 -0
- package/dist/embeddings/guard.js +67 -0
- package/dist/embeddings/guard.js.map +1 -0
- package/dist/embeddings/hosted-portkey.d.ts +73 -0
- package/dist/embeddings/hosted-portkey.d.ts.map +1 -0
- package/dist/embeddings/hosted-portkey.js +179 -0
- package/dist/embeddings/hosted-portkey.js.map +1 -0
- package/dist/embeddings/http.d.ts +33 -0
- package/dist/embeddings/http.d.ts.map +1 -0
- package/dist/embeddings/http.js +19 -0
- package/dist/embeddings/http.js.map +1 -0
- package/dist/embeddings/index.d.ts +17 -0
- package/dist/embeddings/index.d.ts.map +1 -0
- package/dist/embeddings/index.js +17 -0
- package/dist/embeddings/index.js.map +1 -0
- package/dist/embeddings/local-nomic.d.ts +78 -0
- package/dist/embeddings/local-nomic.d.ts.map +1 -0
- package/dist/embeddings/local-nomic.js +126 -0
- package/dist/embeddings/local-nomic.js.map +1 -0
- package/dist/embeddings/provider.d.ts +79 -0
- package/dist/embeddings/provider.d.ts.map +1 -0
- package/dist/embeddings/provider.js +50 -0
- package/dist/embeddings/provider.js.map +1 -0
- package/dist/enricher/config.d.ts +43 -0
- package/dist/enricher/config.d.ts.map +1 -0
- package/dist/enricher/config.js +34 -0
- package/dist/enricher/config.js.map +1 -0
- package/dist/enricher/content-cache.d.ts +29 -0
- package/dist/enricher/content-cache.d.ts.map +1 -0
- package/dist/enricher/content-cache.js +24 -0
- package/dist/enricher/content-cache.js.map +1 -0
- package/dist/enricher/cycle.d.ts +71 -0
- package/dist/enricher/cycle.d.ts.map +1 -0
- package/dist/enricher/cycle.js +319 -0
- package/dist/enricher/cycle.js.map +1 -0
- package/dist/enricher/describe.d.ts +61 -0
- package/dist/enricher/describe.d.ts.map +1 -0
- package/dist/enricher/describe.js +175 -0
- package/dist/enricher/describe.js.map +1 -0
- package/dist/enricher/failure.d.ts +25 -0
- package/dist/enricher/failure.d.ts.map +1 -0
- package/dist/enricher/failure.js +46 -0
- package/dist/enricher/failure.js.map +1 -0
- package/dist/enricher/index.d.ts +22 -0
- package/dist/enricher/index.d.ts.map +1 -0
- package/dist/enricher/index.js +22 -0
- package/dist/enricher/index.js.map +1 -0
- package/dist/enricher/jaccard.d.ts +11 -0
- package/dist/enricher/jaccard.d.ts.map +1 -0
- package/dist/enricher/jaccard.js +29 -0
- package/dist/enricher/jaccard.js.map +1 -0
- package/dist/enricher/loop.d.ts +22 -0
- package/dist/enricher/loop.d.ts.map +1 -0
- package/dist/enricher/loop.js +34 -0
- package/dist/enricher/loop.js.map +1 -0
- package/dist/enricher/meaningful-change.d.ts +28 -0
- package/dist/enricher/meaningful-change.d.ts.map +1 -0
- package/dist/enricher/meaningful-change.js +41 -0
- package/dist/enricher/meaningful-change.js.map +1 -0
- package/dist/enricher/observability.d.ts +22 -0
- package/dist/enricher/observability.d.ts.map +1 -0
- package/dist/enricher/observability.js +55 -0
- package/dist/enricher/observability.js.map +1 -0
- package/dist/enricher/pending-query.d.ts +35 -0
- package/dist/enricher/pending-query.d.ts.map +1 -0
- package/dist/enricher/pending-query.js +54 -0
- package/dist/enricher/pending-query.js.map +1 -0
- package/dist/enricher/sql-update.d.ts +7 -0
- package/dist/enricher/sql-update.d.ts.map +1 -0
- package/dist/enricher/sql-update.js +22 -0
- package/dist/enricher/sql-update.js.map +1 -0
- package/dist/enricher/store-adapter.d.ts +98 -0
- package/dist/enricher/store-adapter.d.ts.map +1 -0
- package/dist/enricher/store-adapter.js +129 -0
- package/dist/enricher/store-adapter.js.map +1 -0
- package/dist/enricher/store.d.ts +58 -0
- package/dist/enricher/store.d.ts.map +1 -0
- package/dist/enricher/store.js +126 -0
- package/dist/enricher/store.js.map +1 -0
- package/dist/enricher/tokenize.d.ts +10 -0
- package/dist/enricher/tokenize.d.ts.map +1 -0
- package/dist/enricher/tokenize.js +28 -0
- package/dist/enricher/tokenize.js.map +1 -0
- package/dist/errors.d.ts +41 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +56 -0
- package/dist/errors.js.map +1 -0
- package/dist/health.d.ts +147 -0
- package/dist/health.d.ts.map +1 -0
- package/dist/health.js +168 -0
- package/dist/health.js.map +1 -0
- package/dist/hive-graph/deeplake-credentials.d.ts +68 -0
- package/dist/hive-graph/deeplake-credentials.d.ts.map +1 -0
- package/dist/hive-graph/deeplake-credentials.js +135 -0
- package/dist/hive-graph/deeplake-credentials.js.map +1 -0
- package/dist/hive-graph/deeplake-heal.d.ts +63 -0
- package/dist/hive-graph/deeplake-heal.d.ts.map +1 -0
- package/dist/hive-graph/deeplake-heal.js +118 -0
- package/dist/hive-graph/deeplake-heal.js.map +1 -0
- package/dist/hive-graph/deeplake-store.d.ts +199 -0
- package/dist/hive-graph/deeplake-store.d.ts.map +1 -0
- package/dist/hive-graph/deeplake-store.js +541 -0
- package/dist/hive-graph/deeplake-store.js.map +1 -0
- package/dist/hive-graph/deeplake-transport.d.ts +89 -0
- package/dist/hive-graph/deeplake-transport.d.ts.map +1 -0
- package/dist/hive-graph/deeplake-transport.js +145 -0
- package/dist/hive-graph/deeplake-transport.js.map +1 -0
- package/dist/hive-graph/hash.d.ts +3 -0
- package/dist/hive-graph/hash.d.ts.map +1 -0
- package/dist/hive-graph/hash.js +12 -0
- package/dist/hive-graph/hash.js.map +1 -0
- package/dist/hive-graph/memory-store.d.ts +39 -0
- package/dist/hive-graph/memory-store.d.ts.map +1 -0
- package/dist/hive-graph/memory-store.js +125 -0
- package/dist/hive-graph/memory-store.js.map +1 -0
- package/dist/hive-graph/model.d.ts +109 -0
- package/dist/hive-graph/model.d.ts.map +1 -0
- package/dist/hive-graph/model.js +36 -0
- package/dist/hive-graph/model.js.map +1 -0
- package/dist/hive-graph/paths.d.ts +7 -0
- package/dist/hive-graph/paths.d.ts.map +1 -0
- package/dist/hive-graph/paths.js +26 -0
- package/dist/hive-graph/paths.js.map +1 -0
- package/dist/hive-graph/project-scope.d.ts +99 -0
- package/dist/hive-graph/project-scope.d.ts.map +1 -0
- package/dist/hive-graph/project-scope.js +286 -0
- package/dist/hive-graph/project-scope.js.map +1 -0
- package/dist/hive-graph/schema.d.ts +53 -0
- package/dist/hive-graph/schema.d.ts.map +1 -0
- package/dist/hive-graph/schema.js +139 -0
- package/dist/hive-graph/schema.js.map +1 -0
- package/dist/hive-graph/search-types.d.ts +82 -0
- package/dist/hive-graph/search-types.d.ts.map +1 -0
- package/dist/hive-graph/search-types.js +2 -0
- package/dist/hive-graph/search-types.js.map +1 -0
- package/dist/hive-graph/search.d.ts +51 -0
- package/dist/hive-graph/search.d.ts.map +1 -0
- package/dist/hive-graph/search.js +417 -0
- package/dist/hive-graph/search.js.map +1 -0
- package/dist/hive-graph/sql-guards.d.ts +99 -0
- package/dist/hive-graph/sql-guards.d.ts.map +1 -0
- package/dist/hive-graph/sql-guards.js +129 -0
- package/dist/hive-graph/sql-guards.js.map +1 -0
- package/dist/hive-graph/store.d.ts +151 -0
- package/dist/hive-graph/store.d.ts.map +1 -0
- package/dist/hive-graph/store.js +2 -0
- package/dist/hive-graph/store.js.map +1 -0
- package/dist/hive-graph/ulid.d.ts +14 -0
- package/dist/hive-graph/ulid.d.ts.map +1 -0
- package/dist/hive-graph/ulid.js +109 -0
- package/dist/hive-graph/ulid.js.map +1 -0
- package/dist/hivedoctor-registry.d.ts +111 -0
- package/dist/hivedoctor-registry.d.ts.map +1 -0
- package/dist/hivedoctor-registry.js +143 -0
- package/dist/hivedoctor-registry.js.map +1 -0
- package/dist/index.d.ts +106 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +78 -0
- package/dist/index.js.map +1 -0
- package/dist/lock.d.ts +66 -0
- package/dist/lock.d.ts.map +1 -0
- package/dist/lock.js +282 -0
- package/dist/lock.js.map +1 -0
- package/dist/poll-loop.d.ts +71 -0
- package/dist/poll-loop.d.ts.map +1 -0
- package/dist/poll-loop.js +130 -0
- package/dist/poll-loop.js.map +1 -0
- package/dist/portkey/config.d.ts +46 -0
- package/dist/portkey/config.d.ts.map +1 -0
- package/dist/portkey/config.js +68 -0
- package/dist/portkey/config.js.map +1 -0
- package/dist/portkey/describe-model.d.ts +53 -0
- package/dist/portkey/describe-model.d.ts.map +1 -0
- package/dist/portkey/describe-model.js +56 -0
- package/dist/portkey/describe-model.js.map +1 -0
- package/dist/portkey/headers.d.ts +31 -0
- package/dist/portkey/headers.d.ts.map +1 -0
- package/dist/portkey/headers.js +37 -0
- package/dist/portkey/headers.js.map +1 -0
- package/dist/portkey/transport.d.ts +89 -0
- package/dist/portkey/transport.d.ts.map +1 -0
- package/dist/portkey/transport.js +167 -0
- package/dist/portkey/transport.js.map +1 -0
- package/dist/projection/format.d.ts +51 -0
- package/dist/projection/format.d.ts.map +1 -0
- package/dist/projection/format.js +81 -0
- package/dist/projection/format.js.map +1 -0
- package/dist/projection/generate.d.ts +31 -0
- package/dist/projection/generate.d.ts.map +1 -0
- package/dist/projection/generate.js +83 -0
- package/dist/projection/generate.js.map +1 -0
- package/dist/projection/inherit.d.ts +27 -0
- package/dist/projection/inherit.d.ts.map +1 -0
- package/dist/projection/inherit.js +128 -0
- package/dist/projection/inherit.js.map +1 -0
- package/dist/projection/load.d.ts +47 -0
- package/dist/projection/load.d.ts.map +1 -0
- package/dist/projection/load.js +258 -0
- package/dist/projection/load.js.map +1 -0
- package/dist/projection/store-adapter.d.ts +42 -0
- package/dist/projection/store-adapter.d.ts.map +1 -0
- package/dist/projection/store-adapter.js +42 -0
- package/dist/projection/store-adapter.js.map +1 -0
- package/dist/projection/write.d.ts +79 -0
- package/dist/projection/write.d.ts.map +1 -0
- package/dist/projection/write.js +122 -0
- package/dist/projection/write.js.map +1 -0
- package/dist/registration/classify.d.ts +33 -0
- package/dist/registration/classify.d.ts.map +1 -0
- package/dist/registration/classify.js +32 -0
- package/dist/registration/classify.js.map +1 -0
- package/dist/registration/copy-detect.d.ts +22 -0
- package/dist/registration/copy-detect.d.ts.map +1 -0
- package/dist/registration/copy-detect.js +12 -0
- package/dist/registration/copy-detect.js.map +1 -0
- package/dist/registration/disk-fs.d.ts +41 -0
- package/dist/registration/disk-fs.d.ts.map +1 -0
- package/dist/registration/disk-fs.js +175 -0
- package/dist/registration/disk-fs.js.map +1 -0
- package/dist/registration/fs-watch.d.ts +114 -0
- package/dist/registration/fs-watch.d.ts.map +1 -0
- package/dist/registration/fs-watch.js +266 -0
- package/dist/registration/fs-watch.js.map +1 -0
- package/dist/registration/ignore.d.ts +77 -0
- package/dist/registration/ignore.d.ts.map +1 -0
- package/dist/registration/ignore.js +249 -0
- package/dist/registration/ignore.js.map +1 -0
- package/dist/registration/ladder.d.ts +211 -0
- package/dist/registration/ladder.d.ts.map +1 -0
- package/dist/registration/ladder.js +378 -0
- package/dist/registration/ladder.js.map +1 -0
- package/dist/registration/paths-safe.d.ts +21 -0
- package/dist/registration/paths-safe.d.ts.map +1 -0
- package/dist/registration/paths-safe.js +88 -0
- package/dist/registration/paths-safe.js.map +1 -0
- package/dist/registration/prune-cli.d.ts +48 -0
- package/dist/registration/prune-cli.d.ts.map +1 -0
- package/dist/registration/prune-cli.js +57 -0
- package/dist/registration/prune-cli.js.map +1 -0
- package/dist/registration/review-cli.d.ts +42 -0
- package/dist/registration/review-cli.d.ts.map +1 -0
- package/dist/registration/review-cli.js +110 -0
- package/dist/registration/review-cli.js.map +1 -0
- package/dist/registration/review-store.d.ts +73 -0
- package/dist/registration/review-store.d.ts.map +1 -0
- package/dist/registration/review-store.js +243 -0
- package/dist/registration/review-store.js.map +1 -0
- package/dist/registration/service.d.ts +196 -0
- package/dist/registration/service.d.ts.map +1 -0
- package/dist/registration/service.js +384 -0
- package/dist/registration/service.js.map +1 -0
- package/dist/registration/store-bridge.d.ts +133 -0
- package/dist/registration/store-bridge.d.ts.map +1 -0
- package/dist/registration/store-bridge.js +159 -0
- package/dist/registration/store-bridge.js.map +1 -0
- package/dist/registration/tlsh.d.ts +125 -0
- package/dist/registration/tlsh.d.ts.map +1 -0
- package/dist/registration/tlsh.js +274 -0
- package/dist/registration/tlsh.js.map +1 -0
- package/dist/server.d.ts +26 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +156 -0
- package/dist/server.js.map +1 -0
- package/dist/service/argv.d.ts +52 -0
- package/dist/service/argv.d.ts.map +1 -0
- package/dist/service/argv.js +127 -0
- package/dist/service/argv.js.map +1 -0
- package/dist/service/command-runner.d.ts +54 -0
- package/dist/service/command-runner.d.ts.map +1 -0
- package/dist/service/command-runner.js +55 -0
- package/dist/service/command-runner.js.map +1 -0
- package/dist/service/index.d.ts +83 -0
- package/dist/service/index.d.ts.map +1 -0
- package/dist/service/index.js +270 -0
- package/dist/service/index.js.map +1 -0
- package/dist/service/platform.d.ts +110 -0
- package/dist/service/platform.d.ts.map +1 -0
- package/dist/service/platform.js +157 -0
- package/dist/service/platform.js.map +1 -0
- package/dist/service/templates.d.ts +88 -0
- package/dist/service/templates.d.ts.map +1 -0
- package/dist/service/templates.js +212 -0
- package/dist/service/templates.js.map +1 -0
- package/dist/source-graph/deeplake-credentials.d.ts +57 -0
- package/dist/source-graph/deeplake-credentials.d.ts.map +1 -0
- package/dist/source-graph/deeplake-credentials.js +109 -0
- package/dist/source-graph/deeplake-credentials.js.map +1 -0
- package/dist/source-graph/deeplake-heal.d.ts +53 -0
- package/dist/source-graph/deeplake-heal.d.ts.map +1 -0
- package/dist/source-graph/deeplake-heal.js +41 -0
- package/dist/source-graph/deeplake-heal.js.map +1 -0
- package/dist/source-graph/deeplake-store.d.ts +151 -0
- package/dist/source-graph/deeplake-store.d.ts.map +1 -0
- package/dist/source-graph/deeplake-store.js +389 -0
- package/dist/source-graph/deeplake-store.js.map +1 -0
- package/dist/source-graph/deeplake-transport.d.ts +74 -0
- package/dist/source-graph/deeplake-transport.d.ts.map +1 -0
- package/dist/source-graph/deeplake-transport.js +107 -0
- package/dist/source-graph/deeplake-transport.js.map +1 -0
- package/dist/source-graph/hash.d.ts +3 -0
- package/dist/source-graph/hash.d.ts.map +1 -0
- package/dist/source-graph/hash.js +12 -0
- package/dist/source-graph/hash.js.map +1 -0
- package/dist/source-graph/memory-store.d.ts +32 -0
- package/dist/source-graph/memory-store.d.ts.map +1 -0
- package/dist/source-graph/memory-store.js +81 -0
- package/dist/source-graph/memory-store.js.map +1 -0
- package/dist/source-graph/model.d.ts +102 -0
- package/dist/source-graph/model.d.ts.map +1 -0
- package/dist/source-graph/model.js +36 -0
- package/dist/source-graph/model.js.map +1 -0
- package/dist/source-graph/paths.d.ts +7 -0
- package/dist/source-graph/paths.d.ts.map +1 -0
- package/dist/source-graph/paths.js +26 -0
- package/dist/source-graph/paths.js.map +1 -0
- package/dist/source-graph/schema.d.ts +44 -0
- package/dist/source-graph/schema.d.ts.map +1 -0
- package/dist/source-graph/schema.js +123 -0
- package/dist/source-graph/schema.js.map +1 -0
- package/dist/source-graph/sql-guards.d.ts +99 -0
- package/dist/source-graph/sql-guards.d.ts.map +1 -0
- package/dist/source-graph/sql-guards.js +129 -0
- package/dist/source-graph/sql-guards.js.map +1 -0
- package/dist/source-graph/store.d.ts +101 -0
- package/dist/source-graph/store.d.ts.map +1 -0
- package/dist/source-graph/store.js +2 -0
- package/dist/source-graph/store.js.map +1 -0
- package/dist/source-graph/ulid.d.ts +9 -0
- package/dist/source-graph/ulid.d.ts.map +1 -0
- package/dist/source-graph/ulid.js +61 -0
- package/dist/source-graph/ulid.js.map +1 -0
- package/dist/telemetry/checkin.d.ts +66 -0
- package/dist/telemetry/checkin.d.ts.map +1 -0
- package/dist/telemetry/checkin.js +142 -0
- package/dist/telemetry/checkin.js.map +1 -0
- package/dist/telemetry/db.d.ts +34 -0
- package/dist/telemetry/db.d.ts.map +1 -0
- package/dist/telemetry/db.js +122 -0
- package/dist/telemetry/db.js.map +1 -0
- package/dist/telemetry/index.d.ts +76 -0
- package/dist/telemetry/index.d.ts.map +1 -0
- package/dist/telemetry/index.js +98 -0
- package/dist/telemetry/index.js.map +1 -0
- package/dist/telemetry/logs.d.ts +83 -0
- package/dist/telemetry/logs.d.ts.map +1 -0
- package/dist/telemetry/logs.js +110 -0
- package/dist/telemetry/logs.js.map +1 -0
- package/dist/telemetry/metrics.d.ts +82 -0
- package/dist/telemetry/metrics.d.ts.map +1 -0
- package/dist/telemetry/metrics.js +148 -0
- package/dist/telemetry/metrics.js.map +1 -0
- package/dist/telemetry-usage/emit.d.ts +105 -0
- package/dist/telemetry-usage/emit.d.ts.map +1 -0
- package/dist/telemetry-usage/emit.js +267 -0
- package/dist/telemetry-usage/emit.js.map +1 -0
- package/dist/telemetry-usage/posthog-key.d.ts +22 -0
- package/dist/telemetry-usage/posthog-key.d.ts.map +1 -0
- package/dist/telemetry-usage/posthog-key.js +22 -0
- package/dist/telemetry-usage/posthog-key.js.map +1 -0
- package/dist/worker.d.ts +69 -0
- package/dist/worker.d.ts.map +1 -0
- package/dist/worker.js +91 -0
- package/dist/worker.js.map +1 -0
- package/package.json +44 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../src/brooding/pipeline.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import type { Tenancy } from "../hive-graph/model.js";
|
|
2
|
+
import type { RegistrationFs } from "../registration/service.js";
|
|
3
|
+
import { type InheritRow } from "../projection/inherit.js";
|
|
4
|
+
import type { PortableProjection } from "../projection/format.js";
|
|
5
|
+
import type { DiscoveredFile } from "./discovery.js";
|
|
6
|
+
/** A discovered file read once: its content bytes, content hash, and binary sniff result. */
|
|
7
|
+
export interface PreparedFile {
|
|
8
|
+
readonly file: DiscoveredFile;
|
|
9
|
+
/**
|
|
10
|
+
* Raw content bytes (decoded to text lazily by the describe stage). Empty
|
|
11
|
+
* for a terminal skip bucket (known-binary extension, too-large, or
|
|
12
|
+
* NUL-sniffed binary) - those bytes are never sent to an LLM, so they are
|
|
13
|
+
* never retained (NEC-012 / AC-018e.5, AC-018e.6).
|
|
14
|
+
*/
|
|
15
|
+
readonly bytes: Uint8Array;
|
|
16
|
+
/** sha256 hex of the content (the `hive_graph_versions.content_hash`). */
|
|
17
|
+
readonly contentHash: string;
|
|
18
|
+
/** True when a NUL byte appears in the first {@link BINARY_SNIFF_BYTES} bytes. */
|
|
19
|
+
readonly hasNulInSniff: boolean;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Read one discovered file and prepare it (hash + binary sniff). Returns `null`
|
|
23
|
+
* when the file cannot be read (it vanished between discovery and read, or the
|
|
24
|
+
* fs seam refuses it) so the caller drops it from the candidate set.
|
|
25
|
+
*/
|
|
26
|
+
export declare function prepareFile(fs: RegistrationFs, file: DiscoveredFile): PreparedFile | null;
|
|
27
|
+
/** Read + prepare every discovered file (hash + sniff), dropping any that vanish. */
|
|
28
|
+
export declare function prepareFiles(fs: RegistrationFs, files: readonly DiscoveredFile[]): PreparedFile[];
|
|
29
|
+
export interface PrecheckOptions {
|
|
30
|
+
readonly tenancy: Tenancy;
|
|
31
|
+
/** The validated committed projection to inherit from, or `null` when none exists. */
|
|
32
|
+
readonly projection: PortableProjection | null;
|
|
33
|
+
/** Nectars already present in the local store; never re-inherited (PRD-011b). */
|
|
34
|
+
readonly existingNectars?: ReadonlySet<string>;
|
|
35
|
+
/** ISO 8601 "now" for inherited rows; injectable for deterministic tests. */
|
|
36
|
+
readonly nowIso?: string;
|
|
37
|
+
}
|
|
38
|
+
export interface PrecheckResult {
|
|
39
|
+
/** Identity + version rows to write for hash-matched (inherited) files. No LLM call. */
|
|
40
|
+
readonly inheritedRows: readonly InheritRow[];
|
|
41
|
+
/** Files with no projection match; these enter bucketing (`bucketing.ts`). */
|
|
42
|
+
readonly survivors: readonly PreparedFile[];
|
|
43
|
+
readonly inheritedCount: number;
|
|
44
|
+
readonly survivorCount: number;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Partition prepared candidates against the committed projection (stage 2). A
|
|
48
|
+
* `content_hash` match inherits (no LLM call); a non-match survives into
|
|
49
|
+
* bucketing. With no projection, every candidate survives.
|
|
50
|
+
*/
|
|
51
|
+
export declare function contentHashPrecheck(prepared: readonly PreparedFile[], opts: PrecheckOptions): PrecheckResult;
|
|
52
|
+
//# sourceMappingURL=precheck.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"precheck.d.ts","sourceRoot":"","sources":["../../src/brooding/precheck.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAGL,KAAK,UAAU,EAChB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAGlE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,6FAA6F;AAC7F,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,0EAA0E;IAC1E,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,kFAAkF;IAClF,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;CACjC;AA6BD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,GAAG,YAAY,GAAG,IAAI,CAqCzF;AAED,qFAAqF;AACrF,wBAAgB,YAAY,CAAC,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,SAAS,cAAc,EAAE,GAAG,YAAY,EAAE,CAOjG;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,sFAAsF;IACtF,QAAQ,CAAC,UAAU,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC/C,iFAAiF;IACjF,QAAQ,CAAC,eAAe,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/C,6EAA6E;IAC7E,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,cAAc;IAC7B,wFAAwF;IACxF,QAAQ,CAAC,aAAa,EAAE,SAAS,UAAU,EAAE,CAAC;IAC9C,8EAA8E;IAC9E,QAAQ,CAAC,SAAS,EAAE,SAAS,YAAY,EAAE,CAAC;IAC5C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,SAAS,YAAY,EAAE,EACjC,IAAI,EAAE,eAAe,GACpB,cAAc,CAkChB"}
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Content-hash pre-check (PRD-007a) - stage 2 of the pipeline, the fresh-clone
|
|
3
|
+
* shortcut.
|
|
4
|
+
*
|
|
5
|
+
* Every discovered candidate is read once, sha256-hashed, and sniffed for a NUL
|
|
6
|
+
* byte in its first 8 KB (so a later bucketing pass needs no second read). A
|
|
7
|
+
* candidate whose `content_hash` matches an entry in the committed portable
|
|
8
|
+
* projection (`.honeycomb/nectars.json`) INHERITS that entry's nectar and
|
|
9
|
+
* description and makes NO LLM call - this is how a fresh clone pays $0. Only
|
|
10
|
+
* candidates with no projection match survive into bucketing (`bucketing.ts`).
|
|
11
|
+
*
|
|
12
|
+
* Row building for inherited files reuses `projection/inherit.ts`
|
|
13
|
+
* (`inheritFromProjection`) verbatim; this module owns the read-and-partition.
|
|
14
|
+
*
|
|
15
|
+
* Memory bounding (NEC-012): a known-binary extension is classified WITHOUT
|
|
16
|
+
* reading any content at all (AC-018e.5) - `classifyBucket` would put it in
|
|
17
|
+
* `skip-binary` regardless of bytes, so a multi-GB tracked asset is never
|
|
18
|
+
* buffered. A file that turns out to be a terminal skip bucket after a read
|
|
19
|
+
* (too-large by `stat.sizeBytes`, or NUL-sniffed binary) has its `bytes`
|
|
20
|
+
* dropped once hashed rather than retained for the run's duration (AC-018e.6):
|
|
21
|
+
* only batch/solo-eligible files - the ones an LLM call will actually see -
|
|
22
|
+
* keep their content resident past this function.
|
|
23
|
+
*/
|
|
24
|
+
import { sha256Hex } from "../hive-graph/hash.js";
|
|
25
|
+
import { inheritFromProjection, } from "../projection/inherit.js";
|
|
26
|
+
import { buildContentHashIndex } from "../projection/load.js";
|
|
27
|
+
import { BINARY_SNIFF_BYTES, MAX_DESCRIBE_SIZE } from "./constants.js";
|
|
28
|
+
import { isKnownBinaryExtension } from "./bucketing.js";
|
|
29
|
+
const EMPTY_BYTES = new Uint8Array(0);
|
|
30
|
+
function toBytes(content) {
|
|
31
|
+
return typeof content === "string" ? Buffer.from(content, "utf8") : content;
|
|
32
|
+
}
|
|
33
|
+
function nulInFirst(bytes, limit) {
|
|
34
|
+
const end = Math.min(bytes.length, limit);
|
|
35
|
+
for (let i = 0; i < end; i++) {
|
|
36
|
+
if (bytes[i] === 0)
|
|
37
|
+
return true;
|
|
38
|
+
}
|
|
39
|
+
return false;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* A metadata-only content-hash surrogate for a known-binary file that is
|
|
43
|
+
* never read (NEC-012 / AC-018e.5). It is stable across a fresh clone (path +
|
|
44
|
+
* size only, deliberately excluding `mtimeObserved` which a checkout does not
|
|
45
|
+
* preserve) but is NOT a hash of the file's actual bytes; this is safe because
|
|
46
|
+
* a `skip-binary` row is never LLM-described and never enters the portable
|
|
47
|
+
* projection's content-hash inherit index for anything other than itself (a
|
|
48
|
+
* described file's hash always comes from real content).
|
|
49
|
+
*/
|
|
50
|
+
function metadataPseudoHash(file) {
|
|
51
|
+
return sha256Hex(`nectar-binary-skip:${file.relPath}:${file.sizeBytes}`);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Read one discovered file and prepare it (hash + binary sniff). Returns `null`
|
|
55
|
+
* when the file cannot be read (it vanished between discovery and read, or the
|
|
56
|
+
* fs seam refuses it) so the caller drops it from the candidate set.
|
|
57
|
+
*/
|
|
58
|
+
export function prepareFile(fs, file) {
|
|
59
|
+
const stat = fs.statPath(file.relPath);
|
|
60
|
+
if (stat === null)
|
|
61
|
+
return null;
|
|
62
|
+
// Known-binary extensions are classified before any read (NEC-012 /
|
|
63
|
+
// AC-018e.5): `classifyBucket` would route this to `skip-binary` purely from
|
|
64
|
+
// the extension, so its content is never worth buffering.
|
|
65
|
+
if (isKnownBinaryExtension(file.ext)) {
|
|
66
|
+
return {
|
|
67
|
+
file,
|
|
68
|
+
bytes: EMPTY_BYTES,
|
|
69
|
+
contentHash: metadataPseudoHash(file),
|
|
70
|
+
hasNulInSniff: false,
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
let raw;
|
|
74
|
+
try {
|
|
75
|
+
raw = stat.readContent();
|
|
76
|
+
}
|
|
77
|
+
catch {
|
|
78
|
+
return null;
|
|
79
|
+
}
|
|
80
|
+
const bytes = toBytes(raw);
|
|
81
|
+
const contentHash = sha256Hex(bytes);
|
|
82
|
+
const hasNulInSniff = nulInFirst(bytes, BINARY_SNIFF_BYTES);
|
|
83
|
+
// A too-large or NUL-sniffed file is a terminal `skip-*` bucket
|
|
84
|
+
// (`bucketing.ts` classifyBucket): it is hashed for the persisted row, but
|
|
85
|
+
// its bytes are dropped immediately rather than retained for the run's
|
|
86
|
+
// duration (NEC-012 / AC-018e.6).
|
|
87
|
+
const isTerminalSkip = file.sizeBytes > MAX_DESCRIBE_SIZE || hasNulInSniff;
|
|
88
|
+
return {
|
|
89
|
+
file,
|
|
90
|
+
bytes: isTerminalSkip ? EMPTY_BYTES : bytes,
|
|
91
|
+
contentHash,
|
|
92
|
+
hasNulInSniff,
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
/** Read + prepare every discovered file (hash + sniff), dropping any that vanish. */
|
|
96
|
+
export function prepareFiles(fs, files) {
|
|
97
|
+
const prepared = [];
|
|
98
|
+
for (const file of files) {
|
|
99
|
+
const p = prepareFile(fs, file);
|
|
100
|
+
if (p !== null)
|
|
101
|
+
prepared.push(p);
|
|
102
|
+
}
|
|
103
|
+
return prepared;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Partition prepared candidates against the committed projection (stage 2). A
|
|
107
|
+
* `content_hash` match inherits (no LLM call); a non-match survives into
|
|
108
|
+
* bucketing. With no projection, every candidate survives.
|
|
109
|
+
*/
|
|
110
|
+
export function contentHashPrecheck(prepared, opts) {
|
|
111
|
+
if (opts.projection === null) {
|
|
112
|
+
return {
|
|
113
|
+
inheritedRows: [],
|
|
114
|
+
survivors: [...prepared],
|
|
115
|
+
inheritedCount: 0,
|
|
116
|
+
survivorCount: prepared.length,
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
const index = buildContentHashIndex(opts.projection);
|
|
120
|
+
const diskHashes = new Map();
|
|
121
|
+
const survivors = [];
|
|
122
|
+
for (const p of prepared) {
|
|
123
|
+
if (index.has(p.contentHash)) {
|
|
124
|
+
// A hash match feeds the inherit builder (path -> hash); it never enters bucketing.
|
|
125
|
+
diskHashes.set(p.file.relPath, p.contentHash);
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
survivors.push(p);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
const summary = inheritFromProjection(opts.projection, diskHashes, {
|
|
132
|
+
tenancy: opts.tenancy,
|
|
133
|
+
nowIso: opts.nowIso,
|
|
134
|
+
existingNectars: opts.existingNectars,
|
|
135
|
+
});
|
|
136
|
+
return {
|
|
137
|
+
inheritedRows: summary.rows,
|
|
138
|
+
survivors,
|
|
139
|
+
inheritedCount: summary.rows.length,
|
|
140
|
+
survivorCount: survivors.length,
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
//# sourceMappingURL=precheck.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"precheck.js","sourceRoot":"","sources":["../../src/brooding/precheck.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resumability state machine (PRD-007c).
|
|
3
|
+
*
|
|
4
|
+
* A brood is resumable with NO lockfile and NO partial-state marker: the state
|
|
5
|
+
* is fully derivable from `hive_graph_versions.describe_status` (the latest
|
|
6
|
+
* version row per nectar). This module is the pure state machine that maps a
|
|
7
|
+
* file's latest version status to one of the three resumption actions, carried
|
|
8
|
+
* verbatim from `brooding-pipeline.md` § "Resumability":
|
|
9
|
+
*
|
|
10
|
+
* rule 1 describe_status is terminal (described / skipped-*) -> SKIP.
|
|
11
|
+
* rule 2 nectar minted, latest describe_status = pending -> RE-ENQUEUE.
|
|
12
|
+
* rule 3 no nectar minted for this path -> DISCOVER FRESH.
|
|
13
|
+
*
|
|
14
|
+
* A `failed` row is treated as work-not-yet-done (re-enqueueable), so a re-run
|
|
15
|
+
* of `brood` retries it (US-007c.3). `--force` opts out of rule 1's skip for the
|
|
16
|
+
* non-skipped statuses (described / failed / pending all re-enqueue), while the
|
|
17
|
+
* two skip-* statuses stay skipped (no description is possible for them).
|
|
18
|
+
*
|
|
19
|
+
* NEC-038 / AC-018e.7-8: rule 1's skip is additionally conditioned on content
|
|
20
|
+
* hash for a `described` row - a path edited while the daemon was off (so the
|
|
21
|
+
* watcher/enricher never saw the change) is re-enqueued rather than skipped
|
|
22
|
+
* forever, even without `--force`. The two skip-* statuses are unaffected (no
|
|
23
|
+
* description is possible for them regardless of content).
|
|
24
|
+
*/
|
|
25
|
+
import type { DescribeStatus, HiveGraphVersionRow } from "../hive-graph/model.js";
|
|
26
|
+
/** The three resumption actions a next-boot brooder applies. */
|
|
27
|
+
export type ResumeAction = "skip" | "re-enqueue" | "discover-fresh";
|
|
28
|
+
/**
|
|
29
|
+
* Terminal brood outcomes that rule 1 skips: a described file and the two skip
|
|
30
|
+
* buckets. `failed` and `pending` are NON-terminal (re-enqueueable).
|
|
31
|
+
*/
|
|
32
|
+
export declare const BROOD_TERMINAL_STATUSES: readonly DescribeStatus[];
|
|
33
|
+
/** True when a describe status is a terminal brood outcome (rule 1 skip). */
|
|
34
|
+
export declare function isTerminalBroodStatus(status: DescribeStatus): boolean;
|
|
35
|
+
/** The two skip statuses `--force` must never reset (no description is possible). */
|
|
36
|
+
export declare function isForceProtectedStatus(status: DescribeStatus): boolean;
|
|
37
|
+
export interface ClassifyResumeOptions {
|
|
38
|
+
/** `--force`: re-describe every non-skipped file, ignoring existing descriptions. */
|
|
39
|
+
readonly force?: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* The freshly prepared file's content hash. When the latest row is
|
|
42
|
+
* `described` and this differs from `latest.contentHash`, the path is
|
|
43
|
+
* re-enqueued instead of skipped (NEC-038 / AC-018e.7) - the file changed
|
|
44
|
+
* since the last successful brood. Omit to preserve the pure path-status
|
|
45
|
+
* behavior (AC-018e.8's regression guard: matching or absent hash skips
|
|
46
|
+
* exactly as before).
|
|
47
|
+
*/
|
|
48
|
+
readonly preparedContentHash?: string;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Classify one file for a resumed brood from its LATEST version row status
|
|
52
|
+
* (`undefined` when no nectar was ever minted for the path). Returns the
|
|
53
|
+
* resumption action; the pipeline reuses the nectar for re-enqueue and mints a
|
|
54
|
+
* fresh one for discover-fresh.
|
|
55
|
+
*/
|
|
56
|
+
export declare function classifyResume(latest: HiveGraphVersionRow | undefined, opts?: ClassifyResumeOptions): ResumeAction;
|
|
57
|
+
//# sourceMappingURL=resumability.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resumability.d.ts","sourceRoot":"","sources":["../../src/brooding/resumability.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAElF,gEAAgE;AAChE,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,YAAY,GAAG,gBAAgB,CAAC;AAEpE;;;GAGG;AACH,eAAO,MAAM,uBAAuB,EAAE,SAAS,cAAc,EAI5D,CAAC;AAEF,6EAA6E;AAC7E,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAErE;AAED,qFAAqF;AACrF,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAEtE;AAED,MAAM,WAAW,qBAAqB;IACpC,qFAAqF;IACrF,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB;;;;;;;OAOG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CACvC;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,mBAAmB,GAAG,SAAS,EACvC,IAAI,GAAE,qBAA0B,GAC/B,YAAY,CAwBd"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Terminal brood outcomes that rule 1 skips: a described file and the two skip
|
|
3
|
+
* buckets. `failed` and `pending` are NON-terminal (re-enqueueable).
|
|
4
|
+
*/
|
|
5
|
+
export const BROOD_TERMINAL_STATUSES = [
|
|
6
|
+
"described",
|
|
7
|
+
"skipped-binary",
|
|
8
|
+
"skipped-too-large",
|
|
9
|
+
];
|
|
10
|
+
/** True when a describe status is a terminal brood outcome (rule 1 skip). */
|
|
11
|
+
export function isTerminalBroodStatus(status) {
|
|
12
|
+
return status === "described" || status === "skipped-binary" || status === "skipped-too-large";
|
|
13
|
+
}
|
|
14
|
+
/** The two skip statuses `--force` must never reset (no description is possible). */
|
|
15
|
+
export function isForceProtectedStatus(status) {
|
|
16
|
+
return status === "skipped-binary" || status === "skipped-too-large";
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Classify one file for a resumed brood from its LATEST version row status
|
|
20
|
+
* (`undefined` when no nectar was ever minted for the path). Returns the
|
|
21
|
+
* resumption action; the pipeline reuses the nectar for re-enqueue and mints a
|
|
22
|
+
* fresh one for discover-fresh.
|
|
23
|
+
*/
|
|
24
|
+
export function classifyResume(latest, opts = {}) {
|
|
25
|
+
if (latest === undefined)
|
|
26
|
+
return "discover-fresh"; // rule 3
|
|
27
|
+
if (opts.force === true) {
|
|
28
|
+
// Force: skip only the two statuses no description can help; re-describe the rest.
|
|
29
|
+
return isForceProtectedStatus(latest.describeStatus) ? "skip" : "re-enqueue";
|
|
30
|
+
}
|
|
31
|
+
if (isTerminalBroodStatus(latest.describeStatus)) {
|
|
32
|
+
// A `described` path whose on-disk content hash no longer matches the
|
|
33
|
+
// stored one changed since the last brood: re-enqueue rather than skip it
|
|
34
|
+
// forever (NEC-038 / AC-018e.7). The two skip-* statuses always skip here
|
|
35
|
+
// (unchanged, AC-018e.8) since no content comparison can make them
|
|
36
|
+
// describable.
|
|
37
|
+
if (latest.describeStatus === "described" &&
|
|
38
|
+
opts.preparedContentHash !== undefined &&
|
|
39
|
+
opts.preparedContentHash !== latest.contentHash) {
|
|
40
|
+
return "re-enqueue";
|
|
41
|
+
}
|
|
42
|
+
return "skip"; // rule 1
|
|
43
|
+
}
|
|
44
|
+
return "re-enqueue"; // rule 2 (pending) + failed re-enqueueable
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=resumability.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resumability.js","sourceRoot":"","sources":["../../src/brooding/resumability.ts"],"names":[],"mappings":"AA6BA;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAA8B;IAChE,WAAW;IACX,gBAAgB;IAChB,mBAAmB;CACpB,CAAC;AAEF,6EAA6E;AAC7E,MAAM,UAAU,qBAAqB,CAAC,MAAsB;IAC1D,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,gBAAgB,IAAI,MAAM,KAAK,mBAAmB,CAAC;AACjG,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,sBAAsB,CAAC,MAAsB;IAC3D,OAAO,MAAM,KAAK,gBAAgB,IAAI,MAAM,KAAK,mBAAmB,CAAC;AACvE,CAAC;AAgBD;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAC5B,MAAuC,EACvC,OAA8B,EAAE;IAEhC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,gBAAgB,CAAC,CAAC,SAAS;IAE5D,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QACxB,mFAAmF;QACnF,OAAO,sBAAsB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC;IAC/E,CAAC;IAED,IAAI,qBAAqB,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;QACjD,sEAAsE;QACtE,0EAA0E;QAC1E,0EAA0E;QAC1E,mEAAmE;QACnE,eAAe;QACf,IACE,MAAM,CAAC,cAAc,KAAK,WAAW;YACrC,IAAI,CAAC,mBAAmB,KAAK,SAAS;YACtC,IAAI,CAAC,mBAAmB,KAAK,MAAM,CAAC,WAAW,EAC/C,CAAC;YACD,OAAO,YAAY,CAAC;QACtB,CAAC;QACD,OAAO,MAAM,CAAC,CAAC,SAAS;IAC1B,CAAC;IACD,OAAO,YAAY,CAAC,CAAC,2CAA2C;AAClE,CAAC"}
|
package/dist/cli.d.ts
ADDED
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import type { HiveGraphSearchResult } from "./hive-graph/search-types.js";
|
|
3
|
+
import type { Tenancy } from "./hive-graph/model.js";
|
|
4
|
+
import type { HiveGraphStore } from "./hive-graph/store.js";
|
|
5
|
+
import { type ReviewDecision } from "./registration/review-cli.js";
|
|
6
|
+
import { type PendingReviewStore, type PendingReviewCandidate } from "./registration/review-store.js";
|
|
7
|
+
import { type EmbedProvider } from "./embeddings/provider.js";
|
|
8
|
+
import { type BroodRunOptions, type AsyncBroodConfig, type AsyncBroodRuntimeDeps } from "./brooding/index.js";
|
|
9
|
+
/**
|
|
10
|
+
* The dispatch decision for `nectar brood <args>` (PRD-007d), factored out as a
|
|
11
|
+
* pure function so the arg parsing + routing is unit-testable without the CLI's
|
|
12
|
+
* process-level side effects.
|
|
13
|
+
*
|
|
14
|
+
* - `errors` — a malformed flag (e.g. `--limit abc`); the CLI prints and exits 2.
|
|
15
|
+
* - `dry-run` — `--dry-run`: a read-only local cost preview (no LLM call, no writes).
|
|
16
|
+
* - `run` — a mutating brood; executes daemon-side (see {@link runBroodCommand}).
|
|
17
|
+
*/
|
|
18
|
+
export type BroodInvocation = {
|
|
19
|
+
readonly kind: "errors";
|
|
20
|
+
readonly errors: readonly string[];
|
|
21
|
+
} | {
|
|
22
|
+
readonly kind: "dry-run";
|
|
23
|
+
readonly options: BroodRunOptions;
|
|
24
|
+
} | {
|
|
25
|
+
readonly kind: "run";
|
|
26
|
+
readonly options: BroodRunOptions;
|
|
27
|
+
};
|
|
28
|
+
export declare function classifyBroodInvocation(broodArgs: readonly string[]): BroodInvocation;
|
|
29
|
+
/** Deps for {@link runBroodMutatingVerb}: the durable async store + the brood seams. */
|
|
30
|
+
export interface BroodMutatingVerbDeps {
|
|
31
|
+
readonly config: AsyncBroodConfig;
|
|
32
|
+
readonly deps: AsyncBroodRuntimeDeps;
|
|
33
|
+
readonly options?: BroodRunOptions;
|
|
34
|
+
out(line: string): void;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Run a mutating brood against the durable async store (AC-018b.8): `runBroodAsync`
|
|
38
|
+
* discovers, mints, describes, and persists to Deep Lake directly (it consumes the
|
|
39
|
+
* async store, so no sync/async bridge is needed here). Returns 0 on success.
|
|
40
|
+
*/
|
|
41
|
+
export declare function runBroodMutatingVerb(d: BroodMutatingVerbDeps): Promise<number>;
|
|
42
|
+
/** Deps for {@link runPruneVerb}: any sync store (the bridge in prod, an in-memory store in tests). */
|
|
43
|
+
export interface PruneVerbDeps {
|
|
44
|
+
readonly store: HiveGraphStore;
|
|
45
|
+
readonly tenancy: Tenancy;
|
|
46
|
+
existsOnDisk(relPath: string): boolean;
|
|
47
|
+
readonly confirm: boolean;
|
|
48
|
+
out(line: string): void;
|
|
49
|
+
now?(): string;
|
|
50
|
+
}
|
|
51
|
+
/** Run `prune` (preview or `--confirm` delete) against the injected store (AC-018b.8). Returns 0. */
|
|
52
|
+
export declare function runPruneVerb(deps: PruneVerbDeps): number;
|
|
53
|
+
/** Deps for {@link runReviewMatchesVerb}: any sync store + the pending-review queue + a decider. */
|
|
54
|
+
export interface ReviewMatchesVerbDeps {
|
|
55
|
+
readonly store: HiveGraphStore;
|
|
56
|
+
readonly tenancy: Tenancy;
|
|
57
|
+
readonly pendingReviews: PendingReviewStore;
|
|
58
|
+
decide(candidate: PendingReviewCandidate, preview: string): Promise<ReviewDecision> | ReviewDecision;
|
|
59
|
+
out(line: string): void;
|
|
60
|
+
now?(): string;
|
|
61
|
+
}
|
|
62
|
+
/** Run `review-matches` against the injected store (AC-018b.8). Returns 0. */
|
|
63
|
+
export declare function runReviewMatchesVerb(deps: ReviewMatchesVerbDeps): Promise<number>;
|
|
64
|
+
/**
|
|
65
|
+
* The interactive review decider's IO seam (CodeRabbit PR-18 finding #6):
|
|
66
|
+
* factored out of {@link interactiveReviewDecider} so a test can drive it with
|
|
67
|
+
* a fake `question`/`write` pair instead of real stdin/stdout, and so the
|
|
68
|
+
* decider is self-contained (it prints its own context rather than relying on
|
|
69
|
+
* a caller having already done so earlier in the same loop iteration).
|
|
70
|
+
*/
|
|
71
|
+
export interface InteractiveReviewIo {
|
|
72
|
+
/** True for a real TTY; a non-TTY input defaults every candidate to `skip`. */
|
|
73
|
+
readonly isTTY: boolean;
|
|
74
|
+
/** Ask the accept/reject/skip question and resolve with the raw answer. */
|
|
75
|
+
question(prompt: string): Promise<string>;
|
|
76
|
+
/** Write one line of context (the preview) before asking. */
|
|
77
|
+
write(line: string): void;
|
|
78
|
+
/** Release any resources the IO holds (e.g. a readline interface on stdin). */
|
|
79
|
+
close(): void;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* A stdin-driven per-candidate decider for the interactive `review-matches`
|
|
83
|
+
* prompt. On a non-TTY stdin (a script, CI) it defaults every candidate to
|
|
84
|
+
* `skip` (the safe, non-destructive choice) rather than blocking on input; a
|
|
85
|
+
* real TTY gets the preview printed, then an accept/reject/skip prompt.
|
|
86
|
+
* Returns a `close` so the caller releases stdin (otherwise the readline
|
|
87
|
+
* interface would keep the process alive).
|
|
88
|
+
*
|
|
89
|
+
* CodeRabbit PR-18 finding #6: the prior implementation's `decide` ignored its
|
|
90
|
+
* `candidate`/`preview` parameters entirely, so on its own it asked
|
|
91
|
+
* accept/reject/skip with zero printed context. `runReviewMatches`
|
|
92
|
+
* (`review-cli.ts`) happens to print the same preview via `out()` immediately
|
|
93
|
+
* before calling `decide` today, but `decide` should not depend on that
|
|
94
|
+
* caller-side ordering to be usable - it prints the preview itself now.
|
|
95
|
+
*/
|
|
96
|
+
export declare function interactiveReviewDecider(io?: InteractiveReviewIo): {
|
|
97
|
+
decide: (candidate: PendingReviewCandidate, preview: string) => Promise<ReviewDecision>;
|
|
98
|
+
close: () => void;
|
|
99
|
+
};
|
|
100
|
+
/**
|
|
101
|
+
* Resolve the embed provider + its active embed model id for the CLI's
|
|
102
|
+
* mutating brood deps, the same way the daemon wiring does
|
|
103
|
+
* (`api/daemon-api-wiring.ts`'s `activeEmbedModel`) - CodeRabbit PR-18 finding
|
|
104
|
+
* #7. Exported so the resolution itself (independent of the live Deep Lake
|
|
105
|
+
* context `runBroodMutating` also needs) is unit-testable without network
|
|
106
|
+
* credentials: without threading `embedModelId` through, CLI-brooded rows
|
|
107
|
+
* stamped `embed_model = null` and were never requeued on a provider switch
|
|
108
|
+
* (AC-018i.3).
|
|
109
|
+
*/
|
|
110
|
+
export declare function resolveCliBroodEmbedDeps(): {
|
|
111
|
+
embedProvider: EmbedProvider;
|
|
112
|
+
embedModelId: string | null;
|
|
113
|
+
};
|
|
114
|
+
/**
|
|
115
|
+
* The parsed `nectar search` invocation (PRD-012b). Factored out as a pure
|
|
116
|
+
* function so the flag grammar is unit-testable without the CLI's process-level
|
|
117
|
+
* side effects, mirroring {@link classifyBroodInvocation}.
|
|
118
|
+
*/
|
|
119
|
+
export type SearchInvocation = {
|
|
120
|
+
readonly kind: "errors";
|
|
121
|
+
readonly errors: readonly string[];
|
|
122
|
+
} | {
|
|
123
|
+
readonly kind: "run";
|
|
124
|
+
readonly query: string;
|
|
125
|
+
readonly limit: number | undefined;
|
|
126
|
+
readonly json: boolean;
|
|
127
|
+
};
|
|
128
|
+
/**
|
|
129
|
+
* Parse `nectar search <query> [--limit N] [--json]`. The positional
|
|
130
|
+
* (non-flag) tokens join into the query; `--limit N`/`--limit=N` sets the cap
|
|
131
|
+
* (a non-positive-integer value is an error); `--json` emits raw JSON. A
|
|
132
|
+
* missing query or an unknown flag is an error.
|
|
133
|
+
*/
|
|
134
|
+
export declare function parseSearchArgs(args: readonly string[]): SearchInvocation;
|
|
135
|
+
/** Render the engine result as a human-readable ranked table (default, non-`--json`). */
|
|
136
|
+
export declare function renderSearchTable(result: HiveGraphSearchResult): string;
|
|
137
|
+
declare function main(argv: readonly string[]): Promise<number>;
|
|
138
|
+
export { main };
|
|
139
|
+
//# sourceMappingURL=cli.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|