deepline 0.3.89 → 0.3.91

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.
Files changed (267) hide show
  1. package/contracts/install-commands.json +29 -0
  2. package/dist/bundling-sources/sdk/src/client.ts +221 -43
  3. package/dist/bundling-sources/sdk/src/index.ts +4 -0
  4. package/dist/bundling-sources/sdk/src/monitor-fleet-contract.ts +2 -556
  5. package/dist/bundling-sources/sdk/src/monitor-fleets.ts +2 -2
  6. package/dist/bundling-sources/sdk/src/pagination.ts +25 -0
  7. package/dist/bundling-sources/sdk/src/plays/bundle-play-file.ts +1 -1
  8. package/dist/bundling-sources/sdk/src/release.ts +11 -9
  9. package/dist/bundling-sources/sdk/src/types.ts +29 -1
  10. package/dist/bundling-sources/shared_libs/integration-contracts/monitor-fleet-contract.ts +549 -0
  11. package/dist/bundling-sources/shared_libs/monitors/analytics-public.ts +10 -0
  12. package/dist/bundling-sources/shared_libs/monitors/fleets/errors.ts +96 -0
  13. package/dist/bundling-sources/shared_libs/monitors/fleets/limits.ts +8 -0
  14. package/dist/bundling-sources/shared_libs/monitors/fleets/plan.ts +320 -0
  15. package/dist/bundling-sources/shared_libs/monitors/fleets/verdict.ts +106 -0
  16. package/dist/bundling-sources/shared_libs/monitors/http-error-response.ts +8 -1
  17. package/dist/bundling-sources/shared_libs/monitors/inbound-queue.ts +4 -4
  18. package/dist/bundling-sources/shared_libs/monitors/inventory-reconciliation.ts +59 -0
  19. package/dist/bundling-sources/shared_libs/monitors/lifecycle-notifications.ts +7 -9
  20. package/dist/bundling-sources/shared_libs/monitors/monitor-fleet-limits.ts +2 -12
  21. package/dist/bundling-sources/shared_libs/monitors/package.json +113 -4
  22. package/dist/bundling-sources/shared_libs/monitors/provider-monitor-batch-operation.ts +56 -9
  23. package/dist/bundling-sources/shared_libs/monitors/provider-monitor-consumer-health.ts +2 -2
  24. package/dist/bundling-sources/shared_libs/monitors/provider-monitor-identity-claims.ts +2 -2
  25. package/dist/bundling-sources/shared_libs/monitors/provider-monitor-public-aliases.ts +1 -1
  26. package/dist/bundling-sources/shared_libs/monitors/signal-radars/inbound-dead-letter.ts +245 -0
  27. package/dist/bundling-sources/shared_libs/monitors/signal-radars/inbound-message.ts +38 -0
  28. package/dist/bundling-sources/shared_libs/monitors/signal-radars/inbound-queue-ack-probe.ts +94 -0
  29. package/dist/bundling-sources/shared_libs/monitors/signal-radars/inbound-queue-delivery.ts +60 -0
  30. package/dist/bundling-sources/shared_libs/monitors/signal-radars/inbound-queue.ts +60 -0
  31. package/dist/bundling-sources/shared_libs/monitors/snitcher-install-validation.ts +1 -1
  32. package/dist/bundling-sources/shared_libs/monitors/snitcher-ip2company.ts +2 -2
  33. package/dist/bundling-sources/shared_libs/monitors/snitcher-radar.ts +1 -1
  34. package/dist/bundling-sources/shared_libs/monitors/tracking-provider-integrations.ts +1 -1
  35. package/dist/bundling-sources/shared_libs/observability/build-context.ts +13 -0
  36. package/dist/bundling-sources/shared_libs/observability/log-metadata.ts +160 -0
  37. package/dist/bundling-sources/shared_libs/observability/request-context.ts +68 -0
  38. package/dist/bundling-sources/shared_libs/observability/scheduled-jobs.json +690 -0
  39. package/dist/bundling-sources/shared_libs/observability/scheduled-work-manual.ts +35 -0
  40. package/dist/bundling-sources/shared_libs/observability/scheduled-work.ts +5 -0
  41. package/dist/bundling-sources/shared_libs/play-data-plane/neon-constants.ts +9 -0
  42. package/dist/bundling-sources/shared_libs/play-data-plane/r2.ts +272 -0
  43. package/dist/bundling-sources/shared_libs/play-runtime/app-runtime-api.ts +46 -1
  44. package/dist/bundling-sources/shared_libs/play-runtime/async-operation.ts +66 -1
  45. package/dist/bundling-sources/shared_libs/play-runtime/async-play-invocation.ts +0 -1
  46. package/dist/bundling-sources/shared_libs/play-runtime/bounceban-batching.ts +137 -0
  47. package/dist/bundling-sources/shared_libs/play-runtime/context.ts +779 -140
  48. package/dist/bundling-sources/shared_libs/play-runtime/ctx-types.ts +46 -0
  49. package/dist/bundling-sources/shared_libs/play-runtime/daytona-payload-contract.ts +68 -0
  50. package/dist/bundling-sources/shared_libs/play-runtime/daytona-sandbox-janitor.ts +103 -0
  51. package/dist/bundling-sources/shared_libs/play-runtime/daytona-sandbox-reaper.ts +725 -0
  52. package/dist/bundling-sources/shared_libs/play-runtime/db-session-lease-store.ts +578 -0
  53. package/dist/bundling-sources/shared_libs/play-runtime/deployment/commands/roll-execution-relay.ts +521 -0
  54. package/dist/bundling-sources/shared_libs/play-runtime/deployment/commands/roll-receipt-gateway.ts +1378 -0
  55. package/dist/bundling-sources/shared_libs/play-runtime/deployment/commands/runtime-topology.ts +1024 -0
  56. package/dist/bundling-sources/shared_libs/play-runtime/deployment/fly-gateway-route-probe.ts +193 -0
  57. package/dist/bundling-sources/shared_libs/play-runtime/deployment/fly-machine-lifecycle.ts +104 -0
  58. package/dist/bundling-sources/shared_libs/play-runtime/deployment/fly-machines.ts +1844 -0
  59. package/dist/bundling-sources/shared_libs/play-runtime/deployment/fly-registry.ts +21 -0
  60. package/dist/bundling-sources/shared_libs/play-runtime/deployment/process-tree.ts +40 -0
  61. package/dist/bundling-sources/shared_libs/play-runtime/deployment/runtime-gateway-drain.ts +262 -0
  62. package/dist/bundling-sources/shared_libs/play-runtime/deployment/runtime-surface.ts +98 -0
  63. package/dist/bundling-sources/shared_libs/play-runtime/deployment/runtime-topology.ts +303 -0
  64. package/dist/bundling-sources/shared_libs/play-runtime/deployment/runtime-tuple-publication-guardian.ts +70 -0
  65. package/dist/bundling-sources/shared_libs/play-runtime/deployment/runtime-tuple-recovery.ts +519 -0
  66. package/dist/bundling-sources/shared_libs/play-runtime/deployment/vercel-fly-rollback-alignment.ts +280 -0
  67. package/dist/bundling-sources/shared_libs/play-runtime/deployment/vercel-production-gate.ts +159 -0
  68. package/dist/bundling-sources/shared_libs/play-runtime/durable-call-cache.ts +29 -0
  69. package/dist/bundling-sources/shared_libs/play-runtime/execution-capabilities.ts +23 -0
  70. package/dist/bundling-sources/shared_libs/play-runtime/execution-gateway-invocation-fence.ts +442 -0
  71. package/dist/bundling-sources/shared_libs/play-runtime/execution-protocol.ts +3 -3
  72. package/dist/bundling-sources/shared_libs/play-runtime/fixture-behavior.ts +18 -0
  73. package/dist/bundling-sources/shared_libs/play-runtime/governor/app-runtime-rate-state-backend.ts +9 -0
  74. package/dist/bundling-sources/shared_libs/play-runtime/governor/policy.ts +1 -1
  75. package/dist/bundling-sources/shared_libs/play-runtime/governor/rate-state-backend.ts +1 -1
  76. package/dist/bundling-sources/shared_libs/play-runtime/integration-operation-reader-fence/contracts.ts +66 -0
  77. package/dist/bundling-sources/shared_libs/play-runtime/integration-operation-reader-fence/job.ts +145 -0
  78. package/dist/bundling-sources/shared_libs/play-runtime/integration-operation-reader-fence/memory-store.ts +114 -0
  79. package/dist/bundling-sources/shared_libs/play-runtime/integration-operation-reader-fence/ports.ts +21 -0
  80. package/dist/bundling-sources/shared_libs/play-runtime/integration-operation-reader-fence/postgres-store.ts +170 -0
  81. package/dist/bundling-sources/shared_libs/play-runtime/internal-bootstrap-token.ts +1322 -0
  82. package/dist/bundling-sources/shared_libs/play-runtime/internal-step-ids.ts +2 -2
  83. package/dist/bundling-sources/shared_libs/play-runtime/lane-retirement-gate.ts +1 -1
  84. package/dist/bundling-sources/shared_libs/play-runtime/launch-source-policy.ts +112 -0
  85. package/dist/bundling-sources/shared_libs/play-runtime/map-execution-frame.ts +8 -0
  86. package/dist/bundling-sources/shared_libs/play-runtime/perf-trace.ts +127 -0
  87. package/dist/bundling-sources/shared_libs/play-runtime/play-artifact-runtime-contract.ts +5 -0
  88. package/dist/bundling-sources/shared_libs/play-runtime/play-run-recovery-policy.ts +24 -1
  89. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/admission/contracts.ts +56 -0
  90. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/admission/index.ts +13 -0
  91. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/admission/job.ts +41 -0
  92. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/admission/ports.ts +17 -0
  93. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/admission/postgres-adapter.ts +54 -0
  94. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/attempts/contracts.ts +114 -0
  95. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/attempts/engine-suspension.ts +108 -0
  96. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/attempts/index.ts +36 -0
  97. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/attempts/job.ts +97 -0
  98. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/attempts/ports.ts +104 -0
  99. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/attempts/postgres-fence-adapter.ts +263 -0
  100. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/attempts/worker-terminal-projection.ts +64 -0
  101. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/projection/contracts.ts +29 -0
  102. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/projection/gateway-adapter.ts +56 -0
  103. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/projection/index.ts +15 -0
  104. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/projection/job.ts +65 -0
  105. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/projection/ports.ts +17 -0
  106. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/sandbox-cleanup/contracts.ts +42 -0
  107. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/sandbox-cleanup/index.ts +17 -0
  108. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/sandbox-cleanup/job.ts +142 -0
  109. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/sandbox-cleanup/ports.ts +42 -0
  110. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/sandbox-cleanup/postgres-adapter.ts +102 -0
  111. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/terminal/contracts.ts +60 -0
  112. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/terminal/index.ts +16 -0
  113. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/terminal/job.ts +78 -0
  114. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/terminal/ports.ts +54 -0
  115. package/dist/bundling-sources/shared_libs/play-runtime/play-runs/terminal/postgres-adapter.ts +71 -0
  116. package/dist/bundling-sources/shared_libs/play-runtime/play-runtime-batching-registry.ts +4 -0
  117. package/dist/bundling-sources/shared_libs/play-runtime/protocol.ts +2 -0
  118. package/dist/bundling-sources/shared_libs/play-runtime/receipt-status.ts +5 -8
  119. package/dist/bundling-sources/shared_libs/play-runtime/run-failure.ts +3 -5
  120. package/dist/bundling-sources/shared_libs/play-runtime/run-identity.ts +168 -0
  121. package/dist/bundling-sources/shared_libs/play-runtime/run-ledger.ts +44 -5
  122. package/dist/bundling-sources/shared_libs/play-runtime/runner-app/child-play-resolver.ts +26 -0
  123. package/dist/bundling-sources/shared_libs/play-runtime/runner-app/index.ts +3662 -0
  124. package/dist/bundling-sources/shared_libs/play-runtime/runner-app/progress-sidecar.ts +47 -0
  125. package/dist/bundling-sources/shared_libs/play-runtime/runner-app/runtime-deadline.ts +84 -0
  126. package/dist/bundling-sources/shared_libs/play-runtime/runner-app/runtime-gateway-transport.ts +91 -0
  127. package/dist/bundling-sources/shared_libs/play-runtime/runner-app/runtime-heartbeat.ts +424 -0
  128. package/dist/bundling-sources/shared_libs/play-runtime/runner-app/runtime-progress-push.ts +321 -0
  129. package/dist/bundling-sources/shared_libs/play-runtime/runner-app/runtime-sheet-persistence-retry.ts +110 -0
  130. package/dist/bundling-sources/shared_libs/play-runtime/runner-app/runtime-terminal-push.ts +625 -0
  131. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/daytona-lifecycle.ts +72 -9
  132. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/daytona-payload-transport.ts +6 -12
  133. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/daytona.ts +19 -0
  134. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/bundle.ts +0 -1
  135. package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/runtime-sandbox-reconciliation.ts +14 -44
  136. package/dist/bundling-sources/shared_libs/play-runtime/runtime-api.ts +103 -208
  137. package/dist/bundling-sources/shared_libs/play-runtime/runtime-authority.ts +201 -0
  138. package/dist/bundling-sources/shared_libs/play-runtime/runtime-env.ts +6 -0
  139. package/dist/bundling-sources/shared_libs/play-runtime/runtime-operation-contract.ts +67 -0
  140. package/dist/bundling-sources/shared_libs/play-runtime/runtime-release-environment.ts +2 -0
  141. package/dist/bundling-sources/shared_libs/play-runtime/runtime-sandbox-contract.ts +68 -0
  142. package/dist/bundling-sources/shared_libs/play-runtime/runtime-scheduler-topology.ts +14 -2
  143. package/dist/bundling-sources/shared_libs/play-runtime/runtime-telemetry.ts +108 -0
  144. package/dist/bundling-sources/shared_libs/play-runtime/sandbox-runs/contract.ts +4 -0
  145. package/dist/bundling-sources/shared_libs/play-runtime/sandbox-runs/runner-backend-adapter.ts +3 -0
  146. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backend.ts +7 -0
  147. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd-deadline-reconciliation.ts +88 -0
  148. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd-play-deploy-task.ts +124 -0
  149. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd-play-run-task.ts +68 -0
  150. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd-pool.ts +193 -0
  151. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd-queue-lifecycle.ts +269 -0
  152. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd-queue-suffix.ts +73 -0
  153. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd-runtime-worker.ts +6642 -0
  154. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd-shared.ts +897 -0
  155. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd-worker-metrics.ts +120 -0
  156. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd-worker-required-env.ts +76 -0
  157. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd.ts +476 -0
  158. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/gateway-heavy-request-admission.ts +47 -0
  159. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/gateway-progress-registry.ts +147 -0
  160. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/index.ts +27 -0
  161. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/lazy.ts +50 -0
  162. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/play-run-recovery.ts +98 -0
  163. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/postgres-budget-state.ts +260 -0
  164. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/postgres-pool.ts +1416 -0
  165. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/postgres-progress.ts +1255 -0
  166. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/postgres-rate-state.ts +942 -0
  167. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/postgres.ts +14636 -0
  168. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/receipt-gateway.ts +888 -0
  169. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/run-ledger-outbox-recovery.ts +355 -0
  170. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/run-terminal-transition.ts +46 -0
  171. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/runner-push.ts +60 -0
  172. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/runtime-api-origin.ts +33 -0
  173. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/runtime-receipt-gateway-health.ts +64 -0
  174. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/runtime-sandbox-capacity.ts +835 -0
  175. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/runtime-sandbox-ledger-reconciliation.ts +1218 -0
  176. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/runtime-sandbox-operation.ts +207 -0
  177. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/runtime-scheduler-schema.ts +10 -0
  178. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/scheduler-capacity.ts +123 -0
  179. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/scheduler-launch-read-observability.ts +78 -0
  180. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/submit-admission.ts +169 -0
  181. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/terminal-contract.ts +20 -0
  182. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/worker-queue-metrics.ts +34 -0
  183. package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/worker-resource-metrics.ts +249 -0
  184. package/dist/bundling-sources/shared_libs/play-runtime/sheet-attempt-sql.ts +7 -0
  185. package/dist/bundling-sources/shared_libs/play-runtime/step-progress.ts +296 -0
  186. package/dist/bundling-sources/shared_libs/play-runtime/tool-call/native-batch.ts +3 -3
  187. package/dist/bundling-sources/shared_libs/play-runtime/tool-call/runtime-step-receipts-adapter.ts +20 -1
  188. package/dist/bundling-sources/shared_libs/play-runtime/tool-execute-retry-policy.ts +60 -15
  189. package/dist/bundling-sources/shared_libs/play-runtime/tool-execution-outcome.ts +20 -0
  190. package/dist/bundling-sources/shared_libs/play-runtime/transient-service-error.ts +12 -0
  191. package/dist/bundling-sources/shared_libs/play-runtime/vercel-protection.ts +14 -1
  192. package/dist/bundling-sources/shared_libs/play-runtime/webhook-receipt-retry.ts +50 -0
  193. package/dist/bundling-sources/shared_libs/play-runtime/work-receipt-storage-contract.ts +165 -0
  194. package/dist/bundling-sources/shared_libs/play-runtime/work-receipts.ts +15 -23
  195. package/dist/bundling-sources/shared_libs/play-runtime/workflow-executor-auth.ts +169 -0
  196. package/dist/bundling-sources/shared_libs/play-runtime/zerobounce-batching.ts +122 -0
  197. package/dist/bundling-sources/shared_libs/plays/artifact-types.ts +2 -0
  198. package/dist/bundling-sources/shared_libs/plays/bundling/repository-adapter.ts +24 -0
  199. package/dist/bundling-sources/shared_libs/plays/child-run-projection.ts +174 -0
  200. package/dist/bundling-sources/shared_libs/plays/contracts.ts +2 -0
  201. package/dist/bundling-sources/shared_libs/plays/deploy/api-client.ts +267 -0
  202. package/dist/bundling-sources/shared_libs/plays/deploy/control-plane-types.ts +73 -0
  203. package/dist/bundling-sources/shared_libs/plays/deploy/manifest.ts +162 -0
  204. package/dist/bundling-sources/shared_libs/plays/deploy/project-serializer.ts +87 -0
  205. package/dist/bundling-sources/shared_libs/plays/deploy/source-file-path.ts +26 -0
  206. package/dist/bundling-sources/shared_libs/plays/deploy/target-paths.ts +36 -0
  207. package/dist/bundling-sources/shared_libs/plays/deployment-status.ts +1 -1
  208. package/dist/bundling-sources/shared_libs/plays/docflow.ts +1 -1
  209. package/dist/bundling-sources/shared_libs/plays/launch/input-contract.ts +400 -0
  210. package/dist/bundling-sources/shared_libs/plays/launch/prepare.ts +96 -0
  211. package/dist/bundling-sources/shared_libs/plays/local-file-discovery.ts +385 -0
  212. package/dist/bundling-sources/shared_libs/plays/play-grep-search.ts +112 -0
  213. package/dist/bundling-sources/shared_libs/plays/play-reference.ts +117 -0
  214. package/dist/bundling-sources/shared_libs/plays/run-input-summary.ts +260 -0
  215. package/dist/bundling-sources/shared_libs/plays/run-summary-types.ts +49 -0
  216. package/dist/bundling-sources/shared_libs/plays/secrets/errors.ts +19 -0
  217. package/dist/bundling-sources/shared_libs/plays/share/copy.ts +271 -0
  218. package/dist/bundling-sources/shared_libs/plays/share/metrics.ts +140 -0
  219. package/dist/bundling-sources/shared_libs/plays/share/public-read-model.ts +86 -0
  220. package/dist/bundling-sources/shared_libs/plays/share/seo-quality.ts +181 -0
  221. package/dist/bundling-sources/shared_libs/plays/share/static-pipeline-summary.ts +658 -0
  222. package/dist/bundling-sources/shared_libs/plays/share/types.ts +197 -0
  223. package/dist/bundling-sources/shared_libs/plays/sheet-filter.ts +347 -0
  224. package/dist/bundling-sources/shared_libs/plays/slack-hitl-timeout-error.ts +37 -0
  225. package/dist/bundling-sources/shared_libs/plays/standard-webhooks.ts +117 -0
  226. package/dist/bundling-sources/shared_libs/plays/static-pipeline.ts +6 -1
  227. package/dist/bundling-sources/shared_libs/plays/status-result.ts +388 -0
  228. package/dist/bundling-sources/shared_libs/plays/tool-result-types.ts +1 -1
  229. package/dist/bundling-sources/shared_libs/plays/transform-factor-structure.ts +377 -0
  230. package/dist/bundling-sources/shared_libs/plays/webhook-payload.ts +113 -0
  231. package/dist/bundling-sources/shared_libs/product-notifications/configuration.ts +7 -1
  232. package/dist/bundling-sources/shared_libs/product-notifications/default-policy.ts +3 -2
  233. package/dist/bundling-sources/shared_libs/product-notifications/overflow.ts +18 -0
  234. package/dist/bundling-sources/shared_libs/product-notifications/rolling-limit.ts +24 -0
  235. package/dist/bundling-sources/shared_libs/product-notifications/slack-delivery.ts +624 -0
  236. package/dist/bundling-sources/shared_libs/product-notifications/slack-payload.ts +140 -0
  237. package/dist/bundling-sources/shared_libs/product-notifications/slack-transport.ts +75 -0
  238. package/dist/bundling-sources/shared_libs/runtime-env.ts +6 -0
  239. package/dist/bundling-sources/shared_libs/security/email-blacklist.ts +42 -0
  240. package/dist/bundling-sources/shared_libs/security/header-safe-env.ts +10 -3
  241. package/dist/bundling-sources/shared_libs/security/slack-sanitize.ts +133 -0
  242. package/dist/cli/getting-started.d.mts +52 -0
  243. package/dist/cli/getting-started.d.ts +52 -0
  244. package/dist/cli/getting-started.js +65 -0
  245. package/dist/cli/getting-started.mjs +36 -0
  246. package/dist/cli/index.d.mts +9 -0
  247. package/dist/cli/index.d.ts +9 -0
  248. package/dist/cli/index.js +895 -407
  249. package/dist/cli/index.mjs +893 -414
  250. package/dist/{compiler-manifest-DsLbQaew.d.mts → compiler-manifest-x14KL83E.d.mts} +4 -2
  251. package/dist/{compiler-manifest-DsLbQaew.d.ts → compiler-manifest-x14KL83E.d.ts} +4 -2
  252. package/dist/index.d.mts +124 -154
  253. package/dist/index.d.ts +124 -154
  254. package/dist/index.js +132 -28
  255. package/dist/index.mjs +132 -28
  256. package/dist/install-integrity.json +182 -2
  257. package/dist/monitor-fleet-contract.d.mts +131 -0
  258. package/dist/monitor-fleet-contract.d.ts +131 -0
  259. package/dist/monitor-fleet-contract.js +406 -0
  260. package/dist/monitor-fleet-contract.mjs +367 -0
  261. package/dist/plays/bundle-play-file.d.mts +2 -2
  262. package/dist/plays/bundle-play-file.d.ts +2 -2
  263. package/dist/release.d.mts +255 -0
  264. package/dist/release.d.ts +255 -0
  265. package/dist/release.js +210 -0
  266. package/dist/release.mjs +183 -0
  267. package/package.json +21 -4
@@ -0,0 +1,140 @@
1
+ /**
2
+ * Package-owned metric aggregation for the public read model.
3
+ *
4
+ * Hard rules (see docs/shareable-play-pages-plan.md + AGENTS.md):
5
+ * - Only Deepline credits are aggregated here. Provider spend (USD) is never
6
+ * passed into this module.
7
+ * - Cost is exposed only when the owner opted in.
8
+ * - Latency is exposed only when the owner opted in AND the revision has no map.
9
+ * - Denominator-specific metrics return null when row/contact counts are
10
+ * missing or ambiguous.
11
+ */
12
+ import type { PlayCostBasis, PublishedPlayPageMetrics } from './types';
13
+
14
+ /**
15
+ * One completed run, reduced to the only facts the public metrics need.
16
+ * `providerCostUsd` deliberately does not exist on this type.
17
+ */
18
+ export type ShareRunMetricSample = {
19
+ /** Total Deepline credits for the run (sum of usageEvents.credits). */
20
+ credits: number;
21
+ /** Number of input rows processed, when reliably known. */
22
+ inputRowCount: number | null;
23
+ /** Number of output leads/contacts produced, when reliably known. */
24
+ outputLeadCount: number | null;
25
+ /** Wall-clock run latency in ms, when valid timing exists. */
26
+ latencyMs: number | null;
27
+ };
28
+
29
+ export type ComputePublicMetricsOptions = {
30
+ showAverageDeeplineCost: boolean;
31
+ showAverageLatency: boolean;
32
+ /** Latency is meaningless for mapped (fan-out) revisions. */
33
+ hasMap: boolean;
34
+ /** Which credit denominator the page may render; see `classifyCostBasis`. */
35
+ costBasis: PlayCostBasis;
36
+ };
37
+
38
+ function mean(values: number[]): number | null {
39
+ if (values.length === 0) {
40
+ return null;
41
+ }
42
+ const total = values.reduce((sum, value) => sum + value, 0);
43
+ return total / values.length;
44
+ }
45
+
46
+ function roundTo(value: number, decimals: number): number {
47
+ const factor = 10 ** decimals;
48
+ return Math.round(value * factor) / factor;
49
+ }
50
+
51
+ /**
52
+ * Aggregate a bounded sample of completed runs into public, credit-only metrics.
53
+ */
54
+ export function computePublicMetrics(
55
+ samples: ShareRunMetricSample[],
56
+ options: ComputePublicMetricsOptions,
57
+ ): PublishedPlayPageMetrics {
58
+ const sampleRunCount = samples.length;
59
+
60
+ const empty: PublishedPlayPageMetrics = {
61
+ averageDeeplineCostCredits: null,
62
+ averageCostPerInputRowCredits: null,
63
+ averageCostPerOutputLeadCredits: null,
64
+ averageLatencyMs: null,
65
+ sampleRunCount,
66
+ costBasis: options.costBasis,
67
+ };
68
+
69
+ if (sampleRunCount === 0) {
70
+ return empty;
71
+ }
72
+
73
+ const metrics: PublishedPlayPageMetrics = { ...empty };
74
+
75
+ if (options.showAverageDeeplineCost) {
76
+ const creditValues = samples
77
+ .map((sample) => sample.credits)
78
+ .filter((value) => Number.isFinite(value) && value >= 0);
79
+ const avgCredits = mean(creditValues);
80
+ metrics.averageDeeplineCostCredits =
81
+ avgCredits === null ? null : roundTo(avgCredits, 2);
82
+
83
+ metrics.averageCostPerInputRowCredits = ratioOverDenominator(
84
+ samples,
85
+ (sample) => sample.inputRowCount,
86
+ );
87
+ metrics.averageCostPerOutputLeadCredits = ratioOverDenominator(
88
+ samples,
89
+ (sample) => sample.outputLeadCount,
90
+ );
91
+ }
92
+
93
+ if (options.showAverageLatency && !options.hasMap) {
94
+ const latencyValues = samples
95
+ .map((sample) => sample.latencyMs)
96
+ .filter(
97
+ (value): value is number =>
98
+ value !== null && Number.isFinite(value) && value >= 0,
99
+ );
100
+ const avgLatency = mean(latencyValues);
101
+ metrics.averageLatencyMs =
102
+ avgLatency === null ? null : Math.round(avgLatency);
103
+ }
104
+
105
+ return metrics;
106
+ }
107
+
108
+ /**
109
+ * total credits / total denominator, considering only runs where the
110
+ * denominator is a reliable positive number. Returns null if no such run.
111
+ */
112
+ function ratioOverDenominator(
113
+ samples: ShareRunMetricSample[],
114
+ pick: (sample: ShareRunMetricSample) => number | null,
115
+ ): number | null {
116
+ let creditSum = 0;
117
+ let denominatorSum = 0;
118
+ let usableRuns = 0;
119
+
120
+ for (const sample of samples) {
121
+ const denominator = pick(sample);
122
+ if (
123
+ denominator === null ||
124
+ !Number.isFinite(denominator) ||
125
+ denominator <= 0 ||
126
+ !Number.isFinite(sample.credits) ||
127
+ sample.credits < 0
128
+ ) {
129
+ continue;
130
+ }
131
+ creditSum += sample.credits;
132
+ denominatorSum += denominator;
133
+ usableRuns += 1;
134
+ }
135
+
136
+ if (usableRuns === 0 || denominatorSum <= 0) {
137
+ return null;
138
+ }
139
+ return roundTo(creditSum / denominatorSum, 4);
140
+ }
@@ -0,0 +1,86 @@
1
+ /**
2
+ * Package-owned assembler for the bounded `PublishedPlayPagePackage`.
3
+ *
4
+ * This is the ONLY object the public page and public API expose. It is built
5
+ * from already-gathered, already-sanitized inputs — this function performs no
6
+ * I/O and makes no access decisions.
7
+ */
8
+ import {
9
+ buildInputSchemaShape,
10
+ buildOutputSchemaShape,
11
+ buildPublicSubsteps,
12
+ buildStaticPipelineSummary,
13
+ } from './static-pipeline-summary';
14
+ // This Module is bundled by Convex through its workspace dependency graph.
15
+ import { buildShareCanonicalPath } from '../slug';
16
+ import type {
17
+ PlayShareGeneratedCopy,
18
+ PlayShareSeoIndexing,
19
+ PublishedPlayPageMetrics,
20
+ PublishedPlayPagePackage,
21
+ } from './types';
22
+
23
+ export type BuildPublishedPlayPagePackageInput = {
24
+ shareSlug: string;
25
+ /** Org URL handle; the public page is namespaced `/p/:orgSlug/:playName`. */
26
+ orgSlug: string;
27
+ /** Page-level SEO posture; applied only to the published version. */
28
+ pageSeoIndexing: PlayShareSeoIndexing;
29
+ publishedVersion: number;
30
+ publishedAt: number;
31
+ definitionName: string;
32
+ ownerDisplayName: string | null;
33
+ revision: {
34
+ id: string;
35
+ version: number;
36
+ graphHash: string | null;
37
+ staticPipeline: unknown;
38
+ };
39
+ copy: PlayShareGeneratedCopy;
40
+ metrics: PublishedPlayPageMetrics;
41
+ };
42
+
43
+ export function buildPublishedPlayPagePackage(
44
+ input: BuildPublishedPlayPagePackageInput,
45
+ ): PublishedPlayPagePackage {
46
+ const isPublishedVersion = input.revision.version === input.publishedVersion;
47
+
48
+ // Non-published (historical) versions default to noindex regardless of the
49
+ // page setting, so old copies never compete with the canonical version.
50
+ const seoIndexing: PlayShareSeoIndexing = isPublishedVersion
51
+ ? input.pageSeoIndexing
52
+ : 'noindex';
53
+
54
+ return {
55
+ page: {
56
+ shareSlug: input.shareSlug,
57
+ orgSlug: input.orgSlug,
58
+ visibility: 'unlisted',
59
+ seoIndexing,
60
+ canonicalPath: buildShareCanonicalPath(
61
+ input.orgSlug,
62
+ input.definitionName,
63
+ input.publishedVersion,
64
+ ),
65
+ isPublishedVersion,
66
+ publishedAt: input.publishedAt,
67
+ },
68
+ definition: {
69
+ name: input.definitionName,
70
+ ownerDisplayName: input.ownerDisplayName,
71
+ },
72
+ revision: {
73
+ id: input.revision.id,
74
+ version: input.revision.version,
75
+ graphHash: input.revision.graphHash,
76
+ staticPipelineSummary: buildStaticPipelineSummary(
77
+ input.revision.staticPipeline,
78
+ ),
79
+ substeps: buildPublicSubsteps(input.revision.staticPipeline),
80
+ inputSchema: buildInputSchemaShape(input.revision.staticPipeline),
81
+ outputSchema: buildOutputSchemaShape(input.revision.staticPipeline),
82
+ },
83
+ copy: input.copy,
84
+ publicMetrics: input.metrics,
85
+ };
86
+ }
@@ -0,0 +1,181 @@
1
+ import type { PublishedPlayPagePackage } from './types';
2
+
3
+ // SEO quality is deterministic authoring policy, not a web-app adapter.
4
+
5
+ export type PlayPageSeoQualitySignal =
6
+ | 'unique_title'
7
+ | 'unique_description'
8
+ | 'required_body_sections'
9
+ | 'concrete_inputs'
10
+ | 'concrete_outputs'
11
+ | 'workflow_structure'
12
+ | 'provider_or_tool_count'
13
+ | 'related_links'
14
+ | 'json_ld_ready'
15
+ | 'canonical'
16
+ | 'h1'
17
+ | 'no_placeholder_copy';
18
+
19
+ export type PlayPageSeoQualityResult = {
20
+ score: number;
21
+ maxScore: number;
22
+ passed: boolean;
23
+ passedSignals: PlayPageSeoQualitySignal[];
24
+ failedSignals: PlayPageSeoQualitySignal[];
25
+ };
26
+
27
+ export const PLAY_PAGE_REQUIRED_BODY_SECTIONS = [
28
+ 'What this workflow does',
29
+ 'Inputs you need',
30
+ 'Outputs you get',
31
+ 'How it works',
32
+ 'Cost/latency when available',
33
+ 'Common edits',
34
+ 'Related workflows',
35
+ 'Run or fork with Deepline CLI',
36
+ ] as const;
37
+
38
+ const MIN_SCORE_TO_INDEX = 10;
39
+ const PLACEHOLDER_PATTERNS = [
40
+ /\blorem ipsum\b/i,
41
+ /\btbd\b/i,
42
+ /\bcoming soon\b/i,
43
+ /\bplaceholder\b/i,
44
+ /\bTODO\b/,
45
+ /\bexample workflow\b/i,
46
+ /\bgeneric workflow\b/i,
47
+ ];
48
+
49
+ function cleanWords(value: string): Set<string> {
50
+ return new Set(
51
+ value
52
+ .toLowerCase()
53
+ .replace(/[^a-z0-9\s]/g, ' ')
54
+ .split(/\s+/)
55
+ .filter((word) => word.length >= 4),
56
+ );
57
+ }
58
+
59
+ function overlapRatio(a: string, b: string): number {
60
+ const left = cleanWords(a);
61
+ const right = cleanWords(b);
62
+ if (left.size === 0 || right.size === 0) return 1;
63
+ let overlap = 0;
64
+ for (const word of left) {
65
+ if (right.has(word)) overlap += 1;
66
+ }
67
+ return overlap / Math.min(left.size, right.size);
68
+ }
69
+
70
+ function hasConcreteFields(fields: string[] | undefined): boolean {
71
+ const concrete = (fields ?? [])
72
+ .map((field) => field.trim())
73
+ .filter(Boolean)
74
+ .filter(
75
+ (field) =>
76
+ !/^(run parameters|input rows?|output table|results?)$/i.test(field),
77
+ );
78
+ return concrete.length > 0;
79
+ }
80
+
81
+ function hasNoPlaceholderCopy(pkg: PublishedPlayPagePackage): boolean {
82
+ const searchable = [
83
+ pkg.copy.title,
84
+ pkg.copy.shortDescription,
85
+ pkg.copy.jtbd,
86
+ pkg.copy.llmSummary,
87
+ pkg.copy.seoTitle,
88
+ pkg.copy.seoDescription,
89
+ ...pkg.copy.whenToUse,
90
+ ...pkg.copy.inputs,
91
+ ...pkg.copy.outputs,
92
+ ].join('\n');
93
+ return !PLACEHOLDER_PATTERNS.some((pattern) => pattern.test(searchable));
94
+ }
95
+
96
+ export function evaluatePlayPageSeoQuality(input: {
97
+ pkg: PublishedPlayPagePackage;
98
+ relatedLinkCount: number;
99
+ }): PlayPageSeoQualityResult {
100
+ const { pkg, relatedLinkCount } = input;
101
+ const checks: Array<[PlayPageSeoQualitySignal, boolean]> = [
102
+ [
103
+ 'unique_title',
104
+ pkg.copy.seoTitle.trim().length >= 18 &&
105
+ pkg.copy.title.trim().length > 0 &&
106
+ overlapRatio(pkg.copy.seoTitle, pkg.copy.seoDescription) < 0.82,
107
+ ],
108
+ [
109
+ 'unique_description',
110
+ pkg.copy.seoDescription.trim().length >= 80 &&
111
+ pkg.copy.seoDescription.trim().length <= 170 &&
112
+ overlapRatio(pkg.copy.seoDescription, pkg.copy.shortDescription) < 0.95,
113
+ ],
114
+ ['required_body_sections', PLAY_PAGE_REQUIRED_BODY_SECTIONS.length === 8],
115
+ [
116
+ 'concrete_inputs',
117
+ hasConcreteFields(pkg.copy.inputs) ||
118
+ hasConcreteFields(pkg.revision.inputSchema?.fields),
119
+ ],
120
+ [
121
+ 'concrete_outputs',
122
+ hasConcreteFields(pkg.copy.outputs) ||
123
+ hasConcreteFields(pkg.revision.outputSchema?.fields),
124
+ ],
125
+ [
126
+ 'workflow_structure',
127
+ pkg.revision.staticPipelineSummary.stepCount > 0 &&
128
+ pkg.revision.staticPipelineSummary.previewNodes.length > 0,
129
+ ],
130
+ [
131
+ 'provider_or_tool_count',
132
+ pkg.revision.staticPipelineSummary.providerCount > 0 ||
133
+ pkg.revision.staticPipelineSummary.stepCount >= 2,
134
+ ],
135
+ ['related_links', relatedLinkCount >= 1],
136
+ [
137
+ 'json_ld_ready',
138
+ pkg.copy.llmSummary.trim().length > 0 &&
139
+ pkg.copy.agentPrompt.trim().length > 0,
140
+ ],
141
+ [
142
+ 'canonical',
143
+ /^\/p\/[^/]+\/[^/]+\/v\/\d+$/.test(pkg.page.canonicalPath) &&
144
+ pkg.page.canonicalPath.includes(
145
+ encodeURIComponent(pkg.definition.name),
146
+ ),
147
+ ],
148
+ ['h1', pkg.copy.title.trim().length > 0],
149
+ ['no_placeholder_copy', hasNoPlaceholderCopy(pkg)],
150
+ ];
151
+
152
+ const passedSignals = checks
153
+ .filter(([, passed]) => passed)
154
+ .map(([signal]) => signal);
155
+ const failedSignals = checks
156
+ .filter(([, passed]) => !passed)
157
+ .map(([signal]) => signal);
158
+
159
+ return {
160
+ score: passedSignals.length,
161
+ maxScore: checks.length,
162
+ passed:
163
+ passedSignals.length >= MIN_SCORE_TO_INDEX && failedSignals.length === 0,
164
+ passedSignals,
165
+ failedSignals,
166
+ };
167
+ }
168
+
169
+ export function applyPlayPageSeoQuality(input: {
170
+ pkg: PublishedPlayPagePackage;
171
+ relatedLinkCount: number;
172
+ }): PublishedPlayPagePackage {
173
+ const result = evaluatePlayPageSeoQuality(input);
174
+ return {
175
+ ...input.pkg,
176
+ page: {
177
+ ...input.pkg.page,
178
+ seoIndexing: result.passed ? input.pkg.page.seoIndexing : 'noindex',
179
+ },
180
+ };
181
+ }