@treeseed/sdk 0.11.0 → 0.12.5
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 +9 -4
- package/dist/agent-capacity.d.ts +916 -0
- package/dist/agent-capacity.js +1600 -0
- package/dist/agent-tools.d.ts +37 -0
- package/dist/agent-tools.js +301 -0
- package/dist/api/app.d.ts +1 -1
- package/dist/api/auth/d1-database.d.ts +2 -2
- package/dist/api/auth/d1-provider.d.ts +4 -4
- package/dist/api/auth/d1-store.d.ts +2 -2
- package/dist/api/auth/memory-provider.d.ts +1 -1
- package/dist/api/auth/tokens.d.ts +1 -1
- package/dist/api/config.d.ts +3 -1
- package/dist/api/config.js +34 -10
- package/dist/api/http.d.ts +2 -2
- package/dist/api/index.d.ts +10 -10
- package/dist/api/index.js +4 -2
- package/dist/api/operations-routes.d.ts +3 -3
- package/dist/api/operations.d.ts +1 -1
- package/dist/api/providers.d.ts +1 -1
- package/dist/api/providers.js +21 -4
- package/dist/api/railway.d.ts +3 -2
- package/dist/api/sdk-dispatch.d.ts +4 -4
- package/dist/api/sdk-routes.d.ts +2 -2
- package/dist/api/templates.d.ts +2 -2
- package/dist/api/types.d.ts +3 -2
- package/dist/capacity-provider.d.ts +117 -60
- package/dist/capacity-provider.js +215 -43
- package/dist/capacity.d.ts +2 -2
- package/dist/cli-tools.d.ts +1 -1
- package/dist/content-operations.d.ts +97 -0
- package/dist/content-operations.js +250 -0
- package/dist/content-store.d.ts +4 -4
- package/dist/control-plane-client.d.ts +13 -18
- package/dist/control-plane-client.js +8 -86
- package/dist/control-plane.d.ts +2 -2
- package/dist/copilot.d.ts +3 -0
- package/dist/copilot.js +16 -1
- package/dist/d1-http.d.ts +1 -1
- package/dist/d1-store.d.ts +32 -57
- package/dist/d1-store.js +115 -318
- package/dist/db/d1.d.ts +1 -232
- package/dist/db/index.d.ts +3 -3
- package/dist/db/market-schema.d.ts +49037 -11843
- package/dist/db/market-schema.js +1788 -50
- package/dist/db/node-sqlite.d.ts +1 -232
- package/dist/db/schema.d.ts +0 -462
- package/dist/db/schema.js +2 -22
- package/dist/dispatch.d.ts +1 -1
- package/dist/dispatch.js +0 -11
- package/dist/fixture-support.js +52 -4
- package/dist/governance.d.ts +133 -0
- package/dist/governance.js +285 -0
- package/dist/graph/build.d.ts +2 -2
- package/dist/graph/context-query-contracts.d.ts +1 -1
- package/dist/graph/dsl.d.ts +1 -1
- package/dist/graph/query.d.ts +4 -4
- package/dist/graph/ranking.d.ts +1 -1
- package/dist/graph/schema.d.ts +1 -1
- package/dist/graph.d.ts +11 -11
- package/dist/guarantees/index.d.ts +425 -0
- package/dist/guarantees/index.js +1146 -0
- package/dist/hosting/apps.d.ts +1 -1
- package/dist/hosting/builtins.d.ts +1 -1
- package/dist/hosting/builtins.js +9 -198
- package/dist/hosting/contracts.d.ts +3 -2
- package/dist/hosting/graph.d.ts +24 -21
- package/dist/hosting/graph.js +280 -294
- package/dist/hosting/index.d.ts +4 -4
- package/dist/index.d.ts +88 -74
- package/dist/index.js +81 -10
- package/dist/local-dev/managed-dev.d.ts +85 -0
- package/dist/local-dev/managed-dev.js +368 -0
- package/dist/managed-dependencies.d.ts +9 -0
- package/dist/managed-dependencies.js +10 -8
- package/dist/market-client.d.ts +265 -7
- package/dist/market-client.js +381 -9
- package/dist/model-registry.d.ts +1 -1
- package/dist/model-registry.js +19 -19
- package/dist/operations/agent-tools.d.ts +2 -11
- package/dist/operations/agent-tools.js +2 -14
- package/dist/operations/providers/default.d.ts +1 -1
- package/dist/operations/providers/default.js +20 -37
- package/dist/operations/repository-operations.d.ts +26 -2
- package/dist/operations/repository-operations.js +159 -1
- package/dist/operations/runtime.d.ts +3 -3
- package/dist/operations/services/bootstrap-runner.d.ts +1 -1
- package/dist/operations/services/build-warning-policy.d.ts +34 -0
- package/dist/operations/services/build-warning-policy.js +81 -82
- package/dist/operations/services/commit-message-provider.js +4 -4
- package/dist/operations/services/config-runtime.d.ts +73 -19
- package/dist/operations/services/config-runtime.js +276 -100
- package/dist/operations/services/deploy.d.ts +41 -622
- package/dist/operations/services/deploy.js +181 -213
- package/dist/operations/services/deployment-readiness.d.ts +1 -1
- package/dist/operations/services/deployment-readiness.js +38 -7
- package/dist/operations/services/git-remote-policy.js +12 -4
- package/dist/operations/services/git-runner.d.ts +66 -0
- package/dist/operations/services/git-runner.js +479 -0
- package/dist/operations/services/git-workflow.d.ts +43 -5
- package/dist/operations/services/git-workflow.js +242 -20
- package/dist/operations/services/github-actions-verification.d.ts +3 -1
- package/dist/operations/services/github-actions-verification.js +11 -3
- package/dist/operations/services/github-api.js +21 -5
- package/dist/operations/services/github-automation.d.ts +3 -3
- package/dist/operations/services/github-automation.js +15 -18
- package/dist/operations/services/github-credentials.js +2 -1
- package/dist/operations/services/hosted-service-checks.d.ts +19 -1
- package/dist/operations/services/hosted-service-checks.js +162 -11
- package/dist/operations/services/hosting-audit.d.ts +2 -2
- package/dist/operations/services/hosting-audit.js +7 -7
- package/dist/operations/services/hub-launch.d.ts +1 -1
- package/dist/operations/services/hub-provider-launch.d.ts +5 -5
- package/dist/operations/services/hub-provider-launch.js +19 -14
- package/dist/operations/services/live-hosted-service-checks.d.ts +2 -1
- package/dist/operations/services/live-hosted-service-checks.js +193 -80
- package/dist/operations/services/local-dev.js +0 -1
- package/dist/operations/services/managed-host-security.d.ts +1 -1
- package/dist/operations/services/managed-repositories.d.ts +37 -0
- package/dist/operations/services/managed-repositories.js +177 -0
- package/dist/operations/services/operations-runner-smoke.d.ts +3 -2
- package/dist/operations/services/operations-runner-smoke.js +22 -4
- package/dist/operations/services/package-adapters.d.ts +77 -2
- package/dist/operations/services/package-adapters.js +629 -56
- package/dist/operations/services/package-reference-policy.d.ts +12 -88
- package/dist/operations/services/package-reference-policy.js +81 -213
- package/dist/operations/services/project-host-operations.d.ts +4 -4
- package/dist/operations/services/project-platform.d.ts +19 -193
- package/dist/operations/services/project-platform.js +31 -103
- package/dist/operations/services/project-web-monitor.d.ts +2 -2
- package/dist/operations/services/project-web-monitor.js +97 -2
- package/dist/operations/services/railway-api.d.ts +36 -7
- package/dist/operations/services/railway-api.js +331 -100
- package/dist/operations/services/railway-deploy.d.ts +7 -95
- package/dist/operations/services/railway-deploy.js +334 -742
- package/dist/operations/services/release-history.js +3 -4
- package/dist/operations/services/release-proof-ledger.d.ts +13 -0
- package/dist/operations/services/release-proof-ledger.js +81 -0
- package/dist/operations/services/release-proof-planner.d.ts +48 -0
- package/dist/operations/services/release-proof-planner.js +195 -0
- package/dist/operations/services/release-proof-runner.d.ts +16 -0
- package/dist/operations/services/release-proof-runner.js +169 -0
- package/dist/operations/services/release-proof.d.ts +81 -0
- package/dist/operations/services/release-proof.js +79 -0
- package/dist/operations/services/repository-save-orchestrator.d.ts +6 -7
- package/dist/operations/services/repository-save-orchestrator.js +353 -174
- package/dist/operations/services/runtime-paths.d.ts +1 -3
- package/dist/operations/services/runtime-paths.js +0 -4
- package/dist/operations/services/runtime-tools.d.ts +1 -192
- package/dist/operations/services/runtime-tools.js +4 -444
- package/dist/operations/services/save-deploy-preflight.js +9 -1
- package/dist/operations/services/template-host-bindings.d.ts +2 -2
- package/dist/operations/services/template-host-bindings.js +3 -2
- package/dist/operations/services/template-registry.d.ts +6 -6
- package/dist/operations/services/template-registry.js +33 -14
- package/dist/operations/services/template-secret-sync.d.ts +3 -3
- package/dist/operations/services/workflow-timing.d.ts +25 -0
- package/dist/operations/services/workflow-timing.js +79 -0
- package/dist/operations/services/workspace-dependency-mode.js +41 -4
- package/dist/operations/services/workspace-preflight.js +8 -8
- package/dist/operations/services/workspace-save-script.d.ts +4 -4
- package/dist/operations/services/workspace-save.d.ts +1 -0
- package/dist/operations/services/workspace-save.js +41 -18
- package/dist/operations/services/workspace-tools.js +40 -6
- package/dist/operations-registry.d.ts +1 -1
- package/dist/operations-registry.js +5 -6
- package/dist/operations-types.d.ts +1 -1
- package/dist/operations.d.ts +17 -11
- package/dist/operations.js +57 -3
- package/dist/platform/book-export.js +2 -0
- package/dist/platform/books-data.d.ts +1 -1
- package/dist/platform/config.d.ts +27 -0
- package/dist/platform/config.js +100 -0
- package/dist/platform/content-runtime-source.d.ts +54 -0
- package/dist/platform/content-runtime-source.js +169 -0
- package/dist/platform/contracts.d.ts +6 -1
- package/dist/platform/deploy-config.d.ts +1 -1
- package/dist/platform/deploy-config.js +7 -1
- package/dist/platform/deploy-runtime.d.ts +1 -1
- package/dist/platform/desired-state.d.ts +66 -0
- package/dist/platform/desired-state.js +1052 -0
- package/dist/platform/env.yaml +414 -19
- package/dist/platform/environment.d.ts +2 -2
- package/dist/platform/environment.js +54 -22
- package/dist/platform/local-content-materialization.d.ts +9 -0
- package/dist/platform/local-content-materialization.js +212 -0
- package/dist/platform/plugin.d.ts +5 -5
- package/dist/platform/plugins/runtime.d.ts +3 -3
- package/dist/platform/plugins/runtime.js +62 -1
- package/dist/platform/plugins.d.ts +6 -6
- package/dist/platform/published-content-pipeline.d.ts +3 -3
- package/dist/platform/published-content-pipeline.js +5 -1
- package/dist/platform/published-content.d.ts +4 -3
- package/dist/platform/site-config-schema.d.ts +1 -0
- package/dist/platform/site-config-schema.js +4 -1
- package/dist/platform/tenant/runtime-config.d.ts +152 -2
- package/dist/platform/tenant-config.d.ts +1 -1
- package/dist/platform/utils/site-config-schema.d.ts +154 -0
- package/dist/platform/utils/site-config-schema.js +400 -461
- package/dist/platform-operation-store.d.ts +1 -1
- package/dist/plugin-default.d.ts +1 -1
- package/dist/plugin-default.js +27 -12
- package/dist/project-import.d.ts +91 -0
- package/dist/project-import.js +257 -0
- package/dist/project-workflow.d.ts +1 -1
- package/dist/reconcile/bootstrap-systems.d.ts +2 -2
- package/dist/reconcile/bootstrap-systems.js +3 -3
- package/dist/reconcile/builtin-adapters.d.ts +7 -1
- package/dist/reconcile/builtin-adapters.js +2924 -346
- package/dist/reconcile/contracts.d.ts +15 -2
- package/dist/reconcile/desired-state.d.ts +2 -193
- package/dist/reconcile/desired-state.js +24 -33
- package/dist/reconcile/engine.d.ts +60 -397
- package/dist/reconcile/engine.js +182 -18
- package/dist/reconcile/index.d.ts +10 -10
- package/dist/reconcile/live-acceptance.d.ts +22 -1
- package/dist/reconcile/live-acceptance.js +456 -44
- package/dist/reconcile/providers/docker-private.d.ts +54 -0
- package/dist/reconcile/providers/docker-private.js +101 -0
- package/dist/reconcile/providers/github-private.d.ts +65 -0
- package/dist/reconcile/providers/github-private.js +119 -0
- package/dist/reconcile/providers/local-private.d.ts +28 -0
- package/dist/reconcile/providers/local-private.js +75 -0
- package/dist/reconcile/providers/railway-iac.d.ts +66 -0
- package/dist/reconcile/providers/railway-iac.js +275 -0
- package/dist/reconcile/providers/release-private.d.ts +92 -0
- package/dist/reconcile/providers/release-private.js +152 -0
- package/dist/reconcile/registry.d.ts +2 -2
- package/dist/reconcile/registry.js +16 -1
- package/dist/reconcile/state.d.ts +1 -1
- package/dist/reconcile/state.js +3 -40
- package/dist/reconcile/units.d.ts +1 -1
- package/dist/reconcile/units.js +7 -1
- package/dist/remote.d.ts +6 -6
- package/dist/scenes/artifacts.d.ts +16 -0
- package/dist/scenes/artifacts.js +61 -0
- package/dist/scenes/auth.d.ts +2 -0
- package/dist/scenes/auth.js +28 -0
- package/dist/scenes/base-url.d.ts +12 -0
- package/dist/scenes/base-url.js +123 -0
- package/dist/scenes/builtin-plugins.d.ts +2 -0
- package/dist/scenes/builtin-plugins.js +447 -0
- package/dist/scenes/checkpoints.d.ts +14 -0
- package/dist/scenes/checkpoints.js +33 -0
- package/dist/scenes/device-matrix.d.ts +2 -0
- package/dist/scenes/device-matrix.js +97 -0
- package/dist/scenes/devices.d.ts +11 -0
- package/dist/scenes/devices.js +22 -0
- package/dist/scenes/diagnostics.d.ts +5 -0
- package/dist/scenes/diagnostics.js +22 -0
- package/dist/scenes/diagram-providers.d.ts +2 -0
- package/dist/scenes/diagram-providers.js +181 -0
- package/dist/scenes/diagram-validation.d.ts +22 -0
- package/dist/scenes/diagram-validation.js +74 -0
- package/dist/scenes/environment.d.ts +2 -0
- package/dist/scenes/environment.js +65 -0
- package/dist/scenes/evidence-bundle.d.ts +5 -0
- package/dist/scenes/evidence-bundle.js +42 -0
- package/dist/scenes/evidence-report.d.ts +10 -0
- package/dist/scenes/evidence-report.js +73 -0
- package/dist/scenes/evidence.d.ts +16 -0
- package/dist/scenes/evidence.js +277 -0
- package/dist/scenes/index.d.ts +48 -0
- package/dist/scenes/index.js +312 -0
- package/dist/scenes/inspect.d.ts +9 -0
- package/dist/scenes/inspect.js +64 -0
- package/dist/scenes/loader.d.ts +3 -0
- package/dist/scenes/loader.js +38 -0
- package/dist/scenes/logs.d.ts +2 -0
- package/dist/scenes/logs.js +47 -0
- package/dist/scenes/operations.d.ts +3 -0
- package/dist/scenes/operations.js +128 -0
- package/dist/scenes/phase0.d.ts +9 -0
- package/dist/scenes/phase0.js +637 -0
- package/dist/scenes/planner.d.ts +12 -0
- package/dist/scenes/planner.js +166 -0
- package/dist/scenes/playwright-adapter.d.ts +2 -0
- package/dist/scenes/playwright-adapter.js +63 -0
- package/dist/scenes/plugins.d.ts +5 -0
- package/dist/scenes/plugins.js +115 -0
- package/dist/scenes/progress.d.ts +17 -0
- package/dist/scenes/progress.js +24 -0
- package/dist/scenes/publish-destinations.d.ts +12 -0
- package/dist/scenes/publish-destinations.js +99 -0
- package/dist/scenes/publish-plan-report.d.ts +10 -0
- package/dist/scenes/publish-plan-report.js +70 -0
- package/dist/scenes/publish-plan.d.ts +15 -0
- package/dist/scenes/publish-plan.js +248 -0
- package/dist/scenes/publish-redaction.d.ts +16 -0
- package/dist/scenes/publish-redaction.js +148 -0
- package/dist/scenes/publish-release-record.d.ts +13 -0
- package/dist/scenes/publish-release-record.js +34 -0
- package/dist/scenes/publish-report.d.ts +10 -0
- package/dist/scenes/publish-report.js +67 -0
- package/dist/scenes/publish.d.ts +16 -0
- package/dist/scenes/publish.js +298 -0
- package/dist/scenes/registry.d.ts +12 -0
- package/dist/scenes/registry.js +65 -0
- package/dist/scenes/remotion-adapter.d.ts +3 -0
- package/dist/scenes/remotion-adapter.js +94 -0
- package/dist/scenes/remotion-composition-registry.d.ts +2 -0
- package/dist/scenes/remotion-composition-registry.js +12 -0
- package/dist/scenes/remotion-compositions.d.ts +15 -0
- package/dist/scenes/remotion-compositions.js +464 -0
- package/dist/scenes/remotion-diagrams.d.ts +9 -0
- package/dist/scenes/remotion-diagrams.js +188 -0
- package/dist/scenes/remotion-input.d.ts +13 -0
- package/dist/scenes/remotion-input.js +291 -0
- package/dist/scenes/remotion-visuals.d.ts +29 -0
- package/dist/scenes/remotion-visuals.js +198 -0
- package/dist/scenes/render-media-assets.d.ts +9 -0
- package/dist/scenes/render-media-assets.js +117 -0
- package/dist/scenes/render-report.d.ts +10 -0
- package/dist/scenes/render-report.js +27 -0
- package/dist/scenes/render.d.ts +2 -0
- package/dist/scenes/render.js +218 -0
- package/dist/scenes/reporter.d.ts +3 -0
- package/dist/scenes/reporter.js +101 -0
- package/dist/scenes/resume.d.ts +2 -0
- package/dist/scenes/resume.js +79 -0
- package/dist/scenes/runner.d.ts +2 -0
- package/dist/scenes/runner.js +674 -0
- package/dist/scenes/schema.d.ts +6 -0
- package/dist/scenes/schema.js +994 -0
- package/dist/scenes/seed.d.ts +2 -0
- package/dist/scenes/seed.js +83 -0
- package/dist/scenes/segments.d.ts +15 -0
- package/dist/scenes/segments.js +79 -0
- package/dist/scenes/selectors.d.ts +3 -0
- package/dist/scenes/selectors.js +21 -0
- package/dist/scenes/timeline.d.ts +11 -0
- package/dist/scenes/timeline.js +26 -0
- package/dist/scenes/timeouts.d.ts +6 -0
- package/dist/scenes/timeouts.js +17 -0
- package/dist/scenes/training-captions.d.ts +14 -0
- package/dist/scenes/training-captions.js +98 -0
- package/dist/scenes/training-report.d.ts +10 -0
- package/dist/scenes/training-report.js +78 -0
- package/dist/scenes/training-transcript.d.ts +24 -0
- package/dist/scenes/training-transcript.js +204 -0
- package/dist/scenes/training.d.ts +10 -0
- package/dist/scenes/training.js +134 -0
- package/dist/scenes/types.d.ts +1872 -0
- package/dist/scenes/types.js +8 -0
- package/dist/scenes/visual-audit-contact-sheets.d.ts +6 -0
- package/dist/scenes/visual-audit-contact-sheets.js +119 -0
- package/dist/scenes/visual-audit-fixtures.d.ts +25 -0
- package/dist/scenes/visual-audit-fixtures.js +210 -0
- package/dist/scenes/visual-audit-report.d.ts +11 -0
- package/dist/scenes/visual-audit-report.js +85 -0
- package/dist/scenes/visual-audit-review.d.ts +23 -0
- package/dist/scenes/visual-audit-review.js +829 -0
- package/dist/scenes/visual-audit-routes.d.ts +13 -0
- package/dist/scenes/visual-audit-routes.js +308 -0
- package/dist/scenes/visual-audit.d.ts +3 -0
- package/dist/scenes/visual-audit.js +596 -0
- package/dist/scripts/build-dist.js +154 -40
- package/dist/scripts/check-build-warnings.js +42 -53
- package/dist/scripts/cleanup-markdown.js +1 -1
- package/dist/scripts/cli-test-fixtures.js +24 -28
- package/dist/scripts/migrate-journey-csv-to-guarantees.js +140 -0
- package/dist/scripts/package-tools.js +12 -1
- package/dist/scripts/prepare.js +3 -7
- package/dist/scripts/release-verify.js +2 -5
- package/dist/scripts/run-fixture-astro-command.js +1 -1
- package/dist/scripts/template-catalog.test.js +68 -82
- package/dist/scripts/tenant-dev.js +0 -10
- package/dist/scripts/test-cloudflare-local.js +1 -1
- package/dist/scripts/test-scaffold.js +0 -1
- package/dist/scripts/test-smoke.js +3 -3
- package/dist/scripts/treeseed-build-dist.js +4 -7
- package/dist/scripts/treeseed-release-verify.js +1 -1
- package/dist/scripts/verify-driver.js +30 -21
- package/dist/scripts/workflow-commands.test.js +18 -27
- package/dist/scripts/workspace-command-e2e.js +1 -1
- package/dist/scripts/workspace-lint.js +6 -0
- package/dist/scripts/workspace-release-test.js +90 -1
- package/dist/scripts/workspace-test.js +6 -0
- package/dist/sdk-dispatch.d.ts +1 -1
- package/dist/sdk-dispatch.js +0 -16
- package/dist/sdk-fields.d.ts +1 -1
- package/dist/sdk-filters.d.ts +1 -1
- package/dist/sdk-types.d.ts +1184 -113
- package/dist/sdk-types.js +393 -0
- package/dist/sdk.d.ts +74 -79
- package/dist/sdk.js +27 -36
- package/dist/secrets-capability.d.ts +421 -0
- package/dist/secrets-capability.js +530 -0
- package/dist/seeds/normalize.js +1 -0
- package/dist/seeds/planner.js +38 -0
- package/dist/seeds/schema.js +293 -4
- package/dist/seeds/types.d.ts +60 -0
- package/dist/seeds/types.js +9 -1
- package/dist/service-credentials.d.ts +54 -0
- package/dist/service-credentials.js +112 -0
- package/dist/stores/cursor-store.d.ts +2 -2
- package/dist/stores/envelopes.d.ts +1 -1
- package/dist/stores/helpers.d.ts +1 -1
- package/dist/stores/lease-store.d.ts +2 -2
- package/dist/stores/message-store.d.ts +2 -2
- package/dist/stores/operational-store.d.ts +3 -26
- package/dist/stores/operational-store.js +0 -225
- package/dist/stores/project-workflow-store.d.ts +2 -2
- package/dist/stores/run-store.d.ts +2 -3
- package/dist/stores/run-store.js +0 -98
- package/dist/stores/subscription-store.d.ts +2 -3
- package/dist/stores/subscription-store.js +0 -100
- package/dist/template-catalog.d.ts +1 -1
- package/dist/template-launch-requirements.d.ts +2 -2
- package/dist/template-launch-ui.d.ts +2 -2
- package/dist/treedx/adapters.d.ts +6 -6
- package/dist/treedx/client.d.ts +1 -1
- package/dist/treedx/errors.d.ts +1 -1
- package/dist/treedx/federated-client.d.ts +3 -3
- package/dist/treedx/graph-adapter.d.ts +2 -2
- package/dist/treedx/index.d.ts +14 -14
- package/dist/treedx/market-integration.d.ts +1 -1
- package/dist/treedx/ports.d.ts +30 -30
- package/dist/treedx/query-adapter.d.ts +3 -3
- package/dist/treedx/registry-client.d.ts +2 -2
- package/dist/treedx/repository-adapter.d.ts +4 -4
- package/dist/treedx/repository-adapter.js +14 -3
- package/dist/treedx/sdk-integration.d.ts +3 -3
- package/dist/treedx/types.d.ts +2 -2
- package/dist/treedx/workspace-adapter.d.ts +2 -2
- package/dist/treedx-backends.d.ts +13 -11
- package/dist/treedx-backends.js +52 -50
- package/dist/treedx-client.d.ts +3 -0
- package/dist/treedx-client.js +10 -1
- package/dist/treeseed/services/compose.yml +2 -3
- package/dist/treeseed/template-catalog/catalog.fixture.json +4 -4
- package/dist/types/agents.d.ts +256 -0
- package/dist/types/agents.js +42 -1
- package/dist/verification.d.ts +1 -0
- package/dist/verification.js +143 -14
- package/dist/workflow/operations.d.ts +510 -559
- package/dist/workflow/operations.js +1891 -1342
- package/dist/workflow/policy.js +19 -7
- package/dist/workflow/runs.d.ts +9 -3
- package/dist/workflow/runs.js +66 -26
- package/dist/workflow/session.d.ts +4 -1
- package/dist/workflow/session.js +50 -10
- package/dist/workflow/worktrees.d.ts +6 -2
- package/dist/workflow/worktrees.js +98 -15
- package/dist/workflow-state.d.ts +5 -5
- package/dist/workflow-state.js +27 -17
- package/dist/workflow-support.d.ts +26 -25
- package/dist/workflow-support.js +27 -31
- package/dist/workflow.d.ts +46 -16
- package/dist/workflow.js +19 -7
- package/drizzle/d1/0000_treeseed_d1.sql +0 -18
- package/drizzle/market/0000_market_control_plane.sql +1793 -1499
- package/drizzle/market/0005_agent_capacity_coordination.sql +145 -0
- package/drizzle/market/0006_provider_assignment_lifecycle.sql +9 -0
- package/drizzle/market/0007_agent_architecture_gap_closure.sql +157 -0
- package/drizzle/market/0008_agent_capacity_operational_closure.sql +27 -0
- package/drizzle/market/0009_agent_capacity_runtime_hardening.sql +29 -0
- package/drizzle/market/0010_secrets_capability_persistence.sql +130 -0
- package/drizzle/market/0011_github_app_adapter.sql +47 -0
- package/drizzle/market/0012_workday_test_runs.sql +44 -0
- package/drizzle/market/0013_runtime_task_lifecycle.sql +39 -0
- package/drizzle/market/0014_governance_pipeline.sql +189 -0
- package/package.json +75 -18
- package/scripts/{verify-driver.mjs → verify-driver.ts} +19 -4
- package/templates/github/deploy-web.workflow.yml +12 -8
- package/dist/operations/services/mailpit-runtime.d.ts +0 -20
- package/dist/operations/services/mailpit-runtime.js +0 -67
- package/dist/operations/services/release-candidate.d.ts +0 -60
- package/dist/operations/services/release-candidate.js +0 -953
- package/dist/scripts/ensure-mailpit.js +0 -48
- package/dist/scripts/logs-mailpit.js +0 -2
- package/dist/scripts/run-ts.js +0 -45
- package/dist/scripts/stop-mailpit.js +0 -5
- package/dist/scripts/treeseed-run-ts.js +0 -45
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { TreeDxRepositoryAdapter, resolveContentDir, type TreeDxContentMutationResult, type TreeDxRepositoryAdapterOptions, } from './repository-adapter.
|
|
2
|
-
export { TreeDxQueryAdapter, type TreeDxQueryAdapterOptions } from './query-adapter.
|
|
3
|
-
export { TreeDxGraphAdapter, type TreeDxGraphAdapterOptions } from './graph-adapter.
|
|
4
|
-
export { TreeDxWorkspaceAdapter, type TreeDxWorkspaceAdapterOptions } from './workspace-adapter.
|
|
5
|
-
export { LocalGraphPort, LocalRepositoryPort, LocalRepositoryQueryPort, TreeDxArtifactPort, TreeDxExecPort, TreeDxFederatedPort, TreeDxGraphPort, TreeDxRegistryPort, TreeDxRepositoryPort, TreeDxRepositoryQueryPort, } from './ports.
|
|
6
|
-
export type * from './ports.
|
|
1
|
+
export { TreeDxRepositoryAdapter, resolveContentDir, type TreeDxContentMutationResult, type TreeDxRepositoryAdapterOptions, } from './repository-adapter.js';
|
|
2
|
+
export { TreeDxQueryAdapter, type TreeDxQueryAdapterOptions } from './query-adapter.js';
|
|
3
|
+
export { TreeDxGraphAdapter, type TreeDxGraphAdapterOptions } from './graph-adapter.js';
|
|
4
|
+
export { TreeDxWorkspaceAdapter, type TreeDxWorkspaceAdapterOptions } from './workspace-adapter.js';
|
|
5
|
+
export { LocalGraphPort, LocalRepositoryPort, LocalRepositoryQueryPort, TreeDxArtifactPort, TreeDxExecPort, TreeDxFederatedPort, TreeDxGraphPort, TreeDxRegistryPort, TreeDxRepositoryPort, TreeDxRepositoryQueryPort, } from './ports.js';
|
|
6
|
+
export type * from './ports.js';
|
package/dist/treedx/client.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { SdkGraphSearchResult, TreeDxAuditEvent, TreeDxAuthMode, TreeDxBlob, TreeDxBlobUploadAbortRequest, TreeDxBlobUploadCompleteRequest, TreeDxBlobUploadCreateRequest, TreeDxBlobUploadPart, TreeDxBlobUploadPartRequest, TreeDxBlobUploadSession, TreeDxBlobDeleteRequest, TreeDxBlobDownload, TreeDxBlobDownloadRequest, TreeDxBlobMutationResult, TreeDxBlobReadRequest, TreeDxBlobUploadRequest, TreeDxBlobWriteRequest, TreeDxCapabilityGrant, TreeDxCommitRequest, TreeDxCommitResult, TreeDxContextRequest, TreeDxContextResult, TreeDxCtxParseRequest, TreeDxCtxParseResult, TreeDxDiff, TreeDxEffectiveScope, TreeDxEffectiveScopeRequest, TreeDxExecRequest, TreeDxExecResult, TreeDxFetchRemoteRequest, TreeDxFetchRemoteResult, TreeDxFederatedContextRequest, TreeDxFederatedContextResult, TreeDxFederatedGraphRequest, TreeDxFederatedGraphResult, TreeDxFederatedQueryRequest, TreeDxFederatedQueryResult, TreeDxFederatedSearchRequest, TreeDxFederatedSearchResult, TreeDxArtifact, TreeDxArtifactCleanupRequest, TreeDxArtifactCleanupResult, TreeDxArtifactDeleteRequest, TreeDxArtifactDownload, TreeDxArtifactExportRequest, TreeDxArtifactGetRequest, TreeDxArtifactListRequest, TreeDxFederationQueryPlan, TreeDxFederationQueryPlanRequest, TreeDxFile, TreeDxFileMutationResult, TreeDxGraphNodeRequest, TreeDxGraphQueryRequest, TreeDxGraphQueryResult, TreeDxGraphRefreshJob, TreeDxGraphRefreshJobRequest, TreeDxGraphRefreshRequest, TreeDxGraphRefreshResult, TreeDxGraphRelatedRequest, TreeDxGraphSearchRequest, TreeDxGraphSubgraphRequest, TreeDxHealth, TreeDxListTreeRequest, TreeDxMigration, TreeDxMigrationRequest, TreeDxMirrorHealthRequest, TreeDxMirrorHealthResult, TreeDxMirrorPromotionRequest, TreeDxMirrorPromotionResult, TreeDxMirrorSyncRequest, TreeDxMirrorSyncResult, TreeDxNode, TreeDxPatchFileRequest, TreeDxReadFileRequest, TreeDxRepository, TreeDxRepositoryPathsRequest, TreeDxRepositoryPlacement, TreeDxRepositoryQueryRequest, TreeDxRepositoryQueryResult, TreeDxRepositoryReadRequest, TreeDxRepositorySearchRequest, TreeDxSearchRequest, TreeDxSearchIndexCompactRequest, TreeDxSearchIndexCompactResult, TreeDxSearchIndexRefreshRequest, TreeDxSearchIndexRefreshResult, TreeDxSearchIndexStatus, TreeDxSearchIndexStatusRequest, TreeDxSearchResult, TreeDxSnapshot, TreeDxSnapshotBuildRequest, TreeDxStorageBackupRequest, TreeDxStorageBackupResult, TreeDxStorageCompactRequest, TreeDxStorageCompactResult, TreeDxStorageMigration, TreeDxStorageMigrationPlanRequest, TreeDxStorageMigrationRollbackRequest, TreeDxStorageRestoreRequest, TreeDxStorageRestoreResult, TreeDxStorageRestoreVerifyRequest, TreeDxStatus, TreeDxTreeEntry, TreeDxClientOptions, TreeDxPushRequest, TreeDxPushResult, TreeDxWhoami, TreeDxWorkspace, TreeDxCreateWorkspaceRequest, TreeDxDeleteFileRequest, TreeDxDeepHealth, TreeDxWorkspaceRequest, TreeDxWriteFileRequest, TreeDxMetrics, TreeDxReadiness } from './types.
|
|
1
|
+
import type { SdkGraphSearchResult, TreeDxAuditEvent, TreeDxAuthMode, TreeDxBlob, TreeDxBlobUploadAbortRequest, TreeDxBlobUploadCompleteRequest, TreeDxBlobUploadCreateRequest, TreeDxBlobUploadPart, TreeDxBlobUploadPartRequest, TreeDxBlobUploadSession, TreeDxBlobDeleteRequest, TreeDxBlobDownload, TreeDxBlobDownloadRequest, TreeDxBlobMutationResult, TreeDxBlobReadRequest, TreeDxBlobUploadRequest, TreeDxBlobWriteRequest, TreeDxCapabilityGrant, TreeDxCommitRequest, TreeDxCommitResult, TreeDxContextRequest, TreeDxContextResult, TreeDxCtxParseRequest, TreeDxCtxParseResult, TreeDxDiff, TreeDxEffectiveScope, TreeDxEffectiveScopeRequest, TreeDxExecRequest, TreeDxExecResult, TreeDxFetchRemoteRequest, TreeDxFetchRemoteResult, TreeDxFederatedContextRequest, TreeDxFederatedContextResult, TreeDxFederatedGraphRequest, TreeDxFederatedGraphResult, TreeDxFederatedQueryRequest, TreeDxFederatedQueryResult, TreeDxFederatedSearchRequest, TreeDxFederatedSearchResult, TreeDxArtifact, TreeDxArtifactCleanupRequest, TreeDxArtifactCleanupResult, TreeDxArtifactDeleteRequest, TreeDxArtifactDownload, TreeDxArtifactExportRequest, TreeDxArtifactGetRequest, TreeDxArtifactListRequest, TreeDxFederationQueryPlan, TreeDxFederationQueryPlanRequest, TreeDxFile, TreeDxFileMutationResult, TreeDxGraphNodeRequest, TreeDxGraphQueryRequest, TreeDxGraphQueryResult, TreeDxGraphRefreshJob, TreeDxGraphRefreshJobRequest, TreeDxGraphRefreshRequest, TreeDxGraphRefreshResult, TreeDxGraphRelatedRequest, TreeDxGraphSearchRequest, TreeDxGraphSubgraphRequest, TreeDxHealth, TreeDxListTreeRequest, TreeDxMigration, TreeDxMigrationRequest, TreeDxMirrorHealthRequest, TreeDxMirrorHealthResult, TreeDxMirrorPromotionRequest, TreeDxMirrorPromotionResult, TreeDxMirrorSyncRequest, TreeDxMirrorSyncResult, TreeDxNode, TreeDxPatchFileRequest, TreeDxReadFileRequest, TreeDxRepository, TreeDxRepositoryPathsRequest, TreeDxRepositoryPlacement, TreeDxRepositoryQueryRequest, TreeDxRepositoryQueryResult, TreeDxRepositoryReadRequest, TreeDxRepositorySearchRequest, TreeDxSearchRequest, TreeDxSearchIndexCompactRequest, TreeDxSearchIndexCompactResult, TreeDxSearchIndexRefreshRequest, TreeDxSearchIndexRefreshResult, TreeDxSearchIndexStatus, TreeDxSearchIndexStatusRequest, TreeDxSearchResult, TreeDxSnapshot, TreeDxSnapshotBuildRequest, TreeDxStorageBackupRequest, TreeDxStorageBackupResult, TreeDxStorageCompactRequest, TreeDxStorageCompactResult, TreeDxStorageMigration, TreeDxStorageMigrationPlanRequest, TreeDxStorageMigrationRollbackRequest, TreeDxStorageRestoreRequest, TreeDxStorageRestoreResult, TreeDxStorageRestoreVerifyRequest, TreeDxStatus, TreeDxTreeEntry, TreeDxClientOptions, TreeDxPushRequest, TreeDxPushResult, TreeDxWhoami, TreeDxWorkspace, TreeDxCreateWorkspaceRequest, TreeDxDeleteFileRequest, TreeDxDeepHealth, TreeDxWorkspaceRequest, TreeDxWriteFileRequest, TreeDxMetrics, TreeDxReadiness } from './types.js';
|
|
2
2
|
export declare const TREEDX_CLIENT_OPERATION_MAP: {
|
|
3
3
|
readonly health: "getHealth";
|
|
4
4
|
readonly ready: "getReadiness";
|
package/dist/treedx/errors.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { TreeDxClient } from './client.
|
|
2
|
-
import { TreeDxRegistryClient, type TreeDxRegistryClientOptions } from './registry-client.
|
|
3
|
-
import type { TreeDxFederatedContextRequest, TreeDxFederatedContextResult, TreeDxFederatedGraphRequest, TreeDxFederatedGraphResult, TreeDxFederatedQueryRequest, TreeDxFederatedQueryResult, TreeDxFederatedSearchRequest, TreeDxFederatedSearchResult, TreeDxFederationQueryPlan, TreeDxFederationQueryPlanRequest } from './types.
|
|
1
|
+
import { TreeDxClient } from './client.js';
|
|
2
|
+
import { TreeDxRegistryClient, type TreeDxRegistryClientOptions } from './registry-client.js';
|
|
3
|
+
import type { TreeDxFederatedContextRequest, TreeDxFederatedContextResult, TreeDxFederatedGraphRequest, TreeDxFederatedGraphResult, TreeDxFederatedQueryRequest, TreeDxFederatedQueryResult, TreeDxFederatedSearchRequest, TreeDxFederatedSearchResult, TreeDxFederationQueryPlan, TreeDxFederationQueryPlanRequest } from './types.js';
|
|
4
4
|
export interface TreeDxFederatedClientOptions {
|
|
5
5
|
registry: TreeDxRegistryClientOptions | TreeDxRegistryClient;
|
|
6
6
|
token?: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { TreeDxClient } from './client.
|
|
2
|
-
import type { SdkContextPack, SdkContextPackRequest, SdkGraphDslParseResult, SdkGraphNode, SdkGraphQueryOptions, SdkGraphQueryRequest, SdkGraphQueryResult, SdkGraphRefreshPayload, SdkGraphSearchOptions, SdkGraphSearchResult, SdkGraphSeedResolution, SdkGraphTraversalResult, TreeDxGraphRefreshRequest } from './types.
|
|
1
|
+
import { TreeDxClient } from './client.js';
|
|
2
|
+
import type { SdkContextPack, SdkContextPackRequest, SdkGraphDslParseResult, SdkGraphNode, SdkGraphQueryOptions, SdkGraphQueryRequest, SdkGraphQueryResult, SdkGraphRefreshPayload, SdkGraphSearchOptions, SdkGraphSearchResult, SdkGraphSeedResolution, SdkGraphTraversalResult, TreeDxGraphRefreshRequest } from './types.js';
|
|
3
3
|
export interface TreeDxGraphAdapterOptions {
|
|
4
4
|
client: TreeDxClient;
|
|
5
5
|
repoId?: string;
|
package/dist/treedx/index.d.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
export { TREEDX_CLIENT_OPERATION_MAP, TreeDxClient } from './client.
|
|
2
|
-
export { TreeDxRegistryClient, type TreeDxRegistryClientOptions } from './registry-client.
|
|
3
|
-
export { TreeDxFederatedClient, type TreeDxFederatedClientOptions } from './federated-client.
|
|
4
|
-
export { TreeDxApiError } from './errors.
|
|
5
|
-
export { resolveAgentTreeDxIntegration, type AgentSdkTreeDxIntegration, type AgentSdkTreeDxOptions } from './sdk-integration.
|
|
6
|
-
export { TreeDxRepositoryAdapter, resolveContentDir, type TreeDxContentMutationResult, type TreeDxRepositoryAdapterOptions, } from './repository-adapter.
|
|
7
|
-
export { TreeDxQueryAdapter, type TreeDxQueryAdapterOptions } from './query-adapter.
|
|
8
|
-
export { TreeDxGraphAdapter, type TreeDxGraphAdapterOptions } from './graph-adapter.
|
|
9
|
-
export { TreeDxWorkspaceAdapter, type TreeDxWorkspaceAdapterOptions } from './workspace-adapter.
|
|
10
|
-
export * from './market-integration.
|
|
11
|
-
export { LocalGraphPort, LocalRepositoryPort, LocalRepositoryQueryPort, TreeDxArtifactPort, TreeDxExecPort, TreeDxFederatedPort, TreeDxGraphPort, TreeDxRegistryPort, TreeDxRepositoryPort, TreeDxRepositoryQueryPort, } from './ports.
|
|
12
|
-
export type * from './ports.
|
|
13
|
-
export type * from './types.
|
|
14
|
-
export type { components as TreeDxOpenApiComponents, operations as TreeDxOpenApiOperations, paths as TreeDxOpenApiPaths, } from './generated/openapi-types.
|
|
1
|
+
export { TREEDX_CLIENT_OPERATION_MAP, TreeDxClient } from './client.js';
|
|
2
|
+
export { TreeDxRegistryClient, type TreeDxRegistryClientOptions } from './registry-client.js';
|
|
3
|
+
export { TreeDxFederatedClient, type TreeDxFederatedClientOptions } from './federated-client.js';
|
|
4
|
+
export { TreeDxApiError } from './errors.js';
|
|
5
|
+
export { resolveAgentTreeDxIntegration, type AgentSdkTreeDxIntegration, type AgentSdkTreeDxOptions } from './sdk-integration.js';
|
|
6
|
+
export { TreeDxRepositoryAdapter, resolveContentDir, type TreeDxContentMutationResult, type TreeDxRepositoryAdapterOptions, } from './repository-adapter.js';
|
|
7
|
+
export { TreeDxQueryAdapter, type TreeDxQueryAdapterOptions } from './query-adapter.js';
|
|
8
|
+
export { TreeDxGraphAdapter, type TreeDxGraphAdapterOptions } from './graph-adapter.js';
|
|
9
|
+
export { TreeDxWorkspaceAdapter, type TreeDxWorkspaceAdapterOptions } from './workspace-adapter.js';
|
|
10
|
+
export * from './market-integration.js';
|
|
11
|
+
export { LocalGraphPort, LocalRepositoryPort, LocalRepositoryQueryPort, TreeDxArtifactPort, TreeDxExecPort, TreeDxFederatedPort, TreeDxGraphPort, TreeDxRegistryPort, TreeDxRepositoryPort, TreeDxRepositoryQueryPort, } from './ports.js';
|
|
12
|
+
export type * from './ports.js';
|
|
13
|
+
export type * from './types.js';
|
|
14
|
+
export type { components as TreeDxOpenApiComponents, operations as TreeDxOpenApiOperations, paths as TreeDxOpenApiPaths, } from './generated/openapi-types.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ProjectFilesystemRepositoryTopology, ProjectRepositoryTopology, TreeDxInstance, TreeDxProjectLibraryBinding } from '../sdk-types.
|
|
1
|
+
import type { ProjectFilesystemRepositoryTopology, ProjectRepositoryTopology, TreeDxInstance, TreeDxProjectLibraryBinding } from '../sdk-types.js';
|
|
2
2
|
export declare const TREEDX_DOCKER_IMAGE: "treeseed/treedx:latest";
|
|
3
3
|
export declare const TREEDX_VOLUME_MOUNT_PATH: "/data";
|
|
4
4
|
export declare const TREEDX_CONTENT_PATH: "src/content";
|
package/dist/treedx/ports.d.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import type { TreeDxClient } from './client.
|
|
2
|
-
import type { TreeDxFederatedClient } from './federated-client.
|
|
3
|
-
import type { TreeDxGraphAdapter } from './graph-adapter.
|
|
4
|
-
import type { TreeDxQueryAdapter } from './query-adapter.
|
|
5
|
-
import type { TreeDxRegistryClient } from './registry-client.
|
|
6
|
-
import type { TreeDxRepositoryAdapter } from './repository-adapter.
|
|
7
|
-
import type { TreeDxWorkspaceAdapter } from './workspace-adapter.
|
|
8
|
-
import type { ContentStore } from '../content-store.
|
|
9
|
-
import type { ContentGraphRuntime } from '../graph.
|
|
10
|
-
import type { SdkContentEntry, SdkFollowRequest, SdkGetRequest, SdkMutationRequest, SdkPickRequest, SdkSearchRequest } from '../sdk-types.
|
|
11
|
-
import type { TreeDxArtifact, TreeDxArtifactDownload, TreeDxArtifactExportRequest, TreeDxCommitRequest, TreeDxCommitResult, TreeDxCreateWorkspaceRequest, TreeDxDiff, TreeDxExecRequest, TreeDxExecResult, TreeDxFederatedContextRequest, TreeDxFederatedContextResult, TreeDxFederatedGraphRequest, TreeDxFederatedGraphResult, TreeDxFederatedQueryRequest, TreeDxFederatedQueryResult, TreeDxFederatedSearchRequest, TreeDxFederatedSearchResult, TreeDxFile, TreeDxFileMutationResult, TreeDxListTreeRequest, TreeDxPatchFileRequest, TreeDxReadFileRequest, TreeDxRepositoryPathsRequest, TreeDxRepositoryPlacement, TreeDxRepositoryQueryRequest, TreeDxRepositoryQueryResult, TreeDxRepositoryReadRequest, TreeDxRepositorySearchRequest, TreeDxSearchRequest, TreeDxSearchResult, TreeDxSnapshot, TreeDxSnapshotBuildRequest, TreeDxStatus, TreeDxTreeEntry, TreeDxWorkspace, TreeDxWorkspaceRequest, TreeDxWriteFileRequest, TreeDxDeleteFileRequest } from './types.
|
|
1
|
+
import type { TreeDxClient } from './client.js';
|
|
2
|
+
import type { TreeDxFederatedClient } from './federated-client.js';
|
|
3
|
+
import type { TreeDxGraphAdapter } from './graph-adapter.js';
|
|
4
|
+
import type { TreeDxQueryAdapter } from './query-adapter.js';
|
|
5
|
+
import type { TreeDxRegistryClient } from './registry-client.js';
|
|
6
|
+
import type { TreeDxRepositoryAdapter } from './repository-adapter.js';
|
|
7
|
+
import type { TreeDxWorkspaceAdapter } from './workspace-adapter.js';
|
|
8
|
+
import type { ContentStore } from '../content-store.js';
|
|
9
|
+
import type { ContentGraphRuntime } from '../graph.js';
|
|
10
|
+
import type { SdkContentEntry, SdkFollowRequest, SdkGetRequest, SdkMutationRequest, SdkPickRequest, SdkSearchRequest } from '../sdk-types.js';
|
|
11
|
+
import type { TreeDxArtifact, TreeDxArtifactDownload, TreeDxArtifactExportRequest, TreeDxCommitRequest, TreeDxCommitResult, TreeDxCreateWorkspaceRequest, TreeDxDiff, TreeDxExecRequest, TreeDxExecResult, TreeDxFederatedContextRequest, TreeDxFederatedContextResult, TreeDxFederatedGraphRequest, TreeDxFederatedGraphResult, TreeDxFederatedQueryRequest, TreeDxFederatedQueryResult, TreeDxFederatedSearchRequest, TreeDxFederatedSearchResult, TreeDxFile, TreeDxFileMutationResult, TreeDxListTreeRequest, TreeDxPatchFileRequest, TreeDxReadFileRequest, TreeDxRepositoryPathsRequest, TreeDxRepositoryPlacement, TreeDxRepositoryQueryRequest, TreeDxRepositoryQueryResult, TreeDxRepositoryReadRequest, TreeDxRepositorySearchRequest, TreeDxSearchRequest, TreeDxSearchResult, TreeDxSnapshot, TreeDxSnapshotBuildRequest, TreeDxStatus, TreeDxTreeEntry, TreeDxWorkspace, TreeDxWorkspaceRequest, TreeDxWriteFileRequest, TreeDxDeleteFileRequest } from './types.js';
|
|
12
12
|
export interface AuthPort {
|
|
13
13
|
whoami(): Promise<unknown>;
|
|
14
14
|
effectiveScope(input?: unknown): Promise<unknown>;
|
|
@@ -71,14 +71,14 @@ export declare class LocalRepositoryPort {
|
|
|
71
71
|
items: SdkContentEntry[];
|
|
72
72
|
since: string;
|
|
73
73
|
}>;
|
|
74
|
-
pick(input: SdkPickRequest): Promise<import("../sdk-types.
|
|
74
|
+
pick(input: SdkPickRequest): Promise<import("../sdk-types.js").SdkPickResult<SdkContentEntry>>;
|
|
75
75
|
create(input: SdkMutationRequest): Promise<{
|
|
76
76
|
item: SdkContentEntry;
|
|
77
|
-
git: import("../git-runtime.
|
|
77
|
+
git: import("../git-runtime.js").GitMutationResult;
|
|
78
78
|
}>;
|
|
79
79
|
update(input: SdkMutationRequest): Promise<{
|
|
80
80
|
item: SdkContentEntry;
|
|
81
|
-
git: import("../git-runtime.
|
|
81
|
+
git: import("../git-runtime.js").GitMutationResult;
|
|
82
82
|
}>;
|
|
83
83
|
}
|
|
84
84
|
export declare class LocalRepositoryQueryPort {
|
|
@@ -90,14 +90,14 @@ export declare class LocalRepositoryQueryPort {
|
|
|
90
90
|
export declare class LocalGraphPort implements GraphPort {
|
|
91
91
|
readonly runtime: ContentGraphRuntime;
|
|
92
92
|
constructor(runtime: ContentGraphRuntime);
|
|
93
|
-
refresh(input?: unknown): Promise<import("./types.
|
|
94
|
-
searchFiles(query: string, options?: unknown): Promise<import("./types.
|
|
95
|
-
searchSections(query: string, options?: unknown): Promise<import("./types.
|
|
96
|
-
searchEntities(query: string, options?: unknown): Promise<import("./types.
|
|
97
|
-
getNode(id: string): Promise<import("./types.
|
|
98
|
-
query(input: unknown): Promise<import("./types.
|
|
99
|
-
buildContext(input: unknown): Promise<import("./types.
|
|
100
|
-
parseDsl(source: string): Promise<import("./types.
|
|
93
|
+
refresh(input?: unknown): Promise<import("./types.js").SdkGraphRefreshPayload>;
|
|
94
|
+
searchFiles(query: string, options?: unknown): Promise<import("./types.js").SdkGraphSearchResult[]>;
|
|
95
|
+
searchSections(query: string, options?: unknown): Promise<import("./types.js").SdkGraphSearchResult[]>;
|
|
96
|
+
searchEntities(query: string, options?: unknown): Promise<import("./types.js").SdkGraphSearchResult[]>;
|
|
97
|
+
getNode(id: string): Promise<import("./types.js").SdkGraphNode | null>;
|
|
98
|
+
query(input: unknown): Promise<import("./types.js").SdkGraphQueryResult>;
|
|
99
|
+
buildContext(input: unknown): Promise<import("./types.js").SdkContextPack>;
|
|
100
|
+
parseDsl(source: string): Promise<import("./types.js").SdkGraphDslParseResult>;
|
|
101
101
|
}
|
|
102
102
|
export declare class TreeDxRepositoryPort implements RepositoryPort {
|
|
103
103
|
readonly client: TreeDxClient;
|
|
@@ -129,14 +129,14 @@ export declare class TreeDxRepositoryQueryPort implements RepositoryQueryPort {
|
|
|
129
129
|
export declare class TreeDxGraphPort implements GraphPort {
|
|
130
130
|
readonly adapter: TreeDxGraphAdapter;
|
|
131
131
|
constructor(adapter: TreeDxGraphAdapter);
|
|
132
|
-
refresh(input?: unknown): Promise<import("./types.
|
|
133
|
-
searchFiles(query: string, options?: unknown): Promise<import("./types.
|
|
134
|
-
searchSections(query: string, options?: unknown): Promise<import("./types.
|
|
135
|
-
searchEntities(query: string, options?: unknown): Promise<import("./types.
|
|
136
|
-
getNode(id: string, options?: unknown): Promise<import("./types.
|
|
137
|
-
query(input: unknown): Promise<import("./types.
|
|
138
|
-
buildContext(input: unknown): Promise<import("./types.
|
|
139
|
-
parseDsl(source: string): Promise<import("./types.
|
|
132
|
+
refresh(input?: unknown): Promise<import("./types.js").SdkGraphRefreshPayload>;
|
|
133
|
+
searchFiles(query: string, options?: unknown): Promise<import("./types.js").SdkGraphSearchResult[]>;
|
|
134
|
+
searchSections(query: string, options?: unknown): Promise<import("./types.js").SdkGraphSearchResult[]>;
|
|
135
|
+
searchEntities(query: string, options?: unknown): Promise<import("./types.js").SdkGraphSearchResult[]>;
|
|
136
|
+
getNode(id: string, options?: unknown): Promise<import("./types.js").SdkGraphNode | null>;
|
|
137
|
+
query(input: unknown): Promise<import("./types.js").SdkGraphQueryResult>;
|
|
138
|
+
buildContext(input: unknown): Promise<import("./types.js").SdkContextPack>;
|
|
139
|
+
parseDsl(source: string): Promise<import("./types.js").SdkGraphDslParseResult>;
|
|
140
140
|
}
|
|
141
141
|
export declare class TreeDxRegistryPort implements RegistryPort {
|
|
142
142
|
readonly client: TreeDxRegistryClient;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { SdkContentEntry, SdkGetRequest, SdkModelRegistry, SdkSearchRequest } from '../sdk-types.
|
|
2
|
-
import { TreeDxClient } from './client.
|
|
3
|
-
import type { TreeDxRepositoryQueryRequest, TreeDxRepositoryQueryResult } from './types.
|
|
1
|
+
import type { SdkContentEntry, SdkGetRequest, SdkModelRegistry, SdkSearchRequest } from '../sdk-types.js';
|
|
2
|
+
import { TreeDxClient } from './client.js';
|
|
3
|
+
import type { TreeDxRepositoryQueryRequest, TreeDxRepositoryQueryResult } from './types.js';
|
|
4
4
|
export interface TreeDxQueryAdapterOptions {
|
|
5
5
|
client: TreeDxClient;
|
|
6
6
|
models: SdkModelRegistry;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { TreeDxClient } from './client.
|
|
2
|
-
import type { TreeDxClientOptions, TreeDxNode, TreeDxRepositoryPlacement } from './types.
|
|
1
|
+
import { TreeDxClient } from './client.js';
|
|
2
|
+
import type { TreeDxClientOptions, TreeDxNode, TreeDxRepositoryPlacement } from './types.js';
|
|
3
3
|
export interface TreeDxRegistryClientOptions extends TreeDxClientOptions {
|
|
4
4
|
}
|
|
5
5
|
export declare class TreeDxRegistryClient {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { SdkContentEntry, SdkFilterCondition, SdkFollowRequest, SdkGetRequest, SdkModelDefinition, SdkModelRegistry, SdkMutationRequest, SdkPickRequest, SdkPickResult, SdkSearchRequest, SdkSortSpec, SdkUpdateRequest } from '../sdk-types.
|
|
2
|
-
import { TreeDxClient } from './client.
|
|
3
|
-
import type { TreeDxCommitResult } from './types.
|
|
1
|
+
import type { SdkContentEntry, SdkFilterCondition, SdkFollowRequest, SdkGetRequest, SdkModelDefinition, SdkModelRegistry, SdkMutationRequest, SdkPickRequest, SdkPickResult, SdkSearchRequest, SdkSortSpec, SdkUpdateRequest } from '../sdk-types.js';
|
|
2
|
+
import { TreeDxClient } from './client.js';
|
|
3
|
+
import type { TreeDxCommitResult } from './types.js';
|
|
4
4
|
export interface TreeDxRepositoryAdapterOptions {
|
|
5
5
|
client: TreeDxClient;
|
|
6
6
|
models: SdkModelRegistry;
|
|
@@ -20,7 +20,7 @@ export interface TreeDxContentMutationResult {
|
|
|
20
20
|
export declare function resolveContentDir(definition: SdkModelDefinition, options: Pick<TreeDxRepositoryAdapterOptions, 'contentPathMap' | 'repoRoot'>): string;
|
|
21
21
|
export declare function mapFilters(definition: SdkModelDefinition, filters?: SdkFilterCondition[]): {
|
|
22
22
|
field: string;
|
|
23
|
-
op: import("../sdk-types.
|
|
23
|
+
op: import("../sdk-types.js").SdkFilterOperator;
|
|
24
24
|
value: unknown;
|
|
25
25
|
}[];
|
|
26
26
|
export declare function mapSort(definition: SdkModelDefinition, sort?: SdkSortSpec[]): {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import crypto from "node:crypto";
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
import { resolveModelDefinition } from "../model-registry.js";
|
|
4
|
-
import { serializeFrontmatterDocument } from "../frontmatter.js";
|
|
4
|
+
import { parseFrontmatterDocument, serializeFrontmatterDocument } from "../frontmatter.js";
|
|
5
5
|
import {
|
|
6
6
|
canonicalizeFrontmatter,
|
|
7
7
|
normalizeFilterFields,
|
|
@@ -88,6 +88,13 @@ function titleFrom(definition, frontmatter) {
|
|
|
88
88
|
const nameField = definition.fields.name ? readCanonicalFieldValue(definition, { frontmatter }, "name") : void 0;
|
|
89
89
|
return typeof titleField === "string" ? titleField : typeof nameField === "string" ? nameField : void 0;
|
|
90
90
|
}
|
|
91
|
+
function textFromTreeDxFile(file, keys) {
|
|
92
|
+
for (const key of keys) {
|
|
93
|
+
const value = file[key];
|
|
94
|
+
if (typeof value === "string" && value.trim()) return value;
|
|
95
|
+
}
|
|
96
|
+
return null;
|
|
97
|
+
}
|
|
91
98
|
function entryFromTreeDxFile(definition, value, contentDir) {
|
|
92
99
|
const file = isRecord(value) && isRecord(value.file) ? value.file : value;
|
|
93
100
|
if (!isRecord(file)) {
|
|
@@ -98,8 +105,12 @@ function entryFromTreeDxFile(definition, value, contentDir) {
|
|
|
98
105
|
});
|
|
99
106
|
}
|
|
100
107
|
const filePath = String(file.path ?? "");
|
|
101
|
-
const
|
|
102
|
-
const
|
|
108
|
+
const rawDocument = textFromTreeDxFile(file, ["content", "source", "text"]);
|
|
109
|
+
const parsed = rawDocument ? parseFrontmatterDocument(rawDocument) : {
|
|
110
|
+
frontmatter: isRecord(file.frontmatter) ? file.frontmatter : {},
|
|
111
|
+
body: textFromTreeDxFile(file, ["body"]) ?? ""
|
|
112
|
+
};
|
|
113
|
+
const { frontmatter, body } = parsed;
|
|
103
114
|
const slug = stripExtension(normalizeRepoPath(path.posix.relative(contentDir, filePath)));
|
|
104
115
|
const created = frontmatter.created_at ?? frontmatter.createdAt ?? null;
|
|
105
116
|
const updated = frontmatter.updated_at ?? frontmatter.updatedAt ?? null;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { TreeDxClient, type TreeDxClientOptions } from './client.
|
|
2
|
-
import { TreeDxFederatedClient } from './federated-client.
|
|
3
|
-
import { TreeDxRegistryClient, type TreeDxRegistryClientOptions } from './registry-client.
|
|
1
|
+
import { TreeDxClient, type TreeDxClientOptions } from './client.js';
|
|
2
|
+
import { TreeDxFederatedClient } from './federated-client.js';
|
|
3
|
+
import { TreeDxRegistryClient, type TreeDxRegistryClientOptions } from './registry-client.js';
|
|
4
4
|
export interface AgentSdkTreeDxOptions {
|
|
5
5
|
enabled: boolean;
|
|
6
6
|
client?: TreeDxClient | TreeDxClientOptions;
|
package/dist/treedx/types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { SdkContextPack, SdkContextPackRequest, SdkGraphDslParseResult, SdkGraphEdge, SdkGraphNode, SdkGraphQueryRequest, SdkGraphQueryResult, SdkGraphRefreshPayload, SdkGraphRefreshRequest, SdkGraphSearchOptions, SdkGraphSearchResult, SdkGraphTraversalResult } from '../sdk-types.
|
|
2
|
-
import type { components, operations, paths } from './generated/openapi-types.
|
|
1
|
+
import type { SdkContextPack, SdkContextPackRequest, SdkGraphDslParseResult, SdkGraphEdge, SdkGraphNode, SdkGraphQueryRequest, SdkGraphQueryResult, SdkGraphRefreshPayload, SdkGraphRefreshRequest, SdkGraphSearchOptions, SdkGraphSearchResult, SdkGraphTraversalResult } from '../sdk-types.js';
|
|
2
|
+
import type { components, operations, paths } from './generated/openapi-types.js';
|
|
3
3
|
export interface TreeDxActor {
|
|
4
4
|
actorId: string;
|
|
5
5
|
tenantId: string;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { TreeDxClient } from './client.
|
|
2
|
-
import type { TreeDxCommitRequest, TreeDxCommitResult, TreeDxCreateWorkspaceRequest, TreeDxDiff, TreeDxExecRequest, TreeDxExecResult, TreeDxFile, TreeDxFileMutationResult, TreeDxListTreeRequest, TreeDxPatchFileRequest, TreeDxReadFileRequest, TreeDxSearchRequest, TreeDxSearchResult, TreeDxStatus, TreeDxTreeEntry, TreeDxWorkspace, TreeDxWriteFileRequest, TreeDxDeleteFileRequest } from './types.
|
|
1
|
+
import { TreeDxClient } from './client.js';
|
|
2
|
+
import type { TreeDxCommitRequest, TreeDxCommitResult, TreeDxCreateWorkspaceRequest, TreeDxDiff, TreeDxExecRequest, TreeDxExecResult, TreeDxFile, TreeDxFileMutationResult, TreeDxListTreeRequest, TreeDxPatchFileRequest, TreeDxReadFileRequest, TreeDxSearchRequest, TreeDxSearchResult, TreeDxStatus, TreeDxTreeEntry, TreeDxWorkspace, TreeDxWriteFileRequest, TreeDxDeleteFileRequest } from './types.js';
|
|
3
3
|
export interface TreeDxWorkspaceAdapterOptions {
|
|
4
4
|
client: TreeDxClient;
|
|
5
5
|
repoId: string;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { TreeDxApiError, TreeDxClient } from './treedx-client.
|
|
2
|
-
import { ContentStore } from './content-store.
|
|
3
|
-
import { ContentGraphRuntime } from './graph.
|
|
4
|
-
import type { SdkContentEntry, SdkContextPackRequest, SdkFollowRequest, SdkGetRequest, SdkGraphDslParseResult, SdkGraphQueryRequest, SdkGraphRefreshRequest, SdkModelRegistry, SdkMutationRequest, SdkPickRequest, SdkPickResult, SdkSearchRequest, SdkUpdateRequest } from './sdk-types.
|
|
1
|
+
import { TreeDxApiError, TreeDxClient } from './treedx-client.js';
|
|
2
|
+
import { ContentStore } from './content-store.js';
|
|
3
|
+
import { ContentGraphRuntime } from './graph.js';
|
|
4
|
+
import type { SdkContentEntry, SdkContextPackRequest, SdkFollowRequest, SdkGetRequest, SdkGraphDslParseResult, SdkGraphQueryRequest, SdkGraphRefreshRequest, SdkModelRegistry, SdkMutationRequest, SdkPickRequest, SdkPickResult, SdkSearchRequest, SdkUpdateRequest } from './sdk-types.js';
|
|
5
5
|
export interface TreeSeedTreeDxRepositoryHint {
|
|
6
6
|
name?: string;
|
|
7
7
|
owner?: string;
|
|
@@ -27,6 +27,7 @@ export interface AgentSdkTreeDxOptions {
|
|
|
27
27
|
}
|
|
28
28
|
export interface AgentSdkContentRepositoryOptions {
|
|
29
29
|
adapter?: 'treedx' | 'local';
|
|
30
|
+
allowLocalFallback?: boolean;
|
|
30
31
|
}
|
|
31
32
|
export interface ResolvedTreeDxOptions {
|
|
32
33
|
baseUrl: string;
|
|
@@ -105,11 +106,11 @@ export declare class LocalContentBackend implements ContentBackend {
|
|
|
105
106
|
pick(request: SdkPickRequest): Promise<SdkPickResult<SdkContentEntry>>;
|
|
106
107
|
create(request: SdkMutationRequest): Promise<{
|
|
107
108
|
item: SdkContentEntry;
|
|
108
|
-
git: import("./git-runtime.
|
|
109
|
+
git: import("./git-runtime.js").GitMutationResult;
|
|
109
110
|
}>;
|
|
110
111
|
update(request: SdkUpdateRequest): Promise<{
|
|
111
112
|
item: SdkContentEntry;
|
|
112
|
-
git: import("./git-runtime.
|
|
113
|
+
git: import("./git-runtime.js").GitMutationResult;
|
|
113
114
|
}>;
|
|
114
115
|
}
|
|
115
116
|
export declare class MissingTreeDxContentBackend implements ContentBackend {
|
|
@@ -157,7 +158,7 @@ export declare class TreeDxContentBackend implements ContentBackend {
|
|
|
157
158
|
item: {
|
|
158
159
|
id: string;
|
|
159
160
|
slug: string;
|
|
160
|
-
model: import("./sdk-types.
|
|
161
|
+
model: import("./sdk-types.js").SdkModelName;
|
|
161
162
|
title: string | undefined;
|
|
162
163
|
path: string;
|
|
163
164
|
body: string;
|
|
@@ -177,7 +178,7 @@ export declare class TreeDxContentBackend implements ContentBackend {
|
|
|
177
178
|
updatedAt: string | null;
|
|
178
179
|
id: string;
|
|
179
180
|
slug: string;
|
|
180
|
-
model: import("./sdk-types.
|
|
181
|
+
model: import("./sdk-types.js").SdkModelName;
|
|
181
182
|
path: string;
|
|
182
183
|
createdAt: string | null;
|
|
183
184
|
};
|
|
@@ -187,9 +188,9 @@ export declare class TreeDxContentBackend implements ContentBackend {
|
|
|
187
188
|
export declare class LocalGraphBackend implements GraphBackend {
|
|
188
189
|
private readonly runtime;
|
|
189
190
|
constructor(runtime: ContentGraphRuntime);
|
|
190
|
-
refresh(request?: SdkGraphRefreshRequest): Promise<import("./sdk-types.
|
|
191
|
-
queryGraph(request: SdkGraphQueryRequest): Promise<import("./sdk-types.
|
|
192
|
-
buildContextPack(request: SdkContextPackRequest): Promise<import("./sdk-types.
|
|
191
|
+
refresh(request?: SdkGraphRefreshRequest): Promise<import("./sdk-types.js").SdkGraphRefreshPayload>;
|
|
192
|
+
queryGraph(request: SdkGraphQueryRequest): Promise<import("./sdk-types.js").SdkGraphQueryResult>;
|
|
193
|
+
buildContextPack(request: SdkContextPackRequest): Promise<import("./sdk-types.js").SdkContextPack>;
|
|
193
194
|
parseGraphDsl(source: string): Promise<SdkGraphDslParseResult>;
|
|
194
195
|
}
|
|
195
196
|
export declare class TreeDxGraphBackend implements GraphBackend {
|
|
@@ -198,6 +199,7 @@ export declare class TreeDxGraphBackend implements GraphBackend {
|
|
|
198
199
|
client: TreeDxClient;
|
|
199
200
|
resolver: TreeDxPortfolioResolver;
|
|
200
201
|
localRuntime: ContentGraphRuntime;
|
|
202
|
+
directRepoId?: string;
|
|
201
203
|
ref?: string;
|
|
202
204
|
});
|
|
203
205
|
refresh(request?: SdkGraphRefreshRequest): Promise<unknown[]>;
|
package/dist/treedx-backends.js
CHANGED
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
} from "./sdk-fields.js";
|
|
14
14
|
import { assertExpectedVersion } from "./sdk-version.js";
|
|
15
15
|
class TreeDxContentRepositoryConfigError extends Error {
|
|
16
|
-
constructor(message =
|
|
16
|
+
constructor(message = "TreeDX content repository is required. Configure TREESEED_TREEDX_BASE_URL or TREESEED_TREEDX_URL for content model access.") {
|
|
17
17
|
super(message);
|
|
18
18
|
this.name = "TreeDxContentRepositoryConfigError";
|
|
19
19
|
}
|
|
@@ -59,12 +59,23 @@ function segment(value) {
|
|
|
59
59
|
function isMarkdownPath(value) {
|
|
60
60
|
return /\.(md|mdx)$/i.test(value);
|
|
61
61
|
}
|
|
62
|
+
function isGraphNotReadyError(error) {
|
|
63
|
+
return error instanceof TreeDxApiError && error.code === "graph_not_ready";
|
|
64
|
+
}
|
|
62
65
|
function inferSlug(filePath, pathPattern) {
|
|
63
66
|
const normalizedPath = normalizePathPattern(filePath);
|
|
64
67
|
const root = normalizePathPattern(pathPattern).replace(/\*\*.*$/u, "").replace(/\/?$/u, "/");
|
|
65
68
|
const withoutRoot = normalizedPath.startsWith(root) ? normalizedPath.slice(root.length) : normalizedPath;
|
|
66
69
|
return withoutRoot.replace(/\.(md|mdx)$/i, "");
|
|
67
70
|
}
|
|
71
|
+
function pathMatchesPattern(filePath, pathPattern) {
|
|
72
|
+
const normalizedPath = normalizePathPattern(filePath);
|
|
73
|
+
const normalizedPattern = normalizePathPattern(pathPattern);
|
|
74
|
+
const wildcardIndex = normalizedPattern.indexOf("**");
|
|
75
|
+
const root = (wildcardIndex >= 0 ? normalizedPattern.slice(0, wildcardIndex) : normalizedPattern).replace(/\/+$/u, "");
|
|
76
|
+
if (!root) return true;
|
|
77
|
+
return normalizedPath === root || normalizedPath.startsWith(`${root}/`);
|
|
78
|
+
}
|
|
68
79
|
function normalizePathList(value) {
|
|
69
80
|
if (Array.isArray(value)) {
|
|
70
81
|
return value.flatMap((entry) => {
|
|
@@ -79,7 +90,7 @@ function normalizePathList(value) {
|
|
|
79
90
|
}
|
|
80
91
|
if (value && typeof value === "object") {
|
|
81
92
|
const record = value;
|
|
82
|
-
for (const key of ["paths", "items", "files", "results", "data"]) {
|
|
93
|
+
for (const key of ["paths", "items", "files", "entries", "results", "data"]) {
|
|
83
94
|
const normalized = normalizePathList(record[key]);
|
|
84
95
|
if (normalized.length > 0) return normalized;
|
|
85
96
|
}
|
|
@@ -90,7 +101,7 @@ function extractTextPayload(value) {
|
|
|
90
101
|
if (typeof value === "string") return value;
|
|
91
102
|
if (value && typeof value === "object") {
|
|
92
103
|
const record = value;
|
|
93
|
-
for (const key of ["content", "body", "text", "source", "data"]) {
|
|
104
|
+
for (const key of ["content", "body", "text", "source", "file", "data"]) {
|
|
94
105
|
const candidate = record[key];
|
|
95
106
|
if (typeof candidate === "string") return candidate;
|
|
96
107
|
if (candidate && typeof candidate === "object") {
|
|
@@ -101,38 +112,6 @@ function extractTextPayload(value) {
|
|
|
101
112
|
}
|
|
102
113
|
return "";
|
|
103
114
|
}
|
|
104
|
-
function normalizeFilesPayload(value) {
|
|
105
|
-
if (Array.isArray(value)) {
|
|
106
|
-
return value.filter((entry) => Boolean(entry && typeof entry === "object" && !Array.isArray(entry)));
|
|
107
|
-
}
|
|
108
|
-
if (value && typeof value === "object") {
|
|
109
|
-
const record = value;
|
|
110
|
-
for (const key of ["results", "files", "items", "data"]) {
|
|
111
|
-
const normalized = normalizeFilesPayload(record[key]);
|
|
112
|
-
if (normalized.length > 0) return normalized;
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
return [];
|
|
116
|
-
}
|
|
117
|
-
function entryFromTreeDxPayload(definition, file, contentRoot) {
|
|
118
|
-
const filePath = stringValue(file.path) ?? stringValue(file.file) ?? stringValue(file.key) ?? "";
|
|
119
|
-
const parsed = file.frontmatter && typeof file.frontmatter === "object" ? {
|
|
120
|
-
frontmatter: file.frontmatter,
|
|
121
|
-
body: typeof file.body === "string" ? file.body : extractTextPayload(file)
|
|
122
|
-
} : parseFrontmatterDocument(extractTextPayload(file));
|
|
123
|
-
const slug = inferSlug(filePath, contentRoot);
|
|
124
|
-
return {
|
|
125
|
-
id: slug,
|
|
126
|
-
slug,
|
|
127
|
-
model: definition.name,
|
|
128
|
-
title: titleForEntry(definition, parsed.frontmatter),
|
|
129
|
-
path: filePath,
|
|
130
|
-
body: parsed.body,
|
|
131
|
-
frontmatter: parsed.frontmatter,
|
|
132
|
-
createdAt: dateForEntry(definition, parsed.frontmatter, "created_at"),
|
|
133
|
-
updatedAt: dateForEntry(definition, parsed.frontmatter, "updated_at")
|
|
134
|
-
};
|
|
135
|
-
}
|
|
136
115
|
function entryMatchesIdentity(entry, request) {
|
|
137
116
|
return [request.id, request.slug, request.key].filter(Boolean).includes(entry.id) || [request.id, request.slug, request.key].filter(Boolean).includes(entry.slug);
|
|
138
117
|
}
|
|
@@ -175,12 +154,12 @@ function mutationPath(definition, repoRoot, slug) {
|
|
|
175
154
|
return `${relative.replace(/\/$/u, "")}/${slug}${extension}`;
|
|
176
155
|
}
|
|
177
156
|
function resolveTreeDxOptions(input) {
|
|
178
|
-
const baseUrl = stringValue(input?.baseUrl) ?? stringValue(process.env.TREESEED_TREEDX_BASE_URL);
|
|
157
|
+
const baseUrl = stringValue(input?.baseUrl) ?? stringValue(process.env.TREESEED_TREEDX_BASE_URL) ?? stringValue(process.env.TREESEED_TREEDX_URL);
|
|
179
158
|
if (!baseUrl) return null;
|
|
180
159
|
return {
|
|
181
160
|
baseUrl,
|
|
182
161
|
token: stringValue(input?.token) ?? stringValue(process.env.TREESEED_TREEDX_TOKEN),
|
|
183
|
-
repoId: stringValue(input?.repoId),
|
|
162
|
+
repoId: stringValue(input?.repoId) ?? stringValue(process.env.TREESEED_TREEDX_REPO_ID),
|
|
184
163
|
ref: stringValue(input?.ref) ?? stringValue(process.env.TREESEED_TREEDX_REF),
|
|
185
164
|
workspaceId: stringValue(input?.workspaceId) ?? stringValue(process.env.TREESEED_TREEDX_WORKSPACE_ID),
|
|
186
165
|
contentPathMap: input?.contentPathMap,
|
|
@@ -322,9 +301,9 @@ class TreeDxContentBackend {
|
|
|
322
301
|
ref: candidate.ref,
|
|
323
302
|
path: filePath
|
|
324
303
|
}));
|
|
325
|
-
const parsed = parseFrontmatterDocument(extractTextPayload(payload));
|
|
326
304
|
const payloadRecord = payload && typeof payload === "object" ? payload : {};
|
|
327
305
|
const payloadFile = payloadRecord.file && typeof payloadRecord.file === "object" ? payloadRecord.file : {};
|
|
306
|
+
const parsed = parseFrontmatterDocument(extractTextPayload(payloadFile) || extractTextPayload(payload));
|
|
328
307
|
const resolvedPath = stringValue(payloadFile.path) ?? stringValue(payloadRecord.path) ?? filePath;
|
|
329
308
|
const slug = inferSlug(resolvedPath, candidate.path);
|
|
330
309
|
return {
|
|
@@ -348,7 +327,7 @@ class TreeDxContentBackend {
|
|
|
348
327
|
ref: candidate.ref,
|
|
349
328
|
path: candidate.path
|
|
350
329
|
}));
|
|
351
|
-
const paths = normalizePathList(listPayload).filter(isMarkdownPath);
|
|
330
|
+
const paths = normalizePathList(listPayload).filter((filePath) => pathMatchesPattern(filePath, candidate.path)).filter(isMarkdownPath);
|
|
352
331
|
return await Promise.all(paths.map((filePath) => this.readEntry(definition, candidate, filePath)));
|
|
353
332
|
}))).flat();
|
|
354
333
|
const deduped = /* @__PURE__ */ new Map();
|
|
@@ -388,17 +367,10 @@ class TreeDxContentBackend {
|
|
|
388
367
|
async search(request) {
|
|
389
368
|
const definition = this.definition(request.model);
|
|
390
369
|
if (this.options.directRepoId) {
|
|
391
|
-
const
|
|
392
|
-
const
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
query: "",
|
|
396
|
-
limit: request.limit,
|
|
397
|
-
includeBody: true,
|
|
398
|
-
includeFrontmatter: true
|
|
399
|
-
}));
|
|
400
|
-
const results = normalizeFilesPayload(payload);
|
|
401
|
-
return results.map((file) => entryFromTreeDxPayload(definition, file, rule.paths[0] ?? ""));
|
|
370
|
+
const items2 = await this.list(definition.name);
|
|
371
|
+
const filtered2 = applyFilters(items2, normalizeFilterFields(definition, request.filters), definition);
|
|
372
|
+
const sorted2 = applySort(filtered2, normalizeSortFields(definition, request.sort), definition);
|
|
373
|
+
return sorted2.slice(0, request.limit ?? sorted2.length);
|
|
402
374
|
}
|
|
403
375
|
const items = await this.list(definition.name);
|
|
404
376
|
const filtered = applyFilters(items, normalizeFilterFields(definition, request.filters), definition);
|
|
@@ -580,6 +552,16 @@ class TreeDxGraphBackend {
|
|
|
580
552
|
});
|
|
581
553
|
}
|
|
582
554
|
async queryGraph(request) {
|
|
555
|
+
if (this.options.directRepoId) {
|
|
556
|
+
return this.options.client.request({
|
|
557
|
+
method: "POST",
|
|
558
|
+
path: `/api/v1/repos/${segment(this.options.directRepoId)}/graph/query`,
|
|
559
|
+
body: compactObject({
|
|
560
|
+
...request,
|
|
561
|
+
ref: this.options.ref
|
|
562
|
+
})
|
|
563
|
+
});
|
|
564
|
+
}
|
|
583
565
|
return this.options.client.federation.graphQuery({
|
|
584
566
|
...request,
|
|
585
567
|
repoIds: await this.repoIds(),
|
|
@@ -587,6 +569,26 @@ class TreeDxGraphBackend {
|
|
|
587
569
|
});
|
|
588
570
|
}
|
|
589
571
|
async buildContextPack(request) {
|
|
572
|
+
if (this.options.directRepoId) {
|
|
573
|
+
const build = () => this.options.client.request({
|
|
574
|
+
method: "POST",
|
|
575
|
+
path: `/api/v1/repos/${segment(this.options.directRepoId)}/context/build`,
|
|
576
|
+
body: compactObject({
|
|
577
|
+
...request,
|
|
578
|
+
ref: this.options.ref
|
|
579
|
+
})
|
|
580
|
+
});
|
|
581
|
+
try {
|
|
582
|
+
return await build();
|
|
583
|
+
} catch (error) {
|
|
584
|
+
if (!isGraphNotReadyError(error)) throw error;
|
|
585
|
+
await this.options.client.graph.refresh(this.options.directRepoId, compactObject({
|
|
586
|
+
ref: this.options.ref,
|
|
587
|
+
paths: ["**"]
|
|
588
|
+
}));
|
|
589
|
+
return await build();
|
|
590
|
+
}
|
|
591
|
+
}
|
|
590
592
|
return this.options.client.federation.contextBuild({
|
|
591
593
|
...request,
|
|
592
594
|
repoIds: await this.repoIds(),
|
package/dist/treedx-client.d.ts
CHANGED
|
@@ -48,11 +48,14 @@ export declare class TreeDxClient {
|
|
|
48
48
|
readonly federation: FederationAdapter;
|
|
49
49
|
readonly exec: ExecAdapter;
|
|
50
50
|
constructor(config: TreeDxClientConfig);
|
|
51
|
+
request<T = unknown>(request: TreeDxRequest): Promise<T>;
|
|
51
52
|
}
|
|
52
53
|
declare class RepositoriesAdapter {
|
|
53
54
|
private readonly transport;
|
|
54
55
|
constructor(transport: Transport);
|
|
55
56
|
list(): Promise<unknown>;
|
|
57
|
+
get(repoId: string): Promise<unknown>;
|
|
58
|
+
register(body: unknown): Promise<unknown>;
|
|
56
59
|
}
|
|
57
60
|
declare class QueryAdapter {
|
|
58
61
|
private readonly transport;
|
package/dist/treedx-client.js
CHANGED
|
@@ -102,6 +102,9 @@ class TreeDxClient {
|
|
|
102
102
|
graph;
|
|
103
103
|
federation;
|
|
104
104
|
exec;
|
|
105
|
+
request(request) {
|
|
106
|
+
return requestData(this.transport, request);
|
|
107
|
+
}
|
|
105
108
|
}
|
|
106
109
|
class RepositoriesAdapter {
|
|
107
110
|
constructor(transport) {
|
|
@@ -111,6 +114,12 @@ class RepositoriesAdapter {
|
|
|
111
114
|
list() {
|
|
112
115
|
return requestData(this.transport, { method: "GET", path: "/api/v1/repos" });
|
|
113
116
|
}
|
|
117
|
+
get(repoId) {
|
|
118
|
+
return requestData(this.transport, { method: "GET", path: `/api/v1/repos/${segment(repoId)}` });
|
|
119
|
+
}
|
|
120
|
+
register(body) {
|
|
121
|
+
return requestData(this.transport, { method: "POST", path: "/api/v1/repos/register", body });
|
|
122
|
+
}
|
|
114
123
|
}
|
|
115
124
|
class QueryAdapter {
|
|
116
125
|
constructor(transport) {
|
|
@@ -124,7 +133,7 @@ class QueryAdapter {
|
|
|
124
133
|
return requestData(this.transport, { method: "POST", path: `/api/v1/repos/${segment(repoId)}/paths/list`, body });
|
|
125
134
|
}
|
|
126
135
|
searchFiles(repoId, body) {
|
|
127
|
-
return requestData(this.transport, { method: "POST", path: `/api/v1/repos/${segment(repoId)}/search
|
|
136
|
+
return requestData(this.transport, { method: "POST", path: `/api/v1/repos/${segment(repoId)}/files/search`, body });
|
|
128
137
|
}
|
|
129
138
|
}
|
|
130
139
|
class FilesAdapter {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
services:
|
|
2
2
|
mailpit:
|
|
3
3
|
image: axllent/mailpit:latest
|
|
4
|
-
container_name: treeseed_mailpit
|
|
5
4
|
ports:
|
|
6
|
-
- "1025:1025"
|
|
7
|
-
- "8025:8025"
|
|
5
|
+
- "${TREESEED_MAILPIT_SMTP_BIND:-127.0.0.1}:${TREESEED_MAILPIT_SMTP_PORT:-1025}:1025"
|
|
6
|
+
- "${TREESEED_MAILPIT_UI_BIND:-127.0.0.1}:${TREESEED_MAILPIT_UI_PORT:-8025}:8025"
|