You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: BITCODE_SPEC_V48.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -398,7 +398,7 @@ Settled demand search may scan `executions` for admitted/settled AssetPack rows
398
398
399
399
| Method | Path | Law |
400
400
|---|---|---|
401
-
| POST |`/api/deposit/synthesize-options`| Auth required. Validate body (`repositoryFullName`, branch, commit, obfuscations, forcedInclusions, forcedExclusions, demand signals). Create `executions` row `running`. Register `waitUntil` continuation. Return `{ runId, status: 'dispatched' }` immediately. `maxDuration` high enough for deposit (800s class). Background: provision host → run SDIVF or sandbox harness → validate candidates → build real option synthesis → ground neediness from settled packs → persist `output`**before** completion event. Fail-closed messages on zero options / cancel / timeout. |
401
+
| POST |`/api/deposit/synthesize-options`| Auth required. Validate body (`repositoryFullName`, branch, commit, obfuscations, forcedInclusions, forcedExclusions, demand signals). Create `executions` row `running`. Register `waitUntil` continuation. Return `{ runId, status: 'dispatched' }` immediately. `maxDuration` high enough for deposit (800s class). Background: provision host → run SDIVF or sandbox host → validate candidates → build real option synthesis → ground neediness from settled packs → persist `output`**before** completion event. Fail-closed messages on zero options / cancel / timeout. |
402
402
| GET |`/api/deposit/demand-estimate`| Auth required. Query settled Depository packs; return `{ ok, estimate, signals }`. `estimatable:false` when corpus thin. |
403
403
| GET |`/api/executions/history`| List owner runs (deposit lens filters). |
404
404
| GET |`/api/executions/history/[runId]`| Full row + optional event page; support `?tail=N` for last N events. |
@@ -412,7 +412,7 @@ Dispatch must use Vercel `waitUntil` (QA F31) — bare `void` after response is
412
412
| HostKind | Implementation | Law |
413
413
|---|---|---|
414
414
|`local`|`packages/pipeline-hosts` LocalHost + `uapi/lib/deposit-source-provisioning`| Default when `BITCODE_PIPELINE_HOST` unset. Real `git clone` of full tree; Node fs workspace; inventory `paths` + `sources` + `samples`. |
415
-
|`sandbox`|`VercelSandboxPipelineHost` + asset-pack harness| When `BITCODE_PIPELINE_HOST=sandbox`. Auth: OIDC or `VERCEL_TOKEN`+team+project — fail closed if missing. Deposit boxes **`persistent: false`**. Create → run harness in-box → stop/delete. Persist `context.sandboxId` while running for cancel. Events: `sandbox-create-started`, `sandbox-created`, `command-started`, `sandbox-stopped`, `sandbox-cancelled`. |
415
+
|`sandbox`|`VercelSandboxPipelineHost` + asset-pack host| When `BITCODE_PIPELINE_HOST=sandbox`. Auth: OIDC or `VERCEL_TOKEN`+team+project — fail closed if missing. Deposit boxes **`persistent: false`**. Create → run host in-box → stop/delete. Persist `context.sandboxId` while running for cancel. Events: `sandbox-create-started`, `sandbox-created`, `command-started`, `sandbox-stopped`, `sandbox-cancelled`. |
416
416
417
417
Inventory scope after provision: `applyInventoryScope({ inclusions: forcedInclusions, exclusions: forcedExclusions })`. Prompt path uses `projectInventoryForPrompt` (paths+samples only — never full `sources` in prompts).
418
418
@@ -561,7 +561,7 @@ Rebuild order in `buildDepositRouteSession` / `DepositPageClient`:
561
561
| Real option projection |`deposit-option-real-synthesis.ts`|
| 27 | Run configuration locked above telemetry in run detail |`DepositPageClient` config above telemetry; `disabled` when `synthesisRunId` set | depositPageClient.test | ✅ |
0 commit comments