diff --git a/.github/workflows/pages.yml b/.github/workflows/pages.yml index 2643b07074..08fbdc0b1f 100644 --- a/.github/workflows/pages.yml +++ b/.github/workflows/pages.yml @@ -140,6 +140,9 @@ jobs: uses: denoland/setup-deno@v2 with: deno-version: '2.9.5' + - name: Check documentation exports drift + if: env.RUN == 'true' + run: deno task docs:exports-drift - name: Check documentation snippets if: env.RUN == 'true' run: deno task docs:snippets diff --git a/.llm/assets/agent-docs/prose.json.gz b/.llm/assets/agent-docs/prose.json.gz index ea0b039583..f6c1e3b626 100644 Binary files a/.llm/assets/agent-docs/prose.json.gz and b/.llm/assets/agent-docs/prose.json.gz differ diff --git a/.llm/assets/agent-docs/provenance.json b/.llm/assets/agent-docs/provenance.json index 669c16a3e5..a894f884c4 100644 --- a/.llm/assets/agent-docs/provenance.json +++ b/.llm/assets/agent-docs/provenance.json @@ -1,8 +1,8 @@ { "schemaVersion": 1, "version": "0.0.6", - "sourceCommit": "ef3e43f06", - "extractionTimestamp": "2026-08-15T18:30:08.338Z", + "sourceCommit": "0d4c82d6e", + "extractionTimestamp": "2026-08-15T20:40:35.830Z", "files": [ "context/01-how-the-web-became-the-default.mdx", "context/02-how-the-web-stack-grew-up.mdx", @@ -186,7 +186,7 @@ "pages/web-layer/vite/index.md", "pages/why/index.md" ], - "uncompressedBytes": 4755371, - "compressedBytes": 1364040, - "sha256": "c8491e535b4c728541439196ad4862ead67a9e2305af1d91e6412091b38bfd28" + "uncompressedBytes": 4770349, + "compressedBytes": 1368351, + "sha256": "c1d095a62e72555356d346d78848bff144ce9773c38eb9cd95f2d406b28174b3" } diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/base-refresh/evidence-set.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/base-refresh/evidence-set.json new file mode 100644 index 0000000000..9dd74efa93 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/base-refresh/evidence-set.json @@ -0,0 +1,35 @@ +{ + "schemaVersion": 1, + "immutableHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "surface": "reference-export-drift-gate post-eval base refresh", + "expectedGateIds": [ + "agent-docs-prose", + "arch-check", + "assets-barrel", + "check", + "docs-accuracy", + "docs-source-format", + "docs-source-format-test", + "docs-tagline", + "publish-assets", + "publish-dry-run", + "quality-job", + "test" + ], + "receiptIds": [ + "reference-export-base-refresh-agent-docs-prose", + "reference-export-base-refresh-arch-check", + "reference-export-base-refresh-assets-barrel", + "reference-export-base-refresh-check", + "reference-export-base-refresh-docs-accuracy", + "reference-export-base-refresh-docs-source-format", + "reference-export-base-refresh-docs-source-format-test", + "reference-export-base-refresh-docs-tagline", + "reference-export-base-refresh-publish-assets", + "reference-export-base-refresh-publish-dry-run", + "reference-export-base-refresh-quality-job", + "reference-export-base-refresh-test" + ], + "sufficiency": "SUFFICIENT", + "reasons": [] +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/base-refresh/path-lock-union.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/base-refresh/path-lock-union.json new file mode 100644 index 0000000000..2a7c76ca12 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/base-refresh/path-lock-union.json @@ -0,0 +1,53 @@ +{ + "schemaVersion": 1, + "immutableHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "mergeParents": [ + "0d4c82d6e4bd327abd88eb8b80e7a7acd20ea4aa", + "0ef48c2ec661a7e6d55ec2faf5def6ae7dd2e6eb" + ], + "conflictAndCombinedDiffPaths": [ + ".llm/assets/agent-docs/prose.json.gz", + ".llm/assets/agent-docs/provenance.json", + "packages/cli/src/kernel/assets/agent-docs.generated.ts", + "packages/mcp/src/publish-assets.generated.ts" + ], + "implementationPathCount": 14, + "authorizedContractPathCount": 17, + "implementationPaths": [ + ".github/workflows/pages.yml", + ".llm/assets/agent-docs/prose.json.gz", + ".llm/assets/agent-docs/provenance.json", + ".llm/tools/docs/check-accuracy-and-discoverability.ts", + ".llm/tools/docs/check-exports-drift.ts", + ".llm/tools/docs/check-exports-drift_test.ts", + "deno.json", + "docs/site/reference/fresh-ui/index.md", + "packages/cli/src/kernel/assets/agent-docs.generated.ts", + "packages/contracts/schemas/filters.ts", + "packages/contracts/schemas/pagination.ts", + "packages/contracts/src/application/paginated-query.ts", + "packages/contracts/src/application/transform-helpers.ts", + "packages/mcp/src/publish-assets.generated.ts" + ], + "unexpectedImplementationPaths": [], + "unionEvidence": { + "main1665Page": "pages/web-layer/query-bridge/index.md", + "main1665Markers": [ + "one possibility is that two", + "module instances are loaded" + ], + "leaf1666Page": "pages/reference/fresh-ui/index.md", + "leaf1666Marker": "exact, reason-bearing omission group", + "allPresentInCanonicalCorpus": true + }, + "corpus": { + "fileCount": 181, + "uncompressedBytes": 4770349, + "compressedBytes": 1368351, + "canonicalSha256": "c1d095a62e72555356d346d78848bff144ce9773c38eb9cd95f2d406b28174b3", + "gzipSha256": "46703a024d102c278043e2b48ebab906154c728a9c615d939651842068c52f7c" + }, + "denoLockBlob": "a1522e6ecc98dd4232312385b0cea4e52f5fa4b2", + "denoLockMatchesPremergeMainHeadAndWorkingTree": true, + "priorEvidenceAppendOnly": true +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/doc-lint-contracts.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/doc-lint-contracts.json new file mode 100644 index 0000000000..8c1c1e5371 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/doc-lint-contracts.json @@ -0,0 +1,83 @@ +{ + "source": { + "mode": "auto", + "root": "packages/contracts", + "entrypoints": [ + "./crud.ts", + "./mod.ts", + "./query.ts", + "./transform.ts" + ], + "exitCode": 1 + }, + "summary": { + "totalPackages": 1, + "totalErrors": 9, + "totalPrivateTypeRef": 9, + "totalMissingJSDoc": 0, + "totalOther": 0 + }, + "packages": [ + { + "name": "@netscript/contracts", + "dir": "packages/contracts", + "entrypoints": [ + { + "path": "./crud.ts", + "privateTypeRef": 12, + "missingJSDoc": 0, + "other": 0, + "total": 12 + }, + { + "path": "./mod.ts", + "privateTypeRef": 8, + "missingJSDoc": 0, + "other": 0, + "total": 8 + }, + { + "path": "./query.ts", + "privateTypeRef": 0, + "missingJSDoc": 0, + "other": 0, + "total": 0 + }, + { + "path": "./transform.ts", + "privateTypeRef": 0, + "missingJSDoc": 0, + "other": 0, + "total": 0 + } + ], + "files": [ + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/contracts/src/application/contract-primitives.ts", + "privateTypeRef": 8, + "missingJSDoc": 0, + "other": 0, + "total": 8 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/contracts/crud/create-crud-contract.ts", + "privateTypeRef": 1, + "missingJSDoc": 0, + "other": 0, + "total": 1 + } + ], + "combinedTotal": 9, + "combinedPrivateTypeRef": 9, + "combinedMissingJSDoc": 0, + "combinedOther": 0, + "combinedExitCode": 1, + "entrypointExitCodes": { + "./crud.ts": 1, + "./mod.ts": 1, + "./query.ts": 0, + "./transform.ts": 0 + } + } + ] +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/doc-lint-fresh-ui.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/doc-lint-fresh-ui.json new file mode 100644 index 0000000000..40961d9751 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/doc-lint-fresh-ui.json @@ -0,0 +1,192 @@ +{ + "source": { + "mode": "auto", + "root": "packages/fresh-ui", + "entrypoints": [ + "./desktop.ts", + "./interactive.ts", + "./mod.ts", + "./primitives.tsx", + "./registry.ts", + "./src/ai/render-ui.tsx" + ], + "exitCode": 1 + }, + "summary": { + "totalPackages": 1, + "totalErrors": 123, + "totalPrivateTypeRef": 96, + "totalMissingJSDoc": 27, + "totalOther": 0 + }, + "packages": [ + { + "name": "@netscript/fresh-ui", + "dir": "packages/fresh-ui", + "entrypoints": [ + { + "path": "./desktop.ts", + "privateTypeRef": 0, + "missingJSDoc": 0, + "other": 0, + "total": 0 + }, + { + "path": "./interactive.ts", + "privateTypeRef": 96, + "missingJSDoc": 27, + "other": 0, + "total": 123 + }, + { + "path": "./mod.ts", + "privateTypeRef": 0, + "missingJSDoc": 0, + "other": 0, + "total": 0 + }, + { + "path": "./primitives.tsx", + "privateTypeRef": 0, + "missingJSDoc": 0, + "other": 0, + "total": 0 + }, + { + "path": "./registry.ts", + "privateTypeRef": 0, + "missingJSDoc": 0, + "other": 0, + "total": 0 + }, + { + "path": "./src/ai/render-ui.tsx", + "privateTypeRef": 0, + "missingJSDoc": 0, + "other": 0, + "total": 0 + } + ], + "files": [ + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/combobox/combobox.types.ts", + "privateTypeRef": 15, + "missingJSDoc": 18, + "other": 0, + "total": 33 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/popover/Popover.tsx", + "privateTypeRef": 10, + "missingJSDoc": 1, + "other": 0, + "total": 11 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/popover/popover.types.ts", + "privateTypeRef": 10, + "missingJSDoc": 0, + "other": 0, + "total": 10 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/dialog/Dialog.tsx", + "privateTypeRef": 6, + "missingJSDoc": 1, + "other": 0, + "total": 7 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/drawer/Drawer.tsx", + "privateTypeRef": 6, + "missingJSDoc": 1, + "other": 0, + "total": 7 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/sheet/Sheet.tsx", + "privateTypeRef": 6, + "missingJSDoc": 1, + "other": 0, + "total": 7 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tooltip/Tooltip.tsx", + "privateTypeRef": 6, + "missingJSDoc": 1, + "other": 0, + "total": 7 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/accordion/Accordion.tsx", + "privateTypeRef": 5, + "missingJSDoc": 1, + "other": 0, + "total": 6 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/dialog/dialog.types.ts", + "privateTypeRef": 6, + "missingJSDoc": 0, + "other": 0, + "total": 6 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/sheet/sheet.types.ts", + "privateTypeRef": 6, + "missingJSDoc": 0, + "other": 0, + "total": 6 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tooltip/tooltip.types.ts", + "privateTypeRef": 6, + "missingJSDoc": 0, + "other": 0, + "total": 6 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/accordion/accordion.types.ts", + "privateTypeRef": 5, + "missingJSDoc": 0, + "other": 0, + "total": 5 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tabs/Tabs.tsx", + "privateTypeRef": 4, + "missingJSDoc": 1, + "other": 0, + "total": 5 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tabs/tabs.types.ts", + "privateTypeRef": 4, + "missingJSDoc": 0, + "other": 0, + "total": 4 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/combobox/Combobox.tsx", + "privateTypeRef": 1, + "missingJSDoc": 2, + "other": 0, + "total": 3 + } + ], + "combinedTotal": 123, + "combinedPrivateTypeRef": 96, + "combinedMissingJSDoc": 27, + "combinedOther": 0, + "combinedExitCode": 1, + "entrypointExitCodes": { + "./desktop.ts": 0, + "./interactive.ts": 1, + "./mod.ts": 0, + "./primitives.tsx": 0, + "./registry.ts": 0, + "./src/ai/render-ui.tsx": 0 + } + } + ] +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/evidence-set-fix1.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/evidence-set-fix1.json new file mode 100644 index 0000000000..762265552c --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/evidence-set-fix1.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "immutableHead": "4238670173271bca4281eba7db6c2030d046bc73", + "surface": "reference-export-drift-gate FAIL_FIX repair", + "expectedGateIds": [ + "arch-check", + "check", + "docs-accuracy", + "docs-source-format", + "publish-dry-run", + "quality-job", + "test" + ], + "receiptIds": [ + "reference-export-fix1-arch-check", + "reference-export-fix1-check", + "reference-export-fix1-docs-accuracy", + "reference-export-fix1-docs-source-format", + "reference-export-fix1-publish-dry-run", + "reference-export-fix1-quality-job", + "reference-export-fix1-test-attempt2" + ], + "sufficiency": "SUFFICIENT", + "reasons": [] +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/evidence-set.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/evidence-set.json new file mode 100644 index 0000000000..3ceba6cba5 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/evidence-set.json @@ -0,0 +1,25 @@ +{ + "schemaVersion": 1, + "immutableHead": "47ca22abe94b9d2e54d3778edc8944094b227886", + "surface": "reference-export-drift-gate S3", + "expectedGateIds": [ + "arch-check", + "check", + "docs-accuracy", + "docs-source-format", + "publish-dry-run", + "quality-job", + "test" + ], + "receiptIds": [ + "reference-export-s3-arch-check", + "reference-export-s3-check", + "reference-export-s3-docs-accuracy", + "reference-export-s3-docs-source-format", + "reference-export-s3-publish-dry-run", + "reference-export-s3-quality-job", + "reference-export-s3-test" + ], + "sufficiency": "SUFFICIENT", + "reasons": [] +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/jsr-contracts.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/jsr-contracts.json new file mode 100644 index 0000000000..53f8c54cf4 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/jsr-contracts.json @@ -0,0 +1,88 @@ +{ + "pkg": { + "name": "@netscript/contracts", + "version": "0.0.6", + "description": "NetScript contract primitives, common schemas, CRUD generators, query helpers, and transform helpers.", + "root": "packages/contracts" + }, + "exports": { + ".": "./mod.ts", + "./crud": "./crud.ts", + "./query": "./query.ts", + "./transform": "./transform.ts" + }, + "files": { + "total": 21, + "loc": 2611, + "entries": [ + { + "path": "mod.ts", + "bytes": 694 + }, + { + "path": "crud.ts", + "bytes": 757 + }, + { + "path": "query.ts", + "bytes": 606 + }, + { + "path": "transform.ts", + "bytes": 383 + } + ] + }, + "docs": { + "hasReadme": true, + "readmeLines": 105, + "hasDocsFolder": false, + "moduleTagOnEntries": { + ".": true, + "./crud": true, + "./query": true, + "./transform": true + }, + "descriptionLen": 101 + }, + "surface": { + ".": { + "exported": [], + "rawCount": 1 + }, + "./crud": { + "exported": [], + "rawCount": 1 + }, + "./query": { + "exported": [], + "rawCount": 3 + }, + "./transform": { + "exported": [], + "rawCount": 1 + } + }, + "tests": { + "fileCount": 3, + "files": [ + "tests/schema-types_test.ts", + "tests/errors_test.ts", + "tests/contracts_test.ts" + ] + }, + "gates": [ + { + "gate": "F-JSR-7 slow-types", + "level": "INFO", + "message": "Checking for slow types in the public API... — sanctioned --allow-slow-types (oRPC-bound; see docs/architecture/doctrine/02-public-surface.md)" + } + ], + "slowTypes": { + "ok": true, + "warnings": [ + "Checking for slow types in the public API..." + ], + "rawTail": "\nChecking for slow types in the public API...\nSimulating publish of @netscript/contracts@0.0.6 with files:\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/README.md (5.07KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/crud.ts (757B)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/crud/create-crud-contract.ts (16.88KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/deno.json (1.01KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/mod.ts (694B)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/query.ts (606B)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/schemas/filters.ts (6.4KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/schemas/pagination.ts (7.27KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/application/contract-primitives.ts (5.19KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/application/paginated-query.ts (6.5KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/application/transform-helpers.ts (5.45KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/application/zod-helpers.ts (4.24KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/diagnostics/inspection.ts (1.03KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/domain/constants.ts (1.17KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/domain/errors.ts (3.13KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/domain/result.ts (431B)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/domain/schema-types.ts (3.65KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/domain/schemas.ts (7.96KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/public/mod.ts (2.15KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/transform.ts (383B)\nSuccess Dry run complete\n" + } +} \ No newline at end of file diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/jsr-fresh-ui.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/jsr-fresh-ui.json new file mode 100644 index 0000000000..b74783f8cd --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/jsr-fresh-ui.json @@ -0,0 +1,194 @@ +{ + "pkg": { + "name": "@netscript/fresh-ui", + "version": "0.0.6", + "description": "Fresh UI registry seams and interactive foundations for NetScript.", + "root": "packages/fresh-ui" + }, + "exports": { + ".": "./mod.ts", + "./ai/render-ui": "./src/ai/render-ui.tsx", + "./desktop": "./desktop.ts", + "./interactive": "./interactive.ts", + "./primitives": "./primitives.tsx", + "./registry": "./registry.ts" + }, + "files": { + "total": 64, + "loc": 9137, + "entries": [ + { + "path": "mod.ts", + "bytes": 1258 + }, + { + "path": "src/ai/render-ui.tsx", + "bytes": 13013 + }, + { + "path": "desktop.ts", + "bytes": 1191 + }, + { + "path": "interactive.ts", + "bytes": 3576 + }, + { + "path": "primitives.tsx", + "bytes": 874 + }, + { + "path": "registry.ts", + "bytes": 4142 + } + ] + }, + "docs": { + "hasReadme": true, + "readmeLines": 164, + "hasDocsFolder": false, + "moduleTagOnEntries": { + ".": true, + "./ai/render-ui": true, + "./desktop": true, + "./interactive": true, + "./primitives": true, + "./registry": true + }, + "descriptionLen": 66 + }, + "surface": { + ".": { + "exported": [ + "DATA_GRID_CELL_VARIANTS", + "DataGrid", + "ICON_PATHS", + "Icon", + "REGISTRY_TOAST_QUERY_KEYS", + "cn", + "getToast", + "stripToastFromUrl", + "withToast" + ], + "rawCount": 9 + }, + "./ai/render-ui": { + "exported": [ + "RENDER_UI_BLOCK_CATEGORIES", + "RENDER_UI_MAX_DEPTH", + "RenderUiBlockCategory", + "RenderUiBlockType", + "RenderUiFallbackReason", + "RenderUiNode", + "RenderUiOptions", + "RenderUiSurface", + "RenderUiSurfaceProps", + "renderUiPayload" + ], + "rawCount": 10 + }, + "./desktop": { + "exported": [ + "DESKTOP_CHROME_DISABLED_REASONS", + "DESKTOP_CHROME_STATUSES", + "DESKTOP_MENU_SOURCES", + "DESKTOP_OPERATION_REASONS", + "DESKTOP_OPERATION_STATUSES", + "DESKTOP_WINDOW_ACTIONS", + "createDesktopChrome" + ], + "rawCount": 7 + }, + "./interactive": { + "exported": [ + "ACTION_MENU_ITEM_INTENTS", + "Accordion", + "ActionMenu", + "Combobox", + "Dialog", + "Drawer", + "Popover", + "Sheet", + "Tabs", + "Tooltip" + ], + "rawCount": 10 + }, + "./primitives": { + "exported": [ + "ICON_PATHS", + "Icon", + "Show", + "SrOnly", + "VisuallyHidden" + ], + "rawCount": 5 + }, + "./registry": { + "exported": [ + "FRESH_UI_REGISTRY_CONTENT", + "FreshUiRegistryCollection", + "FreshUiRegistryCssContribution", + "FreshUiRegistryFile", + "FreshUiRegistryItem", + "FreshUiRegistryManifest", + "freshUiRegistryManifest" + ], + "rawCount": 7 + } + }, + "tests": { + "fileCount": 17, + "files": [ + "tests/desktop/desktop-chrome.test.ts", + "tests/_fixtures/docs-examples_test.ts", + "tests/registry-doc-drift.test.ts", + "tests/chat/parse-blocks.test.ts", + "tests/registry/render-ui-generated.test.ts", + "tests/registry/markdown-pipeline.test.ts", + "tests/registry/lib/toast.test.ts", + "tests/registry/markdown-renderer.test.ts", + "tests/runtime/dialog/dialog.test.ts", + "tests/runtime/drawer/drawer.test.ts", + "tests/runtime/tabs/tabs.utils.test.ts", + "tests/runtime/action-menu/action-menu.test.ts", + "tests/runtime/popover/popover.test.ts", + "tests/runtime/_internal/collection-navigation.test.ts", + "tests/runtime/combobox/combobox.utils.test.ts", + "tests/runtime/tooltip/tooltip.test.ts", + "tests/runtime/accordion/accordion.test.ts" + ] + }, + "gates": [ + { + "gate": "F-DOCT-4 vocabulary", + "level": "WARN", + "message": "forbidden folder name 'lib' (utils/helpers/common/lib/interfaces) — needs migration plan + debt entry", + "path": "registry/lib" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 16 immediate children; doctrine cap is 12", + "path": "" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 99 immediate children; doctrine cap is 12", + "path": "registry/components/ui" + }, + { + "gate": "F-JSR-7 slow-types", + "level": "WARN", + "message": "Checking for slow types in the public API..." + } + ], + "slowTypes": { + "ok": true, + "warnings": [ + "Checking for slow types in the public API..." + ], + "rawTail": " file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/accordion/Accordion.tsx (3.67KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/accordion/accordion.types.ts (3.07KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/accordion/use-accordion.ts (9.13KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/action-menu/ActionMenu.tsx (6.34KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/action-menu/action-menu.types.ts (2.28KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/combobox/Combobox.tsx (2.32KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/combobox/combobox.types.ts (2.36KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/combobox/combobox.utils.ts (974B)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/combobox/use-combobox.ts (6.82KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/dialog/Dialog.tsx (2.63KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/dialog/dialog.types.ts (3.02KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/dialog/use-dialog.ts (5.12KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/drawer/Drawer.tsx (2.63KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/drawer/drawer.types.ts (782B)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/drawer/use-drawer.ts (113B)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/popover/Popover.tsx (3.89KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/popover/popover.types.ts (4.39KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/popover/use-popover.ts (7.97KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/sheet/Sheet.tsx (2.56KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/sheet/sheet.types.ts (3.79KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/sheet/use-sheet.ts (5.4KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tabs/Tabs.tsx (1.97KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tabs/tabs.types.ts (1.97KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tabs/tabs.utils.ts (366B)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tabs/use-tabs.ts (5.93KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tooltip/Tooltip.tsx (2.71KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tooltip/tooltip.types.ts (2.84KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tooltip/use-tooltip.ts (7.45KB)\nSuccess Dry run complete\n" + } +} \ No newline at end of file diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/refusal-mutation-tests.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/refusal-mutation-tests.md new file mode 100644 index 0000000000..944e9f7072 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/refusal-mutation-tests.md @@ -0,0 +1,31 @@ +# Refusal mutation tests — FAIL_FIX repair + +## Attestation + +- Immutable implementation head: `4238670173271bca4281eba7db6c2030d046bc73`. +- Source preparation: full-repository `git archive` raw exit 0; extraction into each of four + independent `.llm/tmp/` copies raw exit 0. +- Each copy retained the committed test file unchanged and mutated only the named checker branch. +- Each command selected exactly one named test; every selection reported `1 test`, so no empty + selection was treated as evidence. + +## Discriminating controls + +| Refusal | Checker mutation in archive copy | Named test filter | Raw exit | Observed result | +| ---------------------- | ------------------------------------------------------- | ----------------------------------------------- | -------: | -------------------------------------- | +| INVENTS | Disabled the `!expectedSymbols.has(sym)` refusal branch | `refuses an invented symbol` | 1 | `0 passed / 1 failed / 5 filtered out` | +| Unknown mode | Accepted the unknown mode as `entrypoints-only` | `refuses an unknown coverage mode` | 1 | `0 passed / 1 failed / 5 filtered out` | +| Empty/malformed reason | Disabled the nonempty-reason error branch | `refuses an empty or malformed coverage reason` | 1 | `0 passed / 1 failed / 5 filtered out` | +| OMITS | Disabled the `!docSymbols.has(sym)` refusal branch | `refuses an omitted symbol` | 1 | `0 passed / 1 failed / 5 filtered out` | + +The unchanged invented-symbol test documents both `actualSymbol` and `inventedSymbol`, so OMITS +cannot mask an INVENTS regression. All policy-refusal tests use the real `withSymbolFixture` package +and document paths. Every refusal assertion requires raw code 1, exactly one captured +`console.error`, the branch-specific message, and the absence of a `Failed to read` substitute. + +## Restored control + +- Untouched repository test suite: raw exit 0; 6 passed, 0 failed. +- Diff from the immutable head across checker and test: raw exit 0 with no diff after the mutation + runs. +- Mutation scratch cleanup: raw exit 0; explicit absence check raw exit 0. diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/doc-lint-contracts.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/doc-lint-contracts.json new file mode 100644 index 0000000000..8c1c1e5371 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/doc-lint-contracts.json @@ -0,0 +1,83 @@ +{ + "source": { + "mode": "auto", + "root": "packages/contracts", + "entrypoints": [ + "./crud.ts", + "./mod.ts", + "./query.ts", + "./transform.ts" + ], + "exitCode": 1 + }, + "summary": { + "totalPackages": 1, + "totalErrors": 9, + "totalPrivateTypeRef": 9, + "totalMissingJSDoc": 0, + "totalOther": 0 + }, + "packages": [ + { + "name": "@netscript/contracts", + "dir": "packages/contracts", + "entrypoints": [ + { + "path": "./crud.ts", + "privateTypeRef": 12, + "missingJSDoc": 0, + "other": 0, + "total": 12 + }, + { + "path": "./mod.ts", + "privateTypeRef": 8, + "missingJSDoc": 0, + "other": 0, + "total": 8 + }, + { + "path": "./query.ts", + "privateTypeRef": 0, + "missingJSDoc": 0, + "other": 0, + "total": 0 + }, + { + "path": "./transform.ts", + "privateTypeRef": 0, + "missingJSDoc": 0, + "other": 0, + "total": 0 + } + ], + "files": [ + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/contracts/src/application/contract-primitives.ts", + "privateTypeRef": 8, + "missingJSDoc": 0, + "other": 0, + "total": 8 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/contracts/crud/create-crud-contract.ts", + "privateTypeRef": 1, + "missingJSDoc": 0, + "other": 0, + "total": 1 + } + ], + "combinedTotal": 9, + "combinedPrivateTypeRef": 9, + "combinedMissingJSDoc": 0, + "combinedOther": 0, + "combinedExitCode": 1, + "entrypointExitCodes": { + "./crud.ts": 1, + "./mod.ts": 1, + "./query.ts": 0, + "./transform.ts": 0 + } + } + ] +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/doc-lint-fresh-ui.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/doc-lint-fresh-ui.json new file mode 100644 index 0000000000..40961d9751 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/doc-lint-fresh-ui.json @@ -0,0 +1,192 @@ +{ + "source": { + "mode": "auto", + "root": "packages/fresh-ui", + "entrypoints": [ + "./desktop.ts", + "./interactive.ts", + "./mod.ts", + "./primitives.tsx", + "./registry.ts", + "./src/ai/render-ui.tsx" + ], + "exitCode": 1 + }, + "summary": { + "totalPackages": 1, + "totalErrors": 123, + "totalPrivateTypeRef": 96, + "totalMissingJSDoc": 27, + "totalOther": 0 + }, + "packages": [ + { + "name": "@netscript/fresh-ui", + "dir": "packages/fresh-ui", + "entrypoints": [ + { + "path": "./desktop.ts", + "privateTypeRef": 0, + "missingJSDoc": 0, + "other": 0, + "total": 0 + }, + { + "path": "./interactive.ts", + "privateTypeRef": 96, + "missingJSDoc": 27, + "other": 0, + "total": 123 + }, + { + "path": "./mod.ts", + "privateTypeRef": 0, + "missingJSDoc": 0, + "other": 0, + "total": 0 + }, + { + "path": "./primitives.tsx", + "privateTypeRef": 0, + "missingJSDoc": 0, + "other": 0, + "total": 0 + }, + { + "path": "./registry.ts", + "privateTypeRef": 0, + "missingJSDoc": 0, + "other": 0, + "total": 0 + }, + { + "path": "./src/ai/render-ui.tsx", + "privateTypeRef": 0, + "missingJSDoc": 0, + "other": 0, + "total": 0 + } + ], + "files": [ + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/combobox/combobox.types.ts", + "privateTypeRef": 15, + "missingJSDoc": 18, + "other": 0, + "total": 33 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/popover/Popover.tsx", + "privateTypeRef": 10, + "missingJSDoc": 1, + "other": 0, + "total": 11 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/popover/popover.types.ts", + "privateTypeRef": 10, + "missingJSDoc": 0, + "other": 0, + "total": 10 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/dialog/Dialog.tsx", + "privateTypeRef": 6, + "missingJSDoc": 1, + "other": 0, + "total": 7 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/drawer/Drawer.tsx", + "privateTypeRef": 6, + "missingJSDoc": 1, + "other": 0, + "total": 7 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/sheet/Sheet.tsx", + "privateTypeRef": 6, + "missingJSDoc": 1, + "other": 0, + "total": 7 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tooltip/Tooltip.tsx", + "privateTypeRef": 6, + "missingJSDoc": 1, + "other": 0, + "total": 7 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/accordion/Accordion.tsx", + "privateTypeRef": 5, + "missingJSDoc": 1, + "other": 0, + "total": 6 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/dialog/dialog.types.ts", + "privateTypeRef": 6, + "missingJSDoc": 0, + "other": 0, + "total": 6 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/sheet/sheet.types.ts", + "privateTypeRef": 6, + "missingJSDoc": 0, + "other": 0, + "total": 6 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tooltip/tooltip.types.ts", + "privateTypeRef": 6, + "missingJSDoc": 0, + "other": 0, + "total": 6 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/accordion/accordion.types.ts", + "privateTypeRef": 5, + "missingJSDoc": 0, + "other": 0, + "total": 5 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tabs/Tabs.tsx", + "privateTypeRef": 4, + "missingJSDoc": 1, + "other": 0, + "total": 5 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tabs/tabs.types.ts", + "privateTypeRef": 4, + "missingJSDoc": 0, + "other": 0, + "total": 4 + }, + { + "path": "/home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/combobox/Combobox.tsx", + "privateTypeRef": 1, + "missingJSDoc": 2, + "other": 0, + "total": 3 + } + ], + "combinedTotal": 123, + "combinedPrivateTypeRef": 96, + "combinedMissingJSDoc": 27, + "combinedOther": 0, + "combinedExitCode": 1, + "entrypointExitCodes": { + "./desktop.ts": 0, + "./interactive.ts": 1, + "./mod.ts": 0, + "./primitives.tsx": 0, + "./registry.ts": 0, + "./src/ai/render-ui.tsx": 0 + } + } + ] +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/evidence-set.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/evidence-set.json new file mode 100644 index 0000000000..c669e5b956 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/evidence-set.json @@ -0,0 +1,35 @@ +{ + "schemaVersion": 1, + "immutableHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "surface": "reference-export-drift-gate SA-4 generated publication cascade", + "expectedGateIds": [ + "agent-docs-prose", + "arch-check", + "assets-barrel", + "check", + "docs-accuracy", + "docs-source-format", + "docs-source-format-test", + "docs-tagline", + "publish-assets", + "publish-dry-run", + "quality-job", + "test" + ], + "receiptIds": [ + "reference-export-sa4-agent-docs-prose", + "reference-export-sa4-arch-check", + "reference-export-sa4-assets-barrel", + "reference-export-sa4-check", + "reference-export-sa4-docs-accuracy", + "reference-export-sa4-docs-source-format", + "reference-export-sa4-docs-source-format-test", + "reference-export-sa4-docs-tagline", + "reference-export-sa4-publish-assets", + "reference-export-sa4-publish-dry-run", + "reference-export-sa4-quality-job", + "reference-export-sa4-test-attempt2" + ], + "sufficiency": "SUFFICIENT", + "reasons": [] +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/jsr-cli.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/jsr-cli.json new file mode 100644 index 0000000000..1596a3147f --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/jsr-cli.json @@ -0,0 +1,419 @@ +{ + "pkg": { + "name": "@netscript/cli", + "version": "0.0.6", + "description": "Public and maintainer command-line tooling for NetScript workspaces.", + "root": "packages/cli" + }, + "exports": { + ".": "./mod.ts", + "./scaffolding": "./scaffolding.ts", + "./testing": "./testing.ts" + }, + "files": { + "total": 883, + "loc": 106457, + "entries": [ + { + "path": "mod.ts", + "bytes": 490 + }, + { + "path": "scaffolding.ts", + "bytes": 2511 + }, + { + "path": "testing.ts", + "bytes": 8435 + } + ] + }, + "docs": { + "hasReadme": true, + "readmeLines": 318, + "hasDocsFolder": false, + "moduleTagOnEntries": { + ".": true, + "./scaffolding": true, + "./testing": true + }, + "descriptionLen": 68 + }, + "surface": { + ".": { + "exported": [], + "rawCount": 1 + }, + "./scaffolding": { + "exported": [ + "DenoFileSystem", + "MemoryFileSystemAdapter", + "Scaffolder", + "StringTemplateAdapter", + "createPluginScaffoldContext", + "planPluginScaffoldFiles", + "renderTemplate", + "writePluginScaffoldFiles" + ], + "rawCount": 8 + }, + "./testing": { + "exported": [ + "InMemoryProcess", + "MemoryFileSystemAdapter", + "PromptScript", + "RecordedProcessCall", + "buildEmptyScaffoldResult", + "buildMinimalInitResult", + "buildMinimalPromptAnswers", + "buildMinimalScaffoldPlan", + "createInMemoryFileSystem", + "createInMemoryProcess", + "createInMemoryPrompt", + "createSilentLogger" + ], + "rawCount": 12 + } + }, + "tests": { + "fileCount": 214, + "files": [ + "src/maintainer/adapters/packages-copier_test.ts", + "src/maintainer/adapters/official-plugin-source_test.ts", + "src/maintainer/features/sync/plugin/copy-official-plugin-samples_test.ts", + "src/maintainer/features/sync/plugin/copy-official-plugin-copy_test.ts", + "src/maintainer/features/root/maintainer-services_test.ts", + "src/maintainer/features/init/init-command_test.ts", + "src/public/adapters/agent/deno-agent-docs-generator_test.ts", + "src/public/adapters/service-activation-port_test.ts", + "src/public/adapters/os-service-factory_test.ts", + "src/public/adapters/systemd-os-service_test.ts", + "src/public/adapters/jsr-import-resolver_test.ts", + "src/public/domain/scaffold-plan_test.ts", + "src/public/features/services/add/add-service_test.ts", + "src/public/features/services/remove/remove-service_test.ts", + "src/public/features/services/add-handler/add-service-handler_test.ts", + "src/public/features/services/configure/mutate-service-config_test.ts", + "src/public/features/agent/drift/record-drift-command_test.ts", + "src/public/features/agent/init/init-agent_test.ts", + "src/public/features/agent/init/init-agent-command_test.ts", + "src/public/features/agent/mcp/command-policy-parity_test.ts", + "src/public/features/agent/mcp/agent-mcp-command_test.ts", + "src/public/features/agent/mcp/cli-mcp-adapters_test.ts", + "src/public/features/ui/add/add-ui-command_test.ts", + "src/public/features/ui/ui-app-root-command_test.ts", + "src/public/features/ui/registry.test.ts", + "src/public/features/root/public-command-tree_test.ts", + "src/public/features/root/command-registry_test.ts", + "src/public/features/db/add/add-db_test.ts", + "src/public/features/db/operations/db-operation-command_test.ts", + "src/public/features/plugins/auth/auth-plugin-command_test.ts", + "src/public/features/plugins/host/plugin-loader_test.ts", + "src/public/features/plugins/doctor/doctor-plugin-invariants_test.ts", + "src/public/features/plugins/doctor/doctor-plugin-command_test.ts", + "src/public/features/plugins/scaffold/scaffold-plugin_test.ts", + "src/public/features/plugins/new/new-plugin_test.ts", + "src/public/features/plugins/dispatch/dispatch-plugin-verb_test.ts", + "src/public/features/plugins/remove/remove-plugin_test.ts", + "src/public/features/plugins/install/confirm-plugin-install_test.ts", + "src/public/features/plugins/install/plugin-package-resolver_test.ts", + "src/public/features/plugins/install/install-plugin_test.ts", + "src/public/features/plugins/install/plugin-trust-tier_test.ts", + "src/public/features/plugins/install/manifest-service-shape_test.ts", + "src/public/features/plugins/list/list-plugins-command_test.ts", + "src/public/features/plugins/ai/ai-plugin-command_test.ts", + "src/public/features/config/override/manage-runtime-overrides_test.ts", + "src/public/features/config/project/list-appsettings-paths_test.ts", + "src/public/features/config/project/project-config-ops_test.ts", + "src/public/features/config/project/resolve-appsettings-path_test.ts", + "src/public/features/contracts/add/add-contract_test.ts", + "src/public/features/contracts/remove/remove-contract_test.ts", + "src/public/features/contracts/add-route/add-contract-route_test.ts", + "src/public/features/contracts/version-add/add-contract-version_test.ts", + "src/public/features/generate/plugins/installed-runtime-registry-integration_test.ts", + "src/public/features/generate/plugins/generate-plugin-registries-command_test.ts", + "src/public/features/generate/plugins/installed-runtime-registry-generator_test.ts", + "src/public/features/generate/runtime-schemas/generate-runtime-schemas_test.ts", + "src/public/features/deploy/target/desktop/release/server/release-handler_test.ts", + "src/public/features/deploy/target/desktop/release/server/serve-release-command_test.ts", + "src/public/features/deploy/target/desktop/release/prepare-release-command_test.ts", + "src/public/features/deploy/target/desktop/release/prepare-native-release_test.ts", + "src/public/features/deploy/target/desktop/release/sign-release_test.ts", + "src/public/features/deploy/target/desktop/release/release-store_test.ts", + "src/public/features/deploy/target/desktop/package/package-desktop_test.ts", + "src/public/features/deploy/target/desktop/package/plan-desktop-packages_test.ts", + "src/public/features/deploy/target/desktop/package/package-desktop-command_test.ts", + "src/public/features/deploy/target/desktop/desktop-group_test.ts", + "src/public/features/deploy/target/target-deploy-command_test.ts", + "src/public/features/deploy/build/deploy_test.ts", + "src/public/features/deploy/build/prepare-deploy-build_test.ts", + "src/public/features/deploy/list/list-deploy-targets_test.ts", + "src/public/features/marketplace/marketplace-group_test.ts", + "src/public/features/init/init-command_test.ts", + "src/public/composition/run-public-cli_test.ts", + "src/public/infra/permissions/plugin-scaffold-permissions_test.ts", + "src/public/infra/jsr/fetch-jsr-plugin-validator_test.ts", + "src/public/infra/jsr/verify-jsr-package-integrity_test.ts", + "src/public/infra/jsr/fetch-jsr-export-map_test.ts", + "src/kernel/adapters/database/operation-runner-helpers_test.ts", + "src/kernel/adapters/database/workspace-resolver_test.ts", + "src/kernel/adapters/database/apphost-lifecycle-lock_test.ts", + "src/kernel/adapters/database/scaffolder_test.ts", + "src/kernel/adapters/database/operation-runner_test.ts", + "src/kernel/adapters/database/workspace-mutator_remove_test.ts", + "src/kernel/adapters/linux/systemd/systemd-environment_test.ts", + "src/kernel/adapters/linux/systemd/systemd_test.ts", + "src/kernel/adapters/plugin/workspace-mutator_test.ts", + "src/kernel/adapters/plugin/db-integration_test.ts", + "src/kernel/adapters/plugin/scaffolder_test.ts", + "src/kernel/adapters/plugin/plugin-reference-reconciler_test.ts", + "src/kernel/adapters/deno-deploy/deno-deploy-cli_test.ts", + "src/kernel/adapters/templates/template-asset_test.ts", + "src/kernel/adapters/service/router-source_test.ts", + "src/kernel/adapters/service/client-scaffolder_test.ts", + "src/kernel/adapters/service/scaffolder_test.ts", + "src/kernel/adapters/scaffold/tests/import-resolver_test.ts", + "src/kernel/adapters/scaffold/tests/template-adapter_test.ts", + "src/kernel/adapters/scaffold/tests/scaffolder_test.ts", + "src/kernel/adapters/scaffold/tests/fresh-adapter_test.ts", + "src/kernel/adapters/scaffold/tests/workspace-writer_test.ts", + "src/kernel/adapters/scaffold/tests/dry-run-fs_test.ts", + "src/kernel/adapters/config/deploy-config-resolvers_test.ts", + "src/kernel/adapters/config/project-config-loader_test.ts", + "src/kernel/adapters/config/configured-plugin-manifest-summary_test.ts", + "src/kernel/adapters/config/plugin-permission-precedence_test.ts", + "src/kernel/adapters/config/plugin-registry.test.ts", + "src/kernel/adapters/config/deploy-config-resolvers.test.ts", + "src/kernel/adapters/contracts/contract-source_test.ts", + "src/kernel/adapters/health/fetch-health-probe_test.ts", + "src/kernel/adapters/secrets/env-file-secrets-store_test.ts", + "src/kernel/adapters/deploy/compile/compile_test.ts", + "src/kernel/adapters/deploy/compile/compile-platform_test.ts", + "src/kernel/adapters/deploy/runtime-detect_test.ts", + "src/kernel/adapters/runtime/file-system/deno-file-system_test.ts", + "src/kernel/adapters/runtime/process/deno-process_test.ts", + "src/kernel/adapters/aspire/aspire-compose-deploy-target_test.ts", + "src/kernel/adapters/aspire/apphost-doctor-inspector_test.ts", + "src/kernel/adapters/aspire/aspire-cloud-deploy-target_test.ts", + "src/kernel/adapters/windows/manifest/manifest-resolver_test.ts", + "src/kernel/domain/dependency-closures/netscript-web-runtime-closure_test.ts", + "src/kernel/domain/scaffold/app-name_test.ts", + "src/kernel/domain/scaffold/default-port-allocation_test.ts", + "src/kernel/domain/deploy/secrets-convention_test.ts", + "src/kernel/domain/deploy/health-gate_test.ts", + "src/kernel/domain/deploy/deploy-target-port_test.ts", + "src/kernel/domain/deploy/observability-convention_test.ts", + "src/kernel/domain/deploy/unstable-api-guard_test.ts", + "src/kernel/domain/deploy/activation-convention_test.ts", + "src/kernel/domain/deploy/rollback-convention_test.ts", + "src/kernel/domain/deploy/deno-deploy-target_test.ts", + "src/kernel/templates/database/generators_test.ts", + "src/kernel/templates/database/generate-database-seed_test.ts", + "src/kernel/templates/service/generators_test.ts", + "src/kernel/templates/plugins/generate-plugin-service_test.ts", + "src/kernel/templates/app/generators-config_test.ts", + "src/kernel/templates/app/route-templates_test.ts", + "src/kernel/templates/workspace/generators_test.ts", + "src/kernel/templates/workspace/dependency-closure-verifier_test.ts", + "src/kernel/templates/workspace/quality-runner_test.ts", + "src/kernel/templates/workspace/node-modules-verifier_test.ts", + "src/kernel/templates/aspire/generators_test.ts", + "src/kernel/templates/aspire/generate-aspire-config_test.ts", + "src/kernel/templates/aspire/helpers/tests/generators-tools-db-index_test.ts", + "src/kernel/templates/aspire/helpers/tests/generators-background-app_test.ts", + "src/kernel/templates/aspire/helpers/tests/generate-db-cli-mode_test.ts", + "src/kernel/templates/aspire/helpers/tests/service-environment-runtime_test.ts", + "src/kernel/templates/aspire/helpers/tests/generate-register-infrastructure_test.ts", + "src/kernel/templates/aspire/helpers/tests/generators-service-plugin_test.ts", + "src/kernel/templates/aspire/helpers/tests/generators-pipeline_test.ts", + "src/kernel/templates/aspire/helpers/tests/service-environment_test.ts", + "src/kernel/templates/aspire/helpers/tests/register-http-endpoint_test.ts", + "src/kernel/templates/aspire/helpers/tests/generators-config-infra_test.ts", + "src/kernel/templates/aspire/helpers/tests/database-permissions_test.ts", + "src/kernel/templates/aspire/pristine-scaffold-ports_test.ts", + "src/kernel/constants/version-drift_test.ts", + "src/kernel/constants/scaffold/scaffold-app-catalog_test.ts", + "src/kernel/application/plugin/registered-plugin-source_test.ts", + "src/kernel/application/registries/template-registry_test.ts", + "src/kernel/application/ui/registry-styles.test.ts", + "src/kernel/application/ui/registry-lifecycle_test.ts", + "src/kernel/application/ui/web-scaffold_test.ts", + "src/kernel/application/ui/registry-deno-json_test.ts", + "src/kernel/application/scaffold/writers/write-app-files_test.ts", + "src/kernel/application/scaffold/support/format-generated-files_test.ts", + "src/kernel/application/scaffold/orchestrate-init_test.ts", + "src/kernel/application/scaffold/plan-init_test.ts", + "src/local/features/plugins/install/install-local-plugin_test.ts", + "src/local/composition/local-contributor-command-tree_test.ts", + "tests/support/local-workspace-imports_test.ts", + "scaffolding_test.ts", + "module_import_side_effect_test.ts", + "testing_test.ts", + "e2e/src/application/gates/scaffold/verify-producer-reconnect_test.ts", + "e2e/src/application/gates/scaffold/validate-aspire-task-traces_test.ts", + "e2e/src/application/gates/scaffold/run-documented-stream-example_test.ts", + "e2e/src/application/gates/scaffold/package-backed-plugin-version_test.ts", + "e2e/src/application/gates/scaffold/validate-flow-b-traces_test.ts", + "e2e/src/application/gates/scaffold/select-flow-b-stream-change_test.ts", + "e2e/src/application/gates/scaffold/service-env/service-env-gates_test.ts", + "e2e/src/application/gates/scaffold/service-env/discover-service-subjects_test.ts", + "e2e/src/application/gates/scaffold/service-env/process-evidence_test.ts", + "e2e/src/application/gates/scaffold/service-env/service-env-evidence_test.ts", + "e2e/src/application/gates/quickstart/database-integrity-walk_test.ts", + "e2e/tests/adapters/commands/docker-resource-cleaner_test.ts", + "e2e/tests/adapters/reporting/report-file-reporter_test.ts", + "e2e/tests/adapters/reporting/pretty-reporter_test.ts", + "e2e/tests/agent/agent-mcp-stdio_test.ts", + "e2e/tests/presentation/quickstart-walk-suite_test.ts", + "e2e/tests/presentation/quickstart-command-drift_test.ts", + "e2e/tests/presentation/init-json_test.ts", + "e2e/tests/presentation/cli-program_test.ts", + "e2e/tests/presentation/suite-registry_test.ts", + "e2e/tests/presentation/cli-options_test.ts", + "e2e/tests/application/runner/suite-runner_test.ts", + "e2e/tests/application/runner/suite-lease_test.ts", + "e2e/tests/application/runner/gate-runner_test.ts", + "e2e/tests/application/gates/generated-app-endpoint_test.ts", + "e2e/tests/application/gates/scaffold-gates_test.ts", + "e2e/tests/application/gates/probe-app-reference_test.ts", + "e2e/tests/application/gates/generated-router-template_test.ts", + "e2e/tests/application/gates/scaffold/ui-ai-gates_test.ts", + "e2e/tests/application/gates/scaffold/plugin-contract-gates_test.ts", + "e2e/tests/application/gates/scaffold/behavior-plugins-health-gate_test.ts", + "e2e/tests/application/gates/scaffold/generated-app-identity-source-policy_test.ts", + "e2e/tests/application/gates/configure-published-workers-block_test.ts", + "e2e/tests/application/gates/command-gate_test.ts", + "e2e/tests/application/gates/quickstart-aspire-walk_test.ts", + "e2e/tests/application/gates/local-source-fixture_test.ts", + "e2e/tests/application/gates/verify-live-db-endpoint_test.ts", + "e2e/tests/application/gates/aspire-dashboard-telemetry_test.ts", + "e2e/tests/application/gates/http-gate_test.ts", + "e2e/tests/application/builders/suite-builder_test.ts", + "e2e/tests/application/builders/runtime-gates_test.ts", + "e2e/tests/application/builders/workspace-options_test.ts", + "e2e/tests/application/verify-clean-clone-readme_test.ts" + ] + }, + "gates": [ + { + "gate": "F-DOCT-4 vocabulary", + "level": "WARN", + "message": "forbidden folder name 'helpers' (utils/helpers/common/lib/interfaces) — needs migration plan + debt entry", + "path": "src/kernel/templates/aspire/helpers" + }, + { + "gate": "F-DOCT-4 vocabulary", + "level": "WARN", + "message": "forbidden folder name 'helpers' (utils/helpers/common/lib/interfaces) — needs migration plan + debt entry", + "path": "src/kernel/assets/generated/aspire/helpers" + }, + { + "gate": "F-DOCT-4 vocabulary", + "level": "WARN", + "message": "forbidden folder name 'helpers' (utils/helpers/common/lib/interfaces) — needs migration plan + debt entry", + "path": "src/kernel/assets/aspire/helpers" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 14 immediate children; doctrine cap is 12", + "path": "" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 16 immediate children; doctrine cap is 12", + "path": "src/public/features/db" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 14 immediate children; doctrine cap is 12", + "path": "src/public/features/plugins" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 14 immediate children; doctrine cap is 12", + "path": "src/public/features/plugins/install" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 14 immediate children; doctrine cap is 12", + "path": "src/public/features/deploy" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 16 immediate children; doctrine cap is 12", + "path": "src/kernel/adapters" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 14 immediate children; doctrine cap is 12", + "path": "src/kernel/adapters/database" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 14 immediate children; doctrine cap is 12", + "path": "src/kernel/adapters/plugin" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 22 immediate children; doctrine cap is 12", + "path": "src/kernel/adapters/config" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 13 immediate children; doctrine cap is 12", + "path": "src/kernel/domain" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 24 immediate children; doctrine cap is 12", + "path": "src/kernel/domain/deploy" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 15 immediate children; doctrine cap is 12", + "path": "src/kernel/templates/workspace" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 14 immediate children; doctrine cap is 12", + "path": "src/kernel/assets" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 13 immediate children; doctrine cap is 12", + "path": "src/kernel/application/scaffold" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 48 immediate children; doctrine cap is 12", + "path": "e2e/src/application/gates/scaffold" + }, + { + "gate": "F-JSR-7 slow-types", + "level": "WARN", + "message": "Checking for slow types in the public API..." + } + ], + "slowTypes": { + "ok": true, + "warnings": [ + "Checking for slow types in the public API..." + ], + "rawTail": " file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/features/services/configure/mutate-service-config.ts (2.87KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/features/services/configure/service-config-command.ts (2.88KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/features/services/generate/generate-service-command.ts (1.81KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/features/services/list/list-services-command.ts (1.89KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/features/services/list/list-services-input.ts (132B)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/features/services/remove/remove-service-command.ts (1.9KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/features/services/remove/remove-service-input.ts (152B)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/features/services/remove/remove-service.ts (3.73KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/features/services/services-group.ts (2.13KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/features/ui/add/add-ui-command.ts (3.95KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/features/ui/add/add-ui-input.ts (317B)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/features/ui/init/init-ui-command.ts (2.27KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/features/ui/init/init-ui-input.ts (235B)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/features/ui/list/list-ui-command.ts (1.62KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/features/ui/registry.ts (60B)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/features/ui/remove/remove-ui-command.ts (1.19KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/features/ui/update/update-ui-command.ts (1.31KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/infra/jsr/fetch-jsr-export-map.ts (868B)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/infra/jsr/fetch-jsr-plugin-validator.ts (10.27KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/infra/jsr/verify-jsr-package-integrity.ts (4.64KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/infra/permissions/plugin-scaffold-permissions.ts (2.02KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/ports/jsr-resolver-port.ts (145B)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/ports/os-service-port.ts (1.41KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/ports/service-manifest-port.ts (1.11KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/presentation/support.ts (2.09KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/public-api.ts (10.58KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/src/public/scaffolding/plugin-scaffolding.ts (4.68KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/cli/testing.ts (8.24KB)\nSuccess Dry run complete\n" + } +} \ No newline at end of file diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/jsr-contracts.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/jsr-contracts.json new file mode 100644 index 0000000000..53f8c54cf4 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/jsr-contracts.json @@ -0,0 +1,88 @@ +{ + "pkg": { + "name": "@netscript/contracts", + "version": "0.0.6", + "description": "NetScript contract primitives, common schemas, CRUD generators, query helpers, and transform helpers.", + "root": "packages/contracts" + }, + "exports": { + ".": "./mod.ts", + "./crud": "./crud.ts", + "./query": "./query.ts", + "./transform": "./transform.ts" + }, + "files": { + "total": 21, + "loc": 2611, + "entries": [ + { + "path": "mod.ts", + "bytes": 694 + }, + { + "path": "crud.ts", + "bytes": 757 + }, + { + "path": "query.ts", + "bytes": 606 + }, + { + "path": "transform.ts", + "bytes": 383 + } + ] + }, + "docs": { + "hasReadme": true, + "readmeLines": 105, + "hasDocsFolder": false, + "moduleTagOnEntries": { + ".": true, + "./crud": true, + "./query": true, + "./transform": true + }, + "descriptionLen": 101 + }, + "surface": { + ".": { + "exported": [], + "rawCount": 1 + }, + "./crud": { + "exported": [], + "rawCount": 1 + }, + "./query": { + "exported": [], + "rawCount": 3 + }, + "./transform": { + "exported": [], + "rawCount": 1 + } + }, + "tests": { + "fileCount": 3, + "files": [ + "tests/schema-types_test.ts", + "tests/errors_test.ts", + "tests/contracts_test.ts" + ] + }, + "gates": [ + { + "gate": "F-JSR-7 slow-types", + "level": "INFO", + "message": "Checking for slow types in the public API... — sanctioned --allow-slow-types (oRPC-bound; see docs/architecture/doctrine/02-public-surface.md)" + } + ], + "slowTypes": { + "ok": true, + "warnings": [ + "Checking for slow types in the public API..." + ], + "rawTail": "\nChecking for slow types in the public API...\nSimulating publish of @netscript/contracts@0.0.6 with files:\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/README.md (5.07KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/crud.ts (757B)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/crud/create-crud-contract.ts (16.88KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/deno.json (1.01KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/mod.ts (694B)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/query.ts (606B)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/schemas/filters.ts (6.4KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/schemas/pagination.ts (7.27KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/application/contract-primitives.ts (5.19KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/application/paginated-query.ts (6.5KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/application/transform-helpers.ts (5.45KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/application/zod-helpers.ts (4.24KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/diagnostics/inspection.ts (1.03KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/domain/constants.ts (1.17KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/domain/errors.ts (3.13KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/domain/result.ts (431B)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/domain/schema-types.ts (3.65KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/domain/schemas.ts (7.96KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/src/public/mod.ts (2.15KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/contracts/transform.ts (383B)\nSuccess Dry run complete\n" + } +} \ No newline at end of file diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/jsr-fresh-ui.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/jsr-fresh-ui.json new file mode 100644 index 0000000000..b74783f8cd --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/jsr-fresh-ui.json @@ -0,0 +1,194 @@ +{ + "pkg": { + "name": "@netscript/fresh-ui", + "version": "0.0.6", + "description": "Fresh UI registry seams and interactive foundations for NetScript.", + "root": "packages/fresh-ui" + }, + "exports": { + ".": "./mod.ts", + "./ai/render-ui": "./src/ai/render-ui.tsx", + "./desktop": "./desktop.ts", + "./interactive": "./interactive.ts", + "./primitives": "./primitives.tsx", + "./registry": "./registry.ts" + }, + "files": { + "total": 64, + "loc": 9137, + "entries": [ + { + "path": "mod.ts", + "bytes": 1258 + }, + { + "path": "src/ai/render-ui.tsx", + "bytes": 13013 + }, + { + "path": "desktop.ts", + "bytes": 1191 + }, + { + "path": "interactive.ts", + "bytes": 3576 + }, + { + "path": "primitives.tsx", + "bytes": 874 + }, + { + "path": "registry.ts", + "bytes": 4142 + } + ] + }, + "docs": { + "hasReadme": true, + "readmeLines": 164, + "hasDocsFolder": false, + "moduleTagOnEntries": { + ".": true, + "./ai/render-ui": true, + "./desktop": true, + "./interactive": true, + "./primitives": true, + "./registry": true + }, + "descriptionLen": 66 + }, + "surface": { + ".": { + "exported": [ + "DATA_GRID_CELL_VARIANTS", + "DataGrid", + "ICON_PATHS", + "Icon", + "REGISTRY_TOAST_QUERY_KEYS", + "cn", + "getToast", + "stripToastFromUrl", + "withToast" + ], + "rawCount": 9 + }, + "./ai/render-ui": { + "exported": [ + "RENDER_UI_BLOCK_CATEGORIES", + "RENDER_UI_MAX_DEPTH", + "RenderUiBlockCategory", + "RenderUiBlockType", + "RenderUiFallbackReason", + "RenderUiNode", + "RenderUiOptions", + "RenderUiSurface", + "RenderUiSurfaceProps", + "renderUiPayload" + ], + "rawCount": 10 + }, + "./desktop": { + "exported": [ + "DESKTOP_CHROME_DISABLED_REASONS", + "DESKTOP_CHROME_STATUSES", + "DESKTOP_MENU_SOURCES", + "DESKTOP_OPERATION_REASONS", + "DESKTOP_OPERATION_STATUSES", + "DESKTOP_WINDOW_ACTIONS", + "createDesktopChrome" + ], + "rawCount": 7 + }, + "./interactive": { + "exported": [ + "ACTION_MENU_ITEM_INTENTS", + "Accordion", + "ActionMenu", + "Combobox", + "Dialog", + "Drawer", + "Popover", + "Sheet", + "Tabs", + "Tooltip" + ], + "rawCount": 10 + }, + "./primitives": { + "exported": [ + "ICON_PATHS", + "Icon", + "Show", + "SrOnly", + "VisuallyHidden" + ], + "rawCount": 5 + }, + "./registry": { + "exported": [ + "FRESH_UI_REGISTRY_CONTENT", + "FreshUiRegistryCollection", + "FreshUiRegistryCssContribution", + "FreshUiRegistryFile", + "FreshUiRegistryItem", + "FreshUiRegistryManifest", + "freshUiRegistryManifest" + ], + "rawCount": 7 + } + }, + "tests": { + "fileCount": 17, + "files": [ + "tests/desktop/desktop-chrome.test.ts", + "tests/_fixtures/docs-examples_test.ts", + "tests/registry-doc-drift.test.ts", + "tests/chat/parse-blocks.test.ts", + "tests/registry/render-ui-generated.test.ts", + "tests/registry/markdown-pipeline.test.ts", + "tests/registry/lib/toast.test.ts", + "tests/registry/markdown-renderer.test.ts", + "tests/runtime/dialog/dialog.test.ts", + "tests/runtime/drawer/drawer.test.ts", + "tests/runtime/tabs/tabs.utils.test.ts", + "tests/runtime/action-menu/action-menu.test.ts", + "tests/runtime/popover/popover.test.ts", + "tests/runtime/_internal/collection-navigation.test.ts", + "tests/runtime/combobox/combobox.utils.test.ts", + "tests/runtime/tooltip/tooltip.test.ts", + "tests/runtime/accordion/accordion.test.ts" + ] + }, + "gates": [ + { + "gate": "F-DOCT-4 vocabulary", + "level": "WARN", + "message": "forbidden folder name 'lib' (utils/helpers/common/lib/interfaces) — needs migration plan + debt entry", + "path": "registry/lib" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 16 immediate children; doctrine cap is 12", + "path": "" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 99 immediate children; doctrine cap is 12", + "path": "registry/components/ui" + }, + { + "gate": "F-JSR-7 slow-types", + "level": "WARN", + "message": "Checking for slow types in the public API..." + } + ], + "slowTypes": { + "ok": true, + "warnings": [ + "Checking for slow types in the public API..." + ], + "rawTail": " file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/accordion/Accordion.tsx (3.67KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/accordion/accordion.types.ts (3.07KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/accordion/use-accordion.ts (9.13KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/action-menu/ActionMenu.tsx (6.34KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/action-menu/action-menu.types.ts (2.28KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/combobox/Combobox.tsx (2.32KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/combobox/combobox.types.ts (2.36KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/combobox/combobox.utils.ts (974B)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/combobox/use-combobox.ts (6.82KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/dialog/Dialog.tsx (2.63KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/dialog/dialog.types.ts (3.02KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/dialog/use-dialog.ts (5.12KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/drawer/Drawer.tsx (2.63KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/drawer/drawer.types.ts (782B)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/drawer/use-drawer.ts (113B)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/popover/Popover.tsx (3.89KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/popover/popover.types.ts (4.39KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/popover/use-popover.ts (7.97KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/sheet/Sheet.tsx (2.56KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/sheet/sheet.types.ts (3.79KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/sheet/use-sheet.ts (5.4KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tabs/Tabs.tsx (1.97KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tabs/tabs.types.ts (1.97KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tabs/tabs.utils.ts (366B)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tabs/use-tabs.ts (5.93KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tooltip/Tooltip.tsx (2.71KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tooltip/tooltip.types.ts (2.84KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/fresh-ui/src/runtime/tooltip/use-tooltip.ts (7.45KB)\nSuccess Dry run complete\n" + } +} \ No newline at end of file diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/jsr-mcp.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/jsr-mcp.json new file mode 100644 index 0000000000..01b2d142a6 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/audit/sa4/jsr-mcp.json @@ -0,0 +1,202 @@ +{ + "pkg": { + "name": "@netscript/mcp", + "version": "0.0.6", + "description": "Token-bounded MCP tools for NetScript diagnostics, telemetry insights, docs, and CLI actions.", + "root": "packages/mcp" + }, + "exports": { + ".": "./mod.ts", + "./cli": "./cli.ts", + "./openapi-projection": "./openapi-projection.ts" + }, + "files": { + "total": 115, + "loc": 12506, + "entries": [ + { + "path": "mod.ts", + "bytes": 9007 + }, + { + "path": "cli.ts", + "bytes": 12467 + }, + { + "path": "openapi-projection.ts", + "bytes": 1163 + } + ] + }, + "docs": { + "hasReadme": true, + "readmeLines": 355, + "hasDocsFolder": false, + "moduleTagOnEntries": { + ".": true, + "./cli": true, + "./openapi-projection": true + }, + "descriptionLen": 93 + }, + "surface": { + ".": { + "exported": [ + "API_SERVICE_RESULT_LIMIT", + "AppsettingsEndpointSource", + "AspireCliEndpointSource", + "DEFAULT_CLI_COMMAND", + "DEFAULT_COMMAND_POLICY", + "DEFAULT_COMMAND_TIMEOUT_MS", + "DEFAULT_OUTPUT_TAIL_BYTES", + "DEFAULT_SERVICE_ENDPOINT_CONCURRENCY", + "DEFAULT_SERVICE_ENDPOINT_RESPONSE_BYTE_LIMIT", + "DEFAULT_SERVICE_ENDPOINT_TIMEOUT_MS", + "DEFAULT_TRUNCATION_POLICY", + "DIAGNOSTIC_RECEIPT_TTL_MS", + "DocsCorpusUnavailableError", + "ENDPOINT_SOURCES", + "ENDPOINT_SOURCE_PRECEDENCE", + "EXPORT_JSDOC_CHARACTER_LIMIT", + "EXPORT_SIGNATURE_CHARACTER_LIMIT", + "EXPORT_SURFACE_SCHEMA_VERSION", + "EmbeddedDocsCorpus", + "EmbeddedExportSurfaceCorpus", + "FIND_EXPORT_RESULT_LIMIT", + "FetchServiceEndpointProbe", + "FilesystemDiagnosticEvidence", + "FilesystemDocsCorpus", + "GUIDANCE_CONFIDENCE_LEVELS", + "GUIDANCE_DEFAULT_RECOMMENDATIONS", + "GUIDANCE_LINK_RELATIONS", + "GUIDANCE_MAX_CODE_CHARACTERS", + "GUIDANCE_MAX_CODE_EXCERPTS_PER_RECOMMENDATION", + "GUIDANCE_MAX_EXCERPT_CHARACTERS", + "GUIDANCE_MAX_FALLBACK_CHARACTERS", + "GUIDANCE_MAX_INTENT_CHARACTERS", + "GUIDANCE_MAX_RECOMMENDATIONS", + "GUIDANCE_MAX_RELATED_LINKS", + "GUIDANCE_MAX_WHY_CHARACTERS", + "GUIDANCE_STAGES", + "LIST_PACKAGE_EXPORT_RESULT_LIMIT", + "MAX_INDEXED_DOC_LENGTH", + "MCP_AGENT_INSTRUCTIONS", + "MCP_PROTOCOL_VERSION", + "OPENAPI_CURL_AUTH_NOTE", + "OverrideEndpointSource", + "PluginDoctorFamily", + "RunManifestEndpointSource", + "SEARCH_EXPORT_RESULT_LIMIT", + "SERVICE_ENDPOINT_STATUSES", + "SERVICE_OPERATION_RESULT_LIMIT", + "SOURCE_FAILURE_CODES", + "SPEC_UNAVAILABLE_AUTH_GUIDANCE", + "SpawnCommandExecutor", + "StaticCommandCatalog", + "TOOL_INPUT_SCHEMAS", + "TOOL_NAMES", + "TOOL_OUTPUT_SCHEMAS", + "UNWIRED_COMMAND_DESCRIPTOR", + "createDoctorFlow", + "createExecuteCommandFlow", + "createExportSurfaceFlows", + "createFindGuidanceFlow", + "createGetOperationSchemaFlow", + "createListApiServicesFlow", + "createListCommandsFlow", + "createListServiceOperationsFlow", + "createMcpServer", + "createRecordDriftFlow", + "createServiceEndpointDirectory", + "createToolRegistry", + "decideCommand", + "diagnosticEvidenceRefusal", + "recordDrift", + "slugifyDocsHeading", + "truncateResult", + "validateSchema" + ], + "rawCount": 73 + }, + "./cli": { + "exported": [ + "McpCliOptions", + "createMcpCliServer", + "resolveDocsRoot", + "runMcpStdioServer" + ], + "rawCount": 5 + }, + "./openapi-projection": { + "exported": [ + "HTTP_METHODS", + "SCHEMA_VIEW_NAMES", + "describeOpenApiOperation", + "indexOpenApiOperations", + "projectOperationSchemaViews", + "resolveCanonicalOperation" + ], + "rawCount": 6 + } + }, + "tests": { + "fileCount": 29, + "files": [ + "tests/description-ladder_test.ts", + "tests/schema-views_test.ts", + "tests/service-endpoint-directory_test.ts", + "tests/telemetry-aggregation_test.ts", + "tests/truncation_test.ts", + "tests/docs-source-policy_test.ts", + "tests/canonical-identity_test.ts", + "tests/telemetry-live-fixture_test.ts", + "tests/command_flows_test.ts", + "tests/docs_test.ts", + "tests/guidance-retrieval_test.ts", + "tests/openapi-read-tools_test.ts", + "tests/doctor_test.ts", + "tests/command_adapters_test.ts", + "tests/export-surface-flows_test.ts", + "tests/registry_test.ts", + "tests/service-endpoint-sources_test.ts", + "tests/guidance-contract_test.ts", + "tests/export-surface-mirror-free_test.ts", + "tests/guidance-evaluation_test.ts", + "tests/embedded-export-surface-corpus_test.ts", + "tests/command_composition_test.ts", + "tests/operation-index_test.ts", + "tests/telemetry-flows_test.ts", + "tests/stdio_test.ts", + "tests/release-embedded-docs-corpus_test.ts", + "tests/telemetry-endpoint_test.ts", + "tests/drift-evidence_test.ts", + "tests/doctor-families_test.ts" + ] + }, + "gates": [ + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 14 immediate children; doctrine cap is 12", + "path": "src/domain" + }, + { + "gate": "F-DOCT-5 cardinality", + "level": "WARN", + "message": "directory has 16 immediate children; doctrine cap is 12", + "path": "src/application/flows" + }, + { + "gate": "F-JSR-7 slow-types", + "level": "WARN", + "message": "Checking for slow types in the public API..." + } + ], + "slowTypes": { + "ok": true, + "warnings": [ + "Checking for slow types in the public API..." + ], + "rawTail": " file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/domain/telemetry-summaries.ts (3.6KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/domain/tool-contracts.ts (13.1KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/domain/tool-types.ts (2.11KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/aspire-doctor-family.ts (2.01KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/embedded-docs-corpus.ts (3.12KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/export-surfaces/embedded-export-surface-corpus.ts (6.27KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/export-surfaces/export-surface-corpus.generated.ts (403.2KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/fetch-telemetry-probe.ts (1.23KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/filesystem-diagnostic-evidence.ts (1.72KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/filesystem-docs-corpus.ts (15.25KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/plugin-doctor-family.ts (1.31KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/project-wiring-doctor-family.ts (4.91KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/release-embedded-docs-corpus.ts (5.4KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/service-endpoints/appsettings-endpoint-source.ts (3.29KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/service-endpoints/aspire-cli-command.ts (1.07KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/service-endpoints/aspire-cli-endpoint-source.ts (10.33KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/service-endpoints/aspire-cli-output.ts (2.55KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/service-endpoints/endpoint-url.ts (1.06KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/service-endpoints/fetch-service-endpoint-probe.ts (6.7KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/service-endpoints/override-endpoint-source.ts (3.51KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/service-endpoints/run-manifest-endpoint-source.ts (4.79KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/spawn-command-executor.ts (4.72KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/static-command-catalog.ts (1.33KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/stdio-transport.ts (1.27KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/infrastructure/telemetry-query-adapter.ts (3.11KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/ports/export-surface-corpus-port.ts (2.54KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/ports/service-endpoint-directory-port.ts (8.93KB)\n file:///home/codex/repos/netscript-007-reference-export/packages/mcp/src/publish-assets.generated.ts (281.23KB)\nSuccess Dry run complete\n" + } +} \ No newline at end of file diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/base-refresh-evidence.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/base-refresh-evidence.md new file mode 100644 index 0000000000..1cf21c1f58 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/base-refresh-evidence.md @@ -0,0 +1,98 @@ +# Post-eval base refresh evidence + +## History-preserving integration + +- Delta IMPL-EVAL cycle 3 at `0d4c82d6e4bd327abd88eb8b80e7a7acd20ea4aa` remains append-only. The + integration commit is `8c03d862931b64573df9a4bac76ebf266e0ec175`, with first parent + `0d4c82d6e4bd327abd88eb8b80e7a7acd20ea4aa` and second parent current main + `0ef48c2ec661a7e6d55ec2faf5def6ae7dd2e6eb`. +- Direct ancestor checks returned raw exit 0 for `46528ae4c`, `b67414f4f`, `0d4c82d6e`, and + `0ef48c2ec`. No evaluated history was rebased, squashed, or rewritten. +- Corrected `git merge-tree --write-tree --name-only origin/main HEAD` classification returned raw + exit 0 around the expected merge-tree raw exit 1 and found exactly four bare conflict paths: the + agent-docs gzip/provenance, CLI agent-docs barrel, and MCP publish mirror. A preliminary wrapper + incorrectly classified merge-tree diagnostic lines as paths and returned raw exit 1; that rejected + wrapper made no conflict-set claim. +- The real merge returned raw exit 1 with exactly those four unresolved paths. Both + `git show --cc + --name-only` and `git show --remerge-diff --name-only` on the integration commit + return only the same four paths, raw exit 0. There is no fifth conflict or generated resolution + output. + +## Canonical resolution and union + +The resolution used the locked canonical order: `gen:agent-docs-prose`, then `gen:publish-assets`, +then `gen:assets-barrel`. No generated payload was hand-edited, and `gen:mcp-export-corpus` was not +run. + +The first corpus invocation returned raw exit 1 after the site build because the generator reads the +pre-existing provenance before overwriting it and merge conflict markers are invalid JSON. The old +first-parent provenance was selected only as a temporary valid metadata seed; it was not staged or +accepted as final content. The canonical corpus generator immediately overwrote both owned outputs +from the merged site inputs and then returned raw exit 0. The publish-assets and assets-barrel +generators each returned raw exit 0. This failed attempt is retained as an honest merge-state +diagnostic, not reported as a generator pass. + +Direct gzip decompression returned raw exit 0 and positively found both contributions in the same +canonical corpus: + +- Main/#1665: `pages/web-layer/query-bridge/index.md` plus the new guidance containing “one + possibility is that two” and “module instances are loaded”. +- This leaf/#1666: `pages/reference/fresh-ui/index.md` plus the maintenance rule “exact, + reason-bearing omission group”. + +The union corpus has 181 files, 4,770,349 uncompressed bytes, 1,368,351 compressed bytes, and +canonical SHA-256 `c1d095a62e72555356d346d78848bff144ce9773c38eb9cd95f2d406b28174b3`. The checked-in +gzip SHA-256 is `46703a024d102c278043e2b48ebab906154c728a9c615d939651842068c52f7c`. + +After the integration commit, the full three-generator cascade ran twice. Every generator returned +raw exit 0 in both cycles; `git diff --quiet` returned raw exit 0 after each cycle and porcelain +status was empty. The three freshness receipts later reran the same owners/check paths without +changing tracked content. + +## Exact-head receipts + +All twelve selected structured receipts under `receipts/base-refresh/` attest immutable head +`8c03d862931b64573df9a4bac76ebf266e0ec175`. The evidence-set audit returned raw exit 0, selected a +nonempty set, found every receipt `PASS`/exit 0, and found no mixed head. + +| Gate | Outcome | Raw exit | Notable result | +| ------------------------- | ------- | -------: | ------------------------------------------------------------------------ | +| `check` | PASS | 0 | 2,925 files, 25 batches, zero findings | +| `test` | PASS | 0 | 4,211 passed, 0 failed, 19 ignored; 4,230 total | +| `quality-job` | PASS | 0 | CI quality composite green; existing warnings remain visible | +| `arch-check` | PASS | 0 | Zero doctrine failures; existing WARN/INFO findings remain visible | +| `docs-source-format` | PASS | 0 | `Docs source format: OK` from `docs/site` | +| `docs-source-format-test` | PASS | 0 | 6 passed, 0 failed from `docs/site` | +| `docs-tagline` | PASS | 0 | 36 checked, zero over the cap | +| `docs-accuracy` | PASS | 0 | 199 source pages, 181 corpus files, named drift child passed fail-closed | +| `agent-docs-prose` | PASS | 0 | Site rebuilt and corpus/provenance verified fresh | +| `assets-barrel` | PASS | 0 | CLI asset barrel fresh, no diff | +| `publish-assets` | PASS | 0 | MCP publish mirror fresh, no diff | +| `publish-dry-run` | PASS | 0 | Static workspace packaging simulation; not real-publish evidence | + +Focused `deno task docs:exports-drift` returned raw exit 0 with all eight package reports and a +terminal PASS. A first focused checker-test command omitted its required write permission and +returned raw exit 1 before four fixtures could run; it is an invocation error and is not presented +as a product red or pass. The correctly permissioned command returned raw exit 0 with 6 passed and 0 +failed. The head-bound root `test` receipt independently includes the checker tests and passed. + +## Scope, lock, and preserved evidence + +- The seventeen-path contract classifier returned raw exit 0: 14 changed implementation paths, all + authorized; zero unexpected paths. All other branch-diff paths are this leaf's run artifacts. +- Direct forbidden-surface Git checks keep `docs/exports`, Contracts root/barrel files, package + export maps, MySQL paths, the excluded MCP export corpus, and `deno.lock` untouched by this leaf. +- `deno.lock` is byte-identical across the pre-merge evaluator head, current main, integration head, + and working tree. All four Git/hash-object probes produced blob + `a1522e6ecc98dd4232312385b0cea4e52f5fa4b2`. +- Direct diff of `receipts/sa4/`, `audit/sa4/`, all three `impl-eval*.md`, and both `plan-eval*.md` + against `0d4c82d6e` returned raw exit 0. Prior receipts, reds, audits, and evaluator verdicts + remain append-only. +- `check:mcp-export-corpus` was not rerun and its recorded baseline red was not generated, waived, + deleted, or reclassified. + +`fresh-browser` remains N/A / waived and `NOT_RUN`; no runtime lease exists. Close-gate is +`NOT_RUN`. Aspire, Docker, browsers, `e2e:cli`, scaffold/runtime/service smokes, real publish, +readiness, label/issue-box/draft-state changes, and merge-to-main remain `NOT FIRED`. Fresh +internals Tier-A and delta evaluation are coordinator-owned. diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/ci-quality-repair-evidence.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/ci-quality-repair-evidence.md new file mode 100644 index 0000000000..92104f8260 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/ci-quality-repair-evidence.md @@ -0,0 +1,70 @@ +# CI changed-source quality repair evidence + +## Finding and repair + +GitHub Code quality run `31908898023` scanned the nine changed source paths selected between main +`0ef48c2ec` and PR head `05ac90d0`. It attributed exactly two findings to this leaf, both in +`.llm/tools/docs/check-exports-drift.ts`: + +- former line 356, `explicit-any`: the `deriveExpectedExports` `exportsObj` parameter; +- former line 372, `unsafe-cast`: manual access to a conditional export's `default` member. + +The local pre-fix reproduction used the exact nine-file CI selection and returned raw exit 1 with +those same two findings, zero allowances, and no additional finding. + +The repair models the actual configuration vocabulary as `DenoExports`, `DenoExportTarget`, and +`DenoConditionalExportTarget`. `deriveExpectedExports` accepts the untrusted JSON boundary as +`unknown`; `isExportsRecord` and `isDenoExportTarget` narrow it without a cast. The fixed sites are +now `exportsObj: unknown` at line 364 and the narrowed `resolveDenoExportPath` call/helper at lines +384 and 399-401. + +No scanner allowance, suppression, lint-ignore, unsafe cast, or gate weakening was added. + +## Behavior decisions + +1. A string export still maps directly to its path. A conditional object with a string `default` + still maps to that path. +2. A missing `default`, empty-string `default`, or other falsy malformed `default` maps to exactly + `''`, preserving the prior fallback. +3. A target-level `null` now deliberately maps to `''` instead of throwing. This is the one + intentional pathological-input behavior change: one malformed target no longer aborts the entire + audit and instead remains an empty path that downstream drift comparison can expose. +4. A top-level `exports` value that is neither a string nor a non-array object now throws + `TypeError('Deno exports must be a string or a record')`. This is fail-closed; primitives can no + longer pass through `Object.entries` as an empty inventory. + +The focused assertions are discriminating: separate cases lock the root string form, record string +target, conditional `default`, missing default, falsy/malformed default, target-level `null`, and +malformed top-level refusal. The pre-existing four refusal tests remain intact. + +## Gates + +| Proof | Raw exit | Result | +| ------------------------------------------------------- | -------: | --------------------------------------------------------------------------------- | +| Exact CI nine-file changed-source quality scan, pre-fix | **1** | Exactly the two attributed findings; zero allowances | +| Exact CI nine-file changed-source quality scan, final | 0 | Nine nonempty scanned paths; zero findings and zero allowances | +| Focused TypeScript format check | 0 | Both edited files formatted | +| Focused `deno check --unstable-kv` | 0 | Checker and checker test type-safe | +| Root `deno task check` | 0 | Package/plugin selection cache-valid; focused check above covers this `.llm` tool | +| Root `deno task test` | 0 | 4,217 passed, 0 failed, 19 ignored; 4,236 total | +| Focused checker tests | 0 | 12 passed, 0 failed | +| `deno task docs:exports-drift` | 0 | Eight package reports and terminal PASS | +| Forbidden-command scratch precheck | 0 | 1 passed, 0 failed before the root test | +| Generated-cascade working diff | 0 | All four generator-owned outputs byte-unchanged; no generator ran | +| `deno.lock` working diff | 0 | Byte-identical blob `a1522e6ecc98dd4232312385b0cea4e52f5fa4b2` | + +The drift output is unchanged: `fresh-ui`, `config`, `contracts`, and `telemetry` remain +`mode=complete`; `plugin`, `queue`, `sdk`, and `service` remain `mode=entrypoints-only`. Every row +still prints its reason and omission-group counts. Fresh UI reports 0 omitted groups / 1 documented +non-export group; Contracts reports 0 / 0. + +## Boundaries + +Only the already-authorized checker and assertion files changed, plus append-only artifacts in this +leaf's run directory. All `impl-eval*`, `plan-eval*`, prior audits, and prior receipts—including the +SA4 red—remain byte-unchanged. `gen:mcp-export-corpus`, close-gate, evaluators, readiness, issue +boxes, mirrors, merge, runtime, and publication are `NOT_RUN` / `NOT_FIRED` as applicable. + +A first porcelain scope-classifier wrapper returned raw exit 1 after trimming the leading status +column from its first record; it made no scope claim. The corrected column-preserving classifier +returned raw exit 0 for exactly two implementation paths and four run-artifact paths. diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/codex-thread-ids.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/codex-thread-ids.md new file mode 100644 index 0000000000..ff3381fbe6 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/codex-thread-ids.md @@ -0,0 +1,16 @@ +# refexport-1296 — Codex implementation thread +- **Thread / session id:** `01a005d2-7c9d-7dd1-b6fc-531b72dc14e4` +- **Rollout:** `/home/codex/.codex/sessions/2026/08/15/rollout-2026-08-15T16-27-55-01a005d2-7c9d-7dd1-b6fc-531b72dc14e4.jsonl` +- **Worktree:** `/home/codex/repos/netscript-007-reference-export` +- **Branch:** `fix/reference-export-drift-gate` @ `1b6d6d5c2` (NO upstream by design). +- **Push rule:** explicit refspec only — `git push origin HEAD:refs/heads/fix/reference-export-drift-gate`. +- **Requested route:** provider=openai · model=gpt-5.6-sol · effort=medium +- **Observed route:** provider=openai · model=gpt-5.6-sol · effort=medium +- **Route verdict:** matched +- **Runtime:** approval=never · sandbox=dangerFullAccess +- **Brief (staged):** `/home/codex/refexport-1296-brief.md` +## Steering (same thread — never a second send-message-v2 at this worktree) +```bash +codex exec resume 01a005d2-7c9d-7dd1-b6fc-531b72dc14e4 -- "" +``` +_Written by `.llm/tools/agentic/codex/launch-codex-slice.ts`._ \ No newline at end of file diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/context-pack.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/context-pack.md new file mode 100644 index 0000000000..e168570fe7 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/context-pack.md @@ -0,0 +1,98 @@ +# Context pack — reference-export-drift-gate + +## Current state + +- Branch: `fix/reference-export-drift-gate` +- Base: `baf1cdf67a4e931af17b4772ddf6101f36152184` +- PR: #1666, draft, closes exactly #1296 +- PLAN-EVAL: cycle 2 `PASS` at `45c249b9c` +- Implementation: S1/S2 reviews passed; S3 and refusal-test repair completed; preserved IMPL-EVAL + PASS at `ee67d12b4` is pre-finding evidence only +- Readiness: revoked after quality CI found stale tracked agent-docs mirrors; PR remains draft at + `status:impl`; issue boxes unchanged +- Current pass: SA-3 plan-only amendment. No checkout generation until fresh Tier-A PASS +- S3 immutable implementation head: `47ca22abe94b9d2e54d3778edc8944094b227886` +- `fresh-browser`: N/A / waived, `NOT_RUN`; no runtime lease + +## S1 result + +The checker now makes coverage mode explicit and reason-bearing, validates policy fail-closed, +reports every package's mode/reason/group counts, and exposes an injectable exit-code seam. Fresh UI +is complete-mode with all 168 live symbols documented. Its seven extra Dropzone inventory names are +machine-readably classified as the copy-source non-exports the page visibly says they are. + +All four residual Contracts examples now import from the entrypoint that exports their symbols. The +diff is limited to the import subpath line in each file. + +## Evidence state + +- Focused checker tests: 6 passed / 0 failed. +- Named direct checker: raw exit 0, PASS. +- Docs source format: raw exit 0. +- Docs accuracy: raw exit 0. +- Pages workflow/classifier tests: 1 + 60 passed / 0 failed. +- Controlled drift: named task and aggregate each raw exit 1; aggregate surfaced child output and + threw fail-closed; target restored byte-exactly. +- Single-execution/permission/trigger audit: raw exit 0. +- Contracts doc lint: raw exit 1 with the accepted baseline nine private-type-ref findings. +- Fresh UI doc lint: raw exit 1 with the accepted baseline 123 `/interactive` findings. +- Seven-gate durable evidence set: `SUFFICIENT` at `47ca22abe`; every receipt PASS/raw exit 0. +- Workspace publish dry-run: raw exit 0, static packaging evidence only. +- JSR audits: raw exit 0 for Contracts and Fresh UI; sanctioned/pre-existing INFO/WARN findings + retained. +- Thirteen-path/forbidden-surface/lock audit: raw exit 0; lock blob identical to base. +- Browser/runtime/Aspire/Docker/E2E: `NOT_RUN`. + +## S2 result + +The already-enforced drift checker now has a least-permission `docs:exports-drift` identity. The +accuracy aggregate invokes that named task once while retaining stdout/stderr failure visibility, +and Pages displays the same command once from repository root behind its existing run guard. The +workflow trigger surface is unchanged. + +## SA-3 verified cascade + +The Fresh UI reference change propagates through exactly four canonical outputs: + +- `.llm/assets/agent-docs/prose.json.gz` +- `.llm/assets/agent-docs/provenance.json` +- `packages/cli/src/kernel/assets/agent-docs.generated.ts` +- `packages/mcp/src/publish-assets.generated.ts` + +The coordinator's rescope brings the implementation ceiling to seventeen paths; an eighteenth path +requires rescope. `gen:mcp-export-corpus` is explicitly excluded: its check is red at base and leaf, +and base/head regeneration produces byte-identical output. CLI/MCP generated sources are real +publish deltas and require fresh JSR/member dry-run evidence. + +## SA-4 generated-content state + +- Fresh Tier-A passed SA-3 and canonical generation is complete at immutable content head + `46528ae4c71b3744f0af64bd749d01d831f70c89`. +- Exactly four approved generated files changed. Two pre-commit passes produced the same diff hash; + the post-commit owner rerun and all freshness checks left no diff. +- The original full `test` receipt remains RED/raw 1 at 4,202/1/19. The supervisor attributed its + only match to the supervisor's ignored unscoped hook transcript and quarantined that subtree + intact outside the repo with identical pre/post SHA-256. +- The one authorized `test-attempt2` at immutable content head `46528ae4c` passed raw 0 at + 4,203/0/19. The authoritative twelve-gate evidence set selects attempt 2 and is `SUFFICIENT`; both + receipts remain append-only in `receipts/sa4/` with exact totals. +- Known Contracts/Fresh UI doc-lint reds and `check:mcp-export-corpus` red remain preserved. + JSR/member selection proves the regenerated CLI and MCP assets ship to upgrading consumers. + +## Resume rule + +Implementation author commits/pushes the SA-4 attempt-2 attribution and evidence index, comments, +and stops for the second fresh Tier-A. Fresh delta IMPL-EVAL, readiness, issue boxes, close-gate, +labels, draft state, and merge remain coordinator-owned. + +## CI changed-source quality repair + +After post-integration IMPL-EVAL cycle 4 PASS, ready-triggered Code quality run `31908898023` found +two leaf-owned checker findings: one explicit `any` parameter and one unsafe `as any` access. The +focused repair replaces both with the typed Deno exports union and narrowing helpers. Target-level +`null` deliberately resolves to `''`; malformed top-level exports throw fail-closed. + +The exact nine-file changed-source scan is green with zero findings/allowances. Root test is +4,217/0/19, focused checker tests are 12/0, and direct drift retains its eight package reports and +PASS. No generator output or lock moved. The author stops after commit/push/comment for fresh +internals Tier-A; no evaluator is launched by the author. diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/drift.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/drift.md new file mode 100644 index 0000000000..cf14fd8da4 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/drift.md @@ -0,0 +1,102 @@ +# Drift log — reference-export-drift-gate + +## S1 + +- **Implementation drift:** none. The seven S1 implementation paths match the approved plan. +- **Evidence drift:** none. Intermediate direct-checker reds were preserved and recorded under + N1/D11; final green followed documentation and policy-order reconciliation, not a widened + exclusion or narrowed parser. +- **Known adjacent finding:** PLAN-EVAL O1 notes that `schemas/pagination.ts` uses free example + identifiers beyond its import line. SA-2 authorizes only the import-subpath edit, so the remainder + stays with #1533's example-compile work and did not trigger a fourteenth-path rescope. + +## S2 + +- **Implementation drift:** none. The three S2 implementation paths match the approved plan; the + named task, aggregate child argv, and guarded root-cwd Pages step are the only implementation + edits. +- **Framing drift:** none. S2 is recorded as discoverability over the already-enforced non-draft CI + chain; no `wired to nothing` or inverse `no workflow runs docs-accuracy` premise returned. +- **Evidence diagnostic:** the structured lint wrapper refused the accuracy tool because the repo + lint configuration excludes `.llm`; this remains raw exit 2 rather than a false pass. The exact + file passed a non-authoritative `--no-config` lint diagnostic. A first single-execution audit had + a shell-quote assertion defect (raw exit 1); its corrected assertion was raw exit 0. +- **Controlled mutation:** one Fresh UI symbol row was changed only in-memory/on-disk for the + negative proof, backed up under `.llm/tmp`, and restored in `finally`. SHA-256 and byte equality + matched, the scratch directory was removed, and the path has no diff. + +## S3 + +- **Implementation drift:** none. S3 edits run artifacts only; all receipts attest the exact S2 + implementation head. +- **Gate drift:** none. All seven contracted durable gates fired and produced PASS receipts. The + full-export Contracts and Fresh UI doc-lint commands remain separate honest reds at raw exit 1; + they are not part of the seven PASS receipts and were not waived. +- **Publication framing:** no drift. Dry runs are recorded as static packaging/isolated-declaration + evidence only, never as real-publish or install success. +- **Boundary drift:** none. `fresh-browser` remains N/A / waived and `NOT_RUN`; every prohibited + runtime, release, mutation, and cleanup command remains `NOT FIRED`. + +## SA-3 — post-IMPL-EVAL generated-publication finding + +- **Plan drift:** the original plan treated the Fresh UI reference as non-published prose and did + not follow `check:agent-docs-prose` into its tracked CLI/MCP mirrors. CI at `ee67d12b4` proved + that assumption incomplete. The preserved IMPL-EVAL PASS remains historical; readiness is + invalidated for the future changed head. +- **Authorized correction:** coordinator rescope adds exactly four existing generated paths and + supersedes the former fourteenth-path refusal only for those paths. The live ceiling is seventeen; + an eighteenth path still refuses. +- **Over-broad-generator trap avoided:** `gen:mcp-export-corpus` is red at base and leaf, but base + and leaf regeneration are byte-identical. Its output is excluded instead of absorbing unrelated + baseline drift to make a check quiet. +- **Publication drift:** CLI embeds changed corpus bytes/provenance and MCP embeds changed corpus + provenance. The earlier leaf-wide no-publish-delta framing is corrected; no export/API/pin change + is inferred. +- **Gate drift:** old receipts and IMPL-EVAL remain append-only evidence for old heads. All + applicable receipts must be recut coherently at one future clean committed content head, followed + by a fresh coordinator-owned delta IMPL-EVAL. + +## SA-4 — canonical generation + +- **Implementation drift:** none. Canonical generation changed exactly the four approved cascade + paths; two pre-commit passes were byte-idempotent, and the clean content-head rerun was a no-op. +- **Evidence red:** the head-bound full-test receipt is raw exit 1 because the repository safety + scan found `aspire stop --all` in foreign `.llm/tmp/claude/hooks/unscoped/events.jsonl`. The red + is preserved and the evidence set remains `INSUFFICIENT`; foreign scratch was not deleted to + manufacture a green. +- **Known baseline reds:** Contracts and Fresh UI doc-lint remain raw exit 1 at their unchanged + counts. `check:mcp-export-corpus` remains raw exit 1 and its generator was not run. +- **Publication framing:** CLI and MCP member dry-runs explicitly include the regenerated assets; + this is static packaging evidence, not real-publish proof. All exact internal member pins remain + `0.0.6`. +- **Boundary drift:** none. Seventeen-path and lock audits pass; fresh-browser and close-gate remain + `NOT_RUN`, and all runtime/readiness/coordinator mutations remain `NOT FIRED`. + +## SA-4 — test red attribution and authorized attempt 2 + +- **Attribution correction:** the original red was not merely foreign scratch of unknown origin. The + supervisor proved it was the supervisor's ignored unscoped hook capture of supervisor prose, at + line 177 / `2026-08-15T19:11:51.339Z` / `sessionId: null`. No generated or tracked source was + implicated. +- **Recoverable quarantine:** the supervisor moved the intact hook subtree outside the repo to + `/home/codex/.claude/jobs/f7691917/quarantine/sa4-hooks-unscoped/`; pre/post SHA-256 are identical + at `d0251bc2f8c78814724cb2e6c2460102260a39aadb3a21551b81244efbaceab2`. The scanner was not + weakened and the event was not edited or deleted. +- **Evidence resolution:** the one authorized distinct `test-attempt2` at content head `46528ae4c` + passed raw 0 with 4,203 passed / 0 failed / 19 ignored. The original raw-1 receipt remains + unchanged at 4,202 / 1 / 19; no third attempt ran. The authoritative evidence set now selects + attempt 2 and recomputes `SUFFICIENT` while indexing both receipts. +- **Boundary drift:** none. No product/source/generated/lock change resulted from attribution or + quarantine; runtime, close-gate, PR-state, label, issue-box, and merge actions remain untouched. + +## CI quality finding — typed Deno exports boundary + +- **Observed:** ready-triggered Code quality run `31908898023` found `explicit-any` and + `unsafe-cast` in the leaf-owned checker after the post-integration evaluator PASS. +- **Plan impact:** no rescope. Both findings are in the authorized checker path; the existing test + path remains assertions-only. +- **Resolution:** model the real string-or-record exports shape and narrow untrusted JSON without + casts. Preserve the empty fallback, deliberately make target-level `null` safe, and make malformed + top-level values fail closed. +- **Proof:** exact CI selection raw 0 after repair; focused tests 12/0; root test 4,217/0/19; direct + drift raw 0 with unchanged coverage reporting. diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/fix1-evidence.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/fix1-evidence.md new file mode 100644 index 0000000000..cadf020e73 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/fix1-evidence.md @@ -0,0 +1,80 @@ +# FAIL_FIX repair evidence — reference-export-drift-gate + +## Attestation + +- Evaluator finding: F1 at `4c09e9203afee52b43c10dfa1246eb0473ad7e40`. +- Immutable repaired implementation head: `4238670173271bca4281eba7db6c2030d046bc73`. +- Frozen base: `baf1cdf67a4e931af17b4772ddf6101f36152184`. +- Repair diff from the evaluator commit: exactly `.llm/tools/docs/check-exports-drift_test.ts`; + direct Git diff raw exit 0. +- Checker behavior, product sources, tasks, workflows, and docs were not changed by the repair. + +The tests now use real on-disk fixtures, capture the refusal cause, require exactly one expected +error, and reject file-read failures. The invented-symbol case documents the real export alongside +the invented symbol. Full mutation details and raw exits are recorded in +`audit/refusal-mutation-tests.md`. + +## Head-bound receipts + +The historical `receipts/s3/` set attests the pre-repair implementation head and is superseded for +current-head claims. The authoritative seven-receipt set is `receipts/fix1/`; its generated +`audit/evidence-set-fix1.json` result is `SUFFICIENT` with no reasons. + +| Gate | Authoritative receipt | Outcome | Raw exit | Notable result | +| -------------------- | ------------------------- | ------- | -------: | ----------------------------------------------------------------------------------- | +| `check` | `check.json` | PASS | 0 | Structured package/plugin check task completed at the repaired head | +| `test` | `test-attempt2.json` | PASS | 0 | 4,203 passed, 0 failed, 19 ignored; 4,222 results | +| `quality-job` | `quality-job.json` | PASS | 0 | Composite completed; existing dependency-catalog warnings retained | +| `arch-check` | `arch-check.json` | PASS | 0 | Doctrine failures 0; existing WARN/INFO findings retained | +| `docs-source-format` | `docs-source-format.json` | PASS | 0 | Ran from `docs/site`; `Docs source format: OK` | +| `docs-accuracy` | `docs-accuracy.json` | PASS | 0 | Named drift task reached through the aggregate; existing peer warning retained | +| `publish-dry-run` | `publish-dry-run.json` | PASS | 0 | Static workspace simulation completed; 318,629 bytes of member/file output retained | + +The first full-test receipt, `test.json`, is preserved as **RED, raw exit 1**: 4,202 passed, 1 +failed, 19 ignored. The repository safety test found forbidden command strings inside the run-owned +full-archive tar under `.llm/tmp/`. After the two explicit mutation scratch directories were removed +(cleanup raw exit 0; absence raw exit 0), the new invocation `test-attempt2.json` returned raw +exit 0. The red is diagnostic interference and is not relabeled as a pass. + +`publish-dry-run` proves static packaging and isolated-declaration compatibility only. It does not +prove a real publish, remote registry graph, installation, or production behavior; no publish was +attempted. + +## Focused and boundary evidence + +- Direct `deno task docs:exports-drift`: raw exit 0; eight nonempty per-package coverage reports and + terminal PASS. +- Focused checker test after scratch cleanup: raw exit 0; 6 passed, 0 failed. +- Thirteen-path classifier: raw exit 0; contract size 13, 10 changed implementation paths, all + authorized, and no unauthorized path. +- Direct forbidden-surface diff: raw exit 0 for `docs/exports`, `deno.lock`, Contracts/Fresh UI + member configs, Contracts public barrel and already-correct primitive JSDoc, and MySQL paths. +- `deno.lock` base, repaired-head, and working-tree blobs are byte-identical: + `a1522e6ecc98dd4232312385b0cea4e52f5fa4b2`. +- Prior JSR audits remain applicable because this repair changes only a non-publishable tooling + test; the required workspace `publish-dry-run` was recut at the repaired head. +- `fresh-browser`: `NOT_RUN`, N/A / waived; no runtime lease exists or was requested. + +## Coordinator-owned close-gate mapping + +Issue #1296 has five acceptance boxes. The plan's four-row live table folds the first two together; +the ready-merge evidence must map them separately: + +1. Contracts examples import from real exporting entrypoints. +2. Contracts reference inventory advertises no non-exports. +3. Fresh UI reference matches the published export surface. +4. Intentional omissions are machine-readable. +5. Maintainer derivation/update runbook and discoverable drift verification are present. + +No issue box was checked, no `acceptance-evidence` block was created, and the issue was not touched. +Those operations remain coordinator-owned at `ready-merge`. + +Design checkpoint pointer: the locked D1-D11 table in `plan.md`, together with PLAN-EVAL cycle-2 +PASS at `45c249b9c`, carries the design checkpoint for this leaf. + +## Prohibited gates and handoff + +Aspire, Docker, browser, `e2e:cli`, scaffold/runtime/service smokes, real publish, merge, ready +transition, relabel, issue closure, milestone mutation, central-state mutation, and runtime-resource +cleanup remain `NOT FIRED`. The implementation author does not self-certify; the coordinator owns +Tier-A, substantive review, readiness, and merge decisions. diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/impl-eval-cycle-1.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/impl-eval-cycle-1.md new file mode 100644 index 0000000000..ea0704c85e --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/impl-eval-cycle-1.md @@ -0,0 +1,170 @@ +# IMPL-EVAL — reference-export-drift-gate (PR #1666) + +## Verdict + +**FAIL_FIX** + +One required fix, confined to the already-authorized test-only path +`.llm/tools/docs/check-exports-drift_test.ts`. No product, source, workflow, task, or receipt change +is required. Everything else in the leaf was re-derived and holds; the checker itself behaves +correctly — the defect is that three of the four committed refusal tests cannot fail when the +refusal they name is removed, so they are not the durable proof SA-1 and plan S1 require. + +## Binding + +| Field | Value | +| ----------------------------- | -------------------------------------------------------------------------------------------------------------------------- | +| Evaluator | Claude Fable 5, fresh separate session (opposite-family to Codex GPT-5.6 Sol author) | +| Session | `claude.ai/code/session_013RnnFDtHQhEbFhJCLbkEsD` (bg job `3882ca70`) | +| Immutable implementation head | `47ca22abe94b9d2e54d3778edc8944094b227886` — the code judged | +| Evidence head | `d095c1260a2474f3ae16cd5b17f3bfcbbada9c94` — receipts/audits/artifacts | +| Base | `baf1cdf67a4e931af17b4772ddf6101f36152184` (= `merge-base HEAD origin/main`) | +| Local / remote / PR head | all `d095c1260` — no mismatch; PR draft, base `main` | +| Receipt `gitHead` | all seven = `47ca22abe` = `actualGitHead`; the evidence commit carries them — verified as intended binding, not a mismatch | +| Author thread | Codex `01a005d2-7c9d-7dd1-b6fc-531b72dc14e4` | + +Reproductions ran in place read-only, in `$CLAUDE_JOB_DIR/tmp` archive copies, or under +`.llm/tmp/impl-eval-1666/` (removed afterwards). Tree clean at the end (`git status --short` empty). +No Aspire/Docker/browser/`e2e:cli`/scaffold/runtime smokes were run; no lease requested. + +## Findings + +### F1 (required fix) — refusal tests for reason / mode / invented-symbol are non-discriminating + +Artifact: `.llm/tools/docs/check-exports-drift_test.ts:98-113` (reason + mode) and `:157-161` +(invented symbol) at `47ca22abe`. + +Executed evidence — each mutant built from `git archive 47ca22abe` of the checker, tests unchanged: + +| Mutant on `check-exports-drift.ts` | Named test | Result | +| ------------------------------------------------------------------------------- | -------------------------------------------------------- | ---------------------------------------------------------- | +| `checkSymbolsDrift` INVENTS branch disabled (`if (false && …)`, line 435) | `refuses an invented symbol through the injectable seam` | **still ok** (6 passed) | +| unknown-mode error replaced by accepting `entrypoints-only` (line 566) | `refuses an unknown coverage mode` | **still ok** (6 passed) | +| `symbolCoverage.reason` nonempty check replaced by coercion to `'x'` (line 541) | `refuses an empty or malformed coverage reason` | **still ok** (6 passed) | +| `checkSymbolsDrift` OMITS branch disabled (line 421) | `refuses an omitted symbol through the injectable seam` | FAILED (5 passed / 1 failed) — this test is discriminating | + +Cause: `fixtureMapping()` uses `packagePath: 'unused'` / `docPath: 'unused'`, so when validation is +bypassed `checkDrift` still returns 1 from `Failed to read deno.json for fixture … NotFound`; and +the invented-symbol fixture documents only `inventedSymbol` while the real export `actualSymbol` is +undocumented, so the OMITS error alone yields 1 (the committed test output shows both +`OMITS 'actualSymbol'` and `INVENTS 'inventedSymbol'`). The tests assert exit code only, never the +refusal cause. + +Why this blocks: SA-1 authorized the test path precisely because "proving that with one-off probes +leaves no artifact that can fail a future CI run"; plan S1 "Proves" and validation row 1 require +committed tests asserting nonzero for each of the four refusal cases. Three of the four cannot fail +on the regression they name — the proof for those cases today rests only on my ephemeral probes. + +The checker itself is correct (independently probed on the real Contracts mapping: empty reason, +`42` reason, and mode `partial` each print `Coverage Policy Error …` and return 1; the valid mapping +returns 0). This is a test-quality defect, not a product defect. + +Required fix (test file only, no other path): make each refusal test fail only for its own cause — +e.g. assert `validateAuthoritativeMapping(...).errors` contains the specific message (or capture +`console.error`), and/or point the malformed-policy fixtures at a real fixture dir (reuse +`withSymbolFixture`) so a file-read error cannot stand in for the refusal; and document +`actualSymbol` alongside `inventedSymbol` in the invented case +(`withSymbolFixture(['actualSymbol', +'inventedSymbol'], …)`) so OMITS cannot mask INVENTS. Re-run +`deno test --allow-all .llm/tools/docs/check-exports-drift_test.ts` and record it. Because the fix +touches an implementation path, the receipts bound to `47ca22abe` no longer attest the new head; the +`test` receipt (at minimum) must be re-cut at the new immutable head, or the coordinator must +explicitly rule the delta test-only and accept the focused run as the amendment evidence. + +## Re-derived judgments (all hold) + +1. **#1296 acceptance / `Closes #1296`.** Enumerated all nine shipped Contracts `@example` import + lines (`grep` over `packages/contracts/**/*.ts` incl. the four entrypoint module docs) and ran + `deno doc --filter` per symbol against the claimed entrypoint: `baseContract`, + `BaseContractRoute`, `BaseContractOutputRoute` on root; `paginatedQuery`, + `FilterConditionSchema`, `buildPrismaWhere`, `PaginationInputSchema`, `createPaginatedOutput`, + `OffsetPaginationQuerySchema` on `/query`; `createTransformer` on `/transform`; + `createCrudContract` on `/crud` — all resolve (`EXIT=0`); the six repaired symbols are absent + from root (`Node … was not found!`, `EXIT=1`). **No fifth wrong-root example survives** in the + publish set. Fresh UI row, omissions row, runbook row: see 3–5. `Closes #1296` is earned subject + to F1 and the close-gate note below. Advisory only: `schemas/pagination.ts` example still uses + free `baseContract`/`UserSchema` identifiers beyond the import line — outside SA-2 authorization, + already recorded in `drift.md` (PLAN-EVAL O1) and deferred to #1533; the issue's first box says + "code that compiles", so the coordinator should map that box's evidence to import correctness and + name the #1533 remainder rather than imply standalone compilation. +2. **Fail-closed seam.** `checkDrift(mapping)` is exported; `if (import.meta.main)` binds + `Deno.exit(await checkDrift(AUTHORITATIVE_MAPPING))` (`check-exports-drift.ts:799-801`). All four + refusal cases are genuinely nonzero when driven directly. Committed-test durability: see F1. +3. **Per-package accounting is true.** `deno task docs:exports-drift` prints eight `Coverage [...]` + lines then `PASS`, exit 0. Same eight packages as baseline (none dropped). `complete` packages + (`fresh-ui`, `config`, `contracts`, `telemetry`) really are enforced: the checker runs + `deno doc --json` per export-map entry and errors on any undocumented export not in a + reason-bearing group; the `telemetry` omission group is printed (`omitted-symbol-groups=1`) and + each omitted symbol is verified exported-and-undocumented. `entrypoints-only` packages print that + mode with reason. Note (non-blocking, plan-locked N5): the aggregate `docs:accuracy` suppresses + child stdout on success, so the coverage lines are visible through the direct task and on + failure, not in a green aggregate log. +4. **Fresh UI reference truth.** Union of `deno doc --json` over all six export-map entries = 168 + unique symbols (28/11/35/82/16/7 per entrypoint). Parsed every `Symbol`-headed table on the page + (175 cells = 168 exports + 7 Dropzone) and checked each symbol against the entrypoint its `##` + section claims — zero mismatches, zero non-exports outside the Dropzone section. Dropzone is + labelled "a copy-source registry component, not a package export" and its seven names are the + `documentedNonExports` group. Live probes on a page copy: invented symbol → `INVENTS`, exit 1; + removed `cn` → `OMITS 'cn'`, exit 1; unchanged → 0. +5. **S2 discoverability, single execution, permissions.** `deno.json:85` adds `docs:exports-drift` + (`--no-lock --allow-read --allow-run=deno`, narrower than the previous `--allow-all` child argv); + `check-accuracy-and-discoverability.ts:292-300` spawns `deno task docs:exports-drift` once and + still prints child stdout/stderr then throws on nonzero; `pages.yml:143-145` adds one root-cwd + step under `if: env.RUN == 'true'`, triggers unchanged (diff is +3 lines). `grep` over + workflows/catalog: `ci.yml` reaches the checker only via `docs-accuracy`; Pages runs only the + direct task — exactly once per path. PR body, worklog and drift state plainly that enforcement + pre-existed (`ci.yml → catalog → docs:accuracy → child`) and credit this leaf with + discoverability only. `pages-workflow_test.ts` passes; `docs:accuracy` exit 0 (3.6 s). +6. **JSR / pins / publish delta.** Contracts export map `.`/`/crud`/`/query`/`/transform`; zero + `@netscript/*` imports. Fresh UI: exactly two pins, both `jsr:@netscript/sdk@0.0.6/...`. + `deno publish --dry-run --allow-dirty` in `packages/contracts`: `Dry run complete`. The Contracts + delta is four one-line JSDoc import edits (`git diff baf1cdf67 47ca22abe -- packages/contracts`), + no export/API/runtime change — stated honestly. +7. **Baseline reds.** `audit/doc-lint-contracts.json`: 9 `private-type-ref` in + `contract-primitives.ts` (8) and `create-crud-contract.ts` (1) — both untouched; + `/query`,`/transform` exit 0. `audit/doc-lint-fresh-ui.json`: 123 on `/interactive` only; no + Fresh UI package file touched. oRPC slow-type INFO and `F-DOCT-4 vocabulary` WARN + (`registry/lib`) present in `audit/jsr-*.json`. `s3-evidence.md` and `worklog.md` carry them as + **RED / raw exit 1** and WARN, attributed to baseline, not in the seven PASS receipts, not + waived. None is a regression of this leaf. +8. **Scope and lock.** `git diff --name-only baf1cdf67 47ca22abe` minus `.llm/runs` = exactly 10 + paths, all inside the 13; `docs/exports` absent; `contract-primitives.ts`, `src/public/mod.ts`, + both package `deno.json`, `prisma-adapter-mysql` byte-identical to base; `deno.lock` identical to + base through `d095c1260`. Evidence commit touches run artifacts only. +9. **Receipts.** Seven receipts, `invocationId`s + `reference-export-s3-{arch-check,check, + docs-accuracy,docs-source-format,publish-dry-run,quality-job,test}`, + each `outcome: PASS`, `exitCode: 0`, `gitHead == actualGitHead == 47ca22abe`; + `audit/evidence-set.json` `SUFFICIENT`. The set is sufficient for a + checker/docs/JSDoc/task/workflow surface (`test` covers the tool tests under root discovery; + `publish-dry-run` covers the shipped JSDoc). Sufficiency of the set does not cure F1 — the `test` + receipt proves the tests pass, and F1 shows three of them pass vacuously. +10. **`fresh-browser`.** Recorded as `NOT_RUN`, N/A / waived (SA-1) in plan, worklog, s3-evidence, + drift; never restated as pass; no lease. + +## Process notes (non-blocking) + +- PLAN-EVAL cycle 2 `PASS` (`45c249b9c`) precedes S1; the S1/S2/S3 commit trail exists as PR + comments. `worklog.md` has no literal "Design checkpoint" entry; design is carried by the locked + D1–D11 table in `plan.md` and the recorded PLAN-EVAL PASS — noted per protocol rule 3, not + blocking. +- Close-gate (pre-`ready-merge`, coordinator-owned): all five #1296 acceptance boxes are unchecked + and no `acceptance-evidence` block exists yet; the PR DoD's last box is correctly unchecked. Map + all five boxes (the issue has five, the plan's live table folds the first two together). + +## Executed command log (abridged) + +- head binding: `git rev-parse HEAD`, `git fetch origin fix/reference-export-drift-gate`, + `gh pr view 1666 --json headRefOid,isDraft,baseRefName`, `git merge-base HEAD origin/main` +- `deno test --allow-all .llm/tools/docs/check-exports-drift_test.ts` → 6 passed +- `deno task docs:exports-drift` → 8 coverage lines, PASS, exit 0 +- `deno task docs:accuracy` → PASS, exit 0 +- `deno test --no-lock --allow-read --allow-write --allow-run .llm/tools/docs/pages-workflow_test.ts` + → ok +- `deno check --unstable-kv` on the three tool files → ok +- `packages/contracts`: `deno doc --filter ` ×11 OK, ×6 root MISS; + `deno publish --dry-run --allow-dirty` → Dry run complete +- `packages/fresh-ui`: `deno doc --no-lock --json ` ×6 → 168 unique symbols; page/section + cross-check script → 0 mismatches +- four checker mutants under `$CLAUDE_JOB_DIR/tmp/mut` (table in F1) +- forbidden-surface `git diff --quiet` → clean; `deno.lock` diff → identical diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/impl-eval-cycle-2.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/impl-eval-cycle-2.md new file mode 100644 index 0000000000..f9a32ee55c --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/impl-eval-cycle-2.md @@ -0,0 +1,115 @@ +# IMPL-EVAL cycle 2 — reference-export-drift-gate (PR #1666) + +## Verdict + +**PASS** + +Cycle 1 (`FAIL_FIX` at `4c09e9203`, preserved verbatim as `impl-eval-cycle-1.md`) raised one +finding, F1: three of the four committed refusal tests could not fail on the regression they name. +The repair at implementation head `423867017` is confined to +`.llm/tools/docs/check-exports-drift_test.ts`; the checker is byte-identical to the head cycle 1 +judged. I re-derived F1 closure by mutation on my own `git archive` copy (table below): each of the +four named tests now fails, on the exit-code assertion, when its refusal branch is removed. No new +finding. Everything re-derived in cycle 1 was spot-checked or re-run and holds. + +## Binding + +| Field | Value | +| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ | +| Evaluator | Claude Fable 5, fresh separate session (opposite-family to Codex GPT-5.6 Sol author thread `01a005d2-7c9d-7dd1-b6fc-531b72dc14e4`) | +| Session | `claude.ai/code/session_01MDMbe68iYvjHBLuUGKZqBS` (bg job `7a3b4645`) | +| Immutable implementation head | `4238670173271bca4281eba7db6c2030d046bc73` — the code judged | +| Evidence head | `010da98a230503bb27b46eb0edc5e979929f7fb1` — `receipts/fix1/`, `audit/`, `fix1-evidence.md`, worklog | +| Base | `baf1cdf67a4e931af17b4772ddf6101f36152184` (= `merge-base HEAD origin/main`) | +| Local / remote / PR head | `git rev-parse HEAD`, `git ls-remote origin refs/heads/fix/reference-export-drift-gate`, `gh pr view 1666 --json headRefOid` all `010da98a2`; PR draft | +| Receipt `gitHead` | all eight `fix1` receipts: `gitHead == actualGitHead == 423867017` — carried by the evidence commit, verified as intended binding, not a mismatch | +| Prior cycle | `4c09e9203` FAIL_FIX (F1); supervisor checkpoint `0646f429f` noted | + +Reproductions ran read-only in place or in `$CLAUDE_JOB_DIR/tmp/mut` (a `git archive 423867017` +extraction **outside** `.llm/tmp/`, removed afterwards). No `.llm/tmp/` tarball was created; the +`forbidden-commands_test.ts` scan passes in place. Tree clean at the end. No Aspire / Docker / +browser / `e2e:cli` / scaffold / runtime smokes; no lease. + +## F1 closure — re-derived by mutation (my runs, not the author's table) + +Archive copy of `423867017`; checker mutated, committed test file unchanged; one named test per run +via `--filter`, all reporting `1 failed | 5 filtered out`. + +| Mutant on `check-exports-drift.ts` | Named test | Result | +| ---------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- | ------------------------------------------------------- | +| L421 OMITS branch → `if (false)` | `refuses an omitted symbol through the injectable seam` | **FAILED**, `assertSingleRefusal` actual 0 / expected 1 | +| L435 INVENTS branch → `if (false && …)` | `refuses an invented symbol through the injectable seam` | **FAILED**, actual 0 / expected 1 | +| L543 nonempty-reason error → `if (false)`; both `isNonemptyString(coverage.reason)` guards → `true`; `.trim()` → `String(...)` (full coercion) | `refuses an empty or malformed coverage reason` | **FAILED**, actual 0 / expected 1 | +| L566 `entrypoints-only` branch also accepts `mode === 'unknown'` | `refuses an unknown coverage mode` | **FAILED**, actual 0 / expected 1 | +| restored copy | full file | 6 passed / 0 failed | + +Why the tests now discriminate (read from the diff `47ca22abe..423867017`): all four use the real +on-disk `withSymbolFixture` package + doc, so a `NotFound` read can no longer stand in for a +refusal; `checkDriftCapturingErrors` captures `console.error`; `assertSingleRefusal` requires code +1, **exactly one** error, the branch-specific message, and asserts `Failed to read` is absent; the +invented case documents `['actualSymbol', 'inventedSymbol']` so OMITS cannot mask INVENTS. Cycle 1 +required exactly this. + +**Checker unmoved:** `git diff 47ca22abe 423867017 -- .llm/tools/docs/check-exports-drift.ts` is +empty (0 lines); the repair commit's stat is the single test file. No checker behaviour changed to +make a test pass. + +## Receipts and the preserved red + +- `receipts/fix1/`: eight files. `arch-check`, `check`, `docs-accuracy`, `docs-source-format`, + `publish-dry-run`, `quality-job` PASS/exit 0; `test.json` **FAIL/exit 1** preserved; + `test-attempt2.json` PASS/exit 0 (4,203 / 0 / 19). All `gitHead == actualGitHead == 423867017`. +- `test.json` red is honestly explained: its stdout tail shows the single failure is + `forbidden-commands_test.ts` finding `docker …`/`aspire stop --all` strings inside + `.llm/tmp/refusal-mutants-full-423867017/source.tar` — the author's own mutation archive, not a + product regression. `fix1-evidence.md`, `worklog.md`, and `evidence-set-fix1.json` (which lists + `test-attempt2` as the `test` receipt) all state it as RED, not relabelled. `test-attempt2` + legitimately supersedes it: same head, same argv, run after the scratch was removed. Retaining the + red rather than deleting it is correct. +- Sufficiency for a test-only delta: `test` (full root discovery incl. the tool tests) and `check` + are the gates the delta can affect; the other five are unchanged-surface re-cuts at the new head + and cost nothing to include. Set judged **sufficient**. Also re-ran in place: focused test 6/0, + `deno check --unstable-kv` on checker + test OK, `forbidden-commands_test.ts` OK. + +## Re-derived / carried judgments + +| # | Item | This cycle | +| -- | ---------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 | #1296 acceptance / `Closes` | **Re-run.** Enumerated all nine shipped Contracts example imports (`grep` over `packages/contracts/**/*.ts`, non-test): root ×3, `/query` ×3 files, `/crud` ×2, `/transform` ×1. `deno doc --no-lock --filter` against the export-map entrypoints (`mod.ts`/`query.ts`/`transform.ts`/`crud.ts`): all 11 symbols OK at their claimed entrypoint; the six repaired symbols MISS on root. **No fifth wrong-root example survives.** `Closes #1296` earned; close-gate mapping (five boxes) remains coordinator-owned and is correctly documented as such in `fix1-evidence.md`. Cycle-1 advisory on `pagination.ts` free identifiers (#1533) unchanged. | +| 2 | Fail-closed refusal coverage | **Re-run** (this cycle's core). Four refusal cases committed as discriminating tests — see mutation table. | +| 3 | Per-package accounting | **Re-run.** `deno task docs:exports-drift` → eight `Coverage [...]` lines (fresh-ui/config/contracts/telemetry `complete`; plugin/queue/sdk/service `entrypoints-only` with reason; telemetry `omitted-symbol-groups=1`), `PASS`, exit 0. Enforcement path unchanged since cycle 1 (checker unmoved) — truth of `complete` carried from cycle 1's verification. | +| 4 | Fresh UI / Contracts truth | **Re-run.** `deno doc --json` union over the six export-map entries = 28/11/35/82/16/7 → 168 unique symbols; every `Symbol`-table cell on the page split on `/`, generics stripped → 168 exports all present; the only 7 on-page non-exports are `DROPZONE_INGEST_SOURCES`, `DROPZONE_REJECTED_REASONS`, `DropzoneIngestDetails`, `DropzoneIngestSource`, `DropzoneProps`, `DropzoneRejectedFile`, `DropzoneRejectedReason` — under `## Dropzone (registry component)`, labelled "a copy-source registry component, not a package export", and the mapping's `documentedNonExports` group. Not passed off as exports. | +| 5 | S2 discoverability | **Re-run.** `deno.json:85` `docs:exports-drift` (`--no-lock --allow-read --allow-run=deno`, narrower than base's `--allow-all` child argv); `check-accuracy-and-discoverability.ts:292-300` spawns the named task once, fail-closed; `pages.yml:143-145` one root step (Pages does not run `docs:accuracy`, so no double execution); `ci.yml:366` reaches it only via `docs-accuracy` gate. PR body §"enforcement" says plainly the enforcement chain pre-existed and the leaf adds discoverability. `docs:accuracy` PASS exit 0 in place. | +| 6 | JSR / pins / publish delta | **Carried** from cycle 1 (Contracts/Fresh UI package files unchanged since; `git diff --quiet` on both `deno.json` clean). `publish-dry-run` re-cut PASS at `423867017`. | +| 7 | Baseline reds | **Spot-checked.** `audit/doc-lint-contracts.json` totalErrors 9 (all private-type-ref); `audit/doc-lint-fresh-ui.json` 123 (96+27); `s3-evidence.md:47` carries both as **RED, raw exit 1**; oRPC INFO / `F-DOCT-4` WARN retained (`:46`, `:22`). Not in any PASS receipt, attributed to baseline; the delta since cycle 1 touches none of those files. | +| 8 | Scope and lock | **Re-run.** `git diff --name-only baf1cdf67 010da98a2` minus `.llm/runs` = **10** paths (same ten as cycle 1); `docs/exports` absent; `deno.lock`, `contract-primitives.ts`, `src/public/mod.ts`, both package `deno.json` byte-identical to base (`git diff --quiet` exit 0). | +| 9 | Receipt sufficiency | **Re-run.** See "Receipts and the preserved red" above; seven gate ids present, `test` satisfied by `test-attempt2`, all bound to `423867017`, `evidence-set-fix1.json` SUFFICIENT with named receipt ids. | +| 10 | `fresh-browser` NOT_RUN | **Re-run.** `grep` across slice artifacts and PR body: only `NOT_RUN` / N/A / waived (SA-1); never restated as pass; no lease. | + +## Process notes (non-blocking, unchanged from cycle 1) + +- Design checkpoint is carried by the locked D1–D11 table in `plan.md` + PLAN-EVAL cycle-2 PASS + `45c249b9c`; the worklog now names that pointer explicitly. +- Close-gate before `ready-merge` is coordinator-owned: five #1296 boxes, `acceptance-evidence` + block, PR DoD last box. + +## Executed command log (abridged) + +- binding: `git rev-parse HEAD`; `git ls-remote origin refs/heads/fix/reference-export-drift-gate`; + `gh pr view 1666 --json headRefOid,baseRefOid,isDraft,state`; `git merge-base HEAD origin/main` +- `git diff 47ca22abe 423867017 -- .llm/tools/docs/check-exports-drift.ts | wc -l` → 0 +- `git archive 423867017 | tar -x -C $CLAUDE_JOB_DIR/tmp/mut`; four `sed` mutants + + `deno test + --no-lock --allow-all --filter ` each → + `FAILED | 0 passed | 1 failed | 5 filtered out`; restored → 6 passed; `rm -rf` mutant dir +- in place: `deno test --allow-all .llm/tools/docs/check-exports-drift_test.ts` → 6/0; + `deno test --allow-all .llm/tools/agentic/teardown/forbidden-commands_test.ts` → 1/0; + `deno check --unstable-kv` checker+test → OK +- `deno task docs:exports-drift` → 8 coverage lines, PASS, exit 0; `deno task docs:accuracy` → PASS, + exit 0 +- `packages/contracts`: `deno doc --no-lock --filter ` ×11 OK at claimed entry, ×6 MISS + on root +- `packages/fresh-ui`: `deno doc --no-lock --json ` ×6 → 168 unique; page-cell diff → 7 + Dropzone-only +- receipts: `jq` over `receipts/fix1/*.json` (ids, outcome, exit, gitHead/actualGitHead) +- forbidden-surface `git diff --quiet` → clean; `docs/exports` absent; 10 product paths diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/impl-eval-cycle-3.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/impl-eval-cycle-3.md new file mode 100644 index 0000000000..7d9427cae2 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/impl-eval-cycle-3.md @@ -0,0 +1,195 @@ +# IMPL-EVAL cycle 3 (fresh delta) — reference-export-drift-gate (PR #1666) + +## Verdict + +**PASS** + +This is the fresh delta evaluation of the SA-3/SA-4 generated publication cascade that invalidated +the earlier PASS at `ee67d12b4` (preserved verbatim, append-only, as `impl-eval-cycle-2.md`; cycle 1 +remains `impl-eval-cycle-1.md`). Every item in the brief was re-derived in this session, not re-read +from the author's or supervisor's evidence. No finding. The one item the supervisor declared as +carried rather than re-derived — generator idempotence — I ran end to end, including the full Lume +docs-site build, twice at the content head and once from the pre-content head, on scratch worktrees +outside `.llm/tmp/`. + +## Binding + +| Field | Value | +| --------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Evaluator | Claude Fable 5, fresh separate session; opposite-family to Codex GPT-5.6 Sol author thread `01a005d2-7c9d-7dd1-b6fc-531b72dc14e4` | +| Session | `claude.ai/code/session_01UDGunAVYYPRC6KBNxEwZWA` (bg job `f281b8cf`, Remote Control) | +| Immutable content head | `46528ae4c71b3744f0af64bd749d01d831f70c89` — the code judged | +| Recovery evidence head | `b67414f4f26d53f00fc50adf3a5787d3bffae077` — `receipts/sa4/`, `audit/sa4/`, `sa4-evidence.md`, worklog | +| Base | `baf1cdf67a4e931af17b4772ddf6101f36152184` | +| Prior heads | `ee67d12b4` (cycle-2 PASS, untouched), `f98cfabac` (SA-3 plan), `440fa65ca` (cascade evidence) | +| Local / remote / PR head | `git rev-parse HEAD`, `git fetch` + `origin/fix/reference-export-drift-gate`, `gh pr view 1666 --json headRefOid` all `b67414f4f`; PR OPEN, draft, `status:impl` | +| Receipt binding | all 13 `receipts/sa4/*.json`: `gitHead == actualGitHead == 46528ae4c` — carried by the evidence commit, verified as the intended content-head binding, not a mismatch | +| Product content b674 = 4652 | `git diff --name-status 46528ae4c b67414f4f` lists only `.llm/runs/.../reference-export-drift-gate/*` (24 run-artifact paths); zero product paths | + +Reproductions ran in `git worktree add --detach` copies under `$CLAUDE_JOB_DIR/tmp/` (`wt-content` @ +`46528ae4c`, `wt-pre` @ `f98cfabac`, `wt-base` @ `baf1cdf67`), all removed at exit. No archive or +tarball was created under `.llm/tmp/`. No Aspire / Docker / browser / `e2e:cli` / scaffold smoke / +close-gate / publish ran. Nothing outside this file (plus the rename of the prior file) was written. + +## Findings against the ten brief items + +### 1. Four-output cascade — re-derived, exact + +At `wt-pre` (`f98cfabac`: Fresh UI page changed, generated outputs not yet regenerated) I ran the +three canonical generators in order and read `git status` after each: + +| Step | Raw exit | Tracked paths modified after step | +| ---------------------- | -------: | -------------------------------------------------------------------------------- | +| `gen:agent-docs-prose` | 0 | `.llm/assets/agent-docs/prose.json.gz`, `.llm/assets/agent-docs/provenance.json` | +| `gen:publish-assets` | 0 | + `packages/mcp/src/publish-assets.generated.ts` | +| `gen:assets-barrel` | 0 | + `packages/cli/src/kernel/assets/agent-docs.generated.ts` | + +Nothing else moved (no untracked, no other tracked path; the `PUBLISH_ASSET_OUTPUTS` manifest's +other outputs, `packages/fresh-ui/registry.generated.ts`, `embedded.generated.ts`, etc., stayed +byte-identical). Compared to the committed content head: `prose.json.gz` **byte-identical**, +`publish-assets.generated.ts` **byte-identical** (`sourceCommit: 'f98cfabac'` reproduced because +that was HEAD there); `provenance.json` and `agent-docs.generated.ts` differ **only** in +`extractionTimestamp` (wall clock of my run) — expected and content-neutral. No fifth affected +output; no included-but-unaffected file. `gen:mcp-export-corpus` was not run and its output +`export-surface-corpus.generated.ts` did not move. + +### 2. Idempotence — re-derived, holds (the declared gap is closed here) + +At `wt-content` (`46528ae4c`, clean, `git status --short | wc -l` = 0): + +- Run 1: `gen:agent-docs-prose` (full `deno task --cwd docs/site build` + bundle) → 0, + `gen:publish-assets` → 0, `gen:assets-barrel` → 0; `git status --short` **empty**. +- Run 2: same three, all raw 0; `git status --short` **empty**. +- Then `check:agent-docs-prose` → 0, `check:assets-barrel` → 0, `check:publish-assets` → 0; + `check:mcp-export-corpus` → **1**; status still empty. + +Mechanism confirmed in `.llm/tools/docs/build-agent-docs-bundle.ts` `writeCorpus`: when the +canonical uncompressed corpus equals the existing gzip's payload the existing compressed bytes and +the prior `sourceCommit`/`extractionTimestamp` are retained, so a rebuild at any later commit is a +no-op unless prose content changes. That is why `sourceCommit` stays `f98cfabac` at `46528ae4c` and +why the tree is stable. Cost was not prohibitive (~2–3 min per generator pass); it was run, not +inferred. + +### 3. Both root-test receipts — verified + +| Receipt | invocationId | gitHead | exit | passed/failed/ignored | total | file SHA-256 (prefix) | +| ------------------------ | ------------------------------------ | ----------- | ---: | --------------------- | ----: | --------------------- | +| `receipts/sa4/test.json` | `reference-export-sa4-test` | `46528ae4c` | 1 | 4202 / 1 / 19 | 4222 | `2715babef54414d6…` | +| `test-attempt2.json` | `reference-export-sa4-test-attempt2` | `46528ae4c` | 0 | 4203 / 0 / 19 | 4222 | `855a1509c099c9e4…` | + +Read from each receipt's `stdout.tail` summary block; distinct `invocationId`, `lifecycleId`, +`runnerIdentity`. The red is retained in the tree at `b67414f4f`, and its full SHA-256 matches the +value stated in `sa4-evidence.md`. The single failure in `test.json` is the sole test in +`.llm/tools/agentic/teardown/forbidden-commands_test.ts` (bulk-teardown scan), finding exactly one +path, `.llm/tmp/claude/hooks/unscoped/events.jsonl`. That is the only delta between the two runs +(4202+1 → 4203+0, ignored unchanged). + +### 4. Quarantine attribution — honest; scanner unweakened; event unedited; recoverable + +- **Scanner unweakened:** `git diff baf1cdf67 b67414f4f -- .llm/tools/agentic/teardown/` is empty; + the test still walks the whole repo skipping only `.git`, `node_modules`, `_fresh`, `.netscript`, + `runs` and `.llm/runs/`. `.llm/tmp/` is _inside_ its scan root and is `.gitignore`d (line 17), + which is exactly how an untracked hook transcript can fail the suite. +- **Mechanism verified first-hand:** the repo's own `.claude/settings.json` PreToolUse/PostToolUse + hooks run `.llm/tools/agentic/claude/claude-hook-log.ts`, which appends every tool input to + `.llm/tmp/claude/hooks//events.jsonl` (unchanged since `b13ca0fa9`, + no diff base→head). During this evaluation the hook recreated that file for **my** session and + captured my own probe commands, which quoted the token — I quarantined that file to + `$CLAUDE_JOB_DIR/quarantine/` at exit for the same reason. The attribution is therefore not a + story; it is the default behaviour of the checked-in hook and would recur for any Claude session + in this checkout that mentions the token. +- **Event unedited / attribution correct:** destination + `/home/codex/.claude/jobs/f7691917/quarantine/sa4-hooks-unscoped/events.jsonl` exists, 262,354 + bytes, 180 lines, mtime `2026-08-15 21:12:52 +0200`, SHA-256 + `d0251bc2f8c78814724cb2e6c2460102260a39aadb3a21551b81244efbaceab2` (matches the recorded pre-move + value). Line 177 parses as `ts: 2026-08-15T19:11:51.339Z`, `sessionId: null`, `tool_name: Bash`; + the token sits in `event.tool_input.command` inside supervisor prose describing the earlier + `receipts/fix1/test.json` contamination (`.llm/tmp/refusal-mutant`). Exactly one line in the file + contains the token. The source subtree was absent before my session recreated it. +- **Not laundering:** the forbidden-commands test passes in `wt-content` with the full docs `_site` + build present (`ok | 1 passed`), and `test-attempt2` passed with the same product bytes, so no + product path carried the token. The environmental fix removed a supervisor transcript, not a + product failure. + +### 5. Scope discipline — 14 of 17, no eighteenth, lock identical + +`git diff --name-status baf1cdf67 46528ae4c` minus `.llm/runs/` = exactly 14 paths: `pages.yml`, the +four generated outputs, `check-accuracy-and-discoverability.ts`, `check-exports-drift.ts`, +`check-exports-drift_test.ts`, `deno.json`, `docs/site/reference/fresh-ui/index.md`, +`paginated-query.ts`, `transform-helpers.ts`, `schemas/filters.ts`, `schemas/pagination.ts`. All lie +inside the 17-path contract (9 frozen + SA-1 test + SA-2 ×3 + SA-3 ×4). The three do-not-touch +entries hold: `docs/exports` absent in tree and index; `contract-primitives.ts` and +`src/public/mod.ts` have empty diffs base→`b67414f4f`. `deno.lock` blob +`a1522e6ecc98dd4232312385b0cea4e52f5fa4b2` at base, content head and evidence head. +`46528ae4c.. +b67414f4f` adds run artifacts only. + +### 6. Receipt coherence and sufficiency — sufficient for this delta + +Thirteen receipts, all `gitHead == actualGitHead == 46528ae4c`, ids `reference-export-sa4-*`, exit 0 +except the preserved `test.json`. `audit/sa4/evidence-set.json` names twelve gate ids and selects +`test-attempt2` for `test`; recomputed by hand: every expected gate id has a bound receipt. For this +delta the load-bearing gates are the three freshness checks (`agent-docs-prose`, `assets-barrel`, +`publish-assets`), root `check`/`test`, `quality-job` (composite incl. lint / fmt / deps), +`docs-accuracy` (which spawns the export-drift checker), `publish-dry-run`, and the four JSR audits +in `audit/sa4/`. All present, all bound. I independently re-ran the three freshness checks, +`docs:exports-drift` (raw 0, eight package coverage lines, terminal PASS), the checker test (6/0), +and the forbidden-commands test (1/0) at the content head. Sufficient. + +### 7. CLI/MCP publication selection — verified, JSR table honest + +`packages/mcp/src/publish-assets.generated.ts` `MCP_EMBEDDED_DOCS_PROVENANCE.paths` is the bounded +12-document list (`llms.txt` + 11 pages); `pages/reference/fresh-ui/index.md` is **not** in it. The +content-head diff for that file is a single line (`sourceCommit` `504de3f67` → `f98cfabac`); +`sha256`/`sourceBytes`/`documentCount` unchanged. `agent-docs.generated.ts` changes the base64 +payload line and the six provenance fields (`sourceCommit`, `extractionTimestamp`, +`uncompressedBytes` 4,753,233→4,768,211, `compressedBytes` 1,363,117→1,367,454, `sha256` +`a7c72177…`→`78d5fed4…`). The `sa4-evidence.md` member table states both deltas as they are. + +### 8. Known reds stay red — confirmed pre-existing + +- `check:mcp-export-corpus`: raw **1** at `wt-base` (`baf1cdf67`) and raw **1** at `wt-content`; + "MCP export-surface corpus is stale". Not regenerated, not waived; + `export-surface-corpus. + generated.ts` unchanged base→head. +- `run-deno-doc-lint.ts --root packages/contracts`: exit 1, `{errors 9, privateTypeRef 9}` at base + **and** content head. `packages/fresh-ui`: exit 1, + `{errors 123, privateTypeRef 96, + missingJSDoc 27}` at base **and** content head. Baseline, + unchanged. + +### 9. Issue #1296 acceptance — `Closes #1296` is earned; boxes left unchecked + +- Box 1 (JSDoc imports compile): the four `@example` lines now import from `/query` and + `/transform`; a scratch probe importing all six symbols from those subpaths type-checked and ran + (`deno run`), printing the expected types. `contract-primitives.ts` was already correct at base. +- Box 2 (inventory advertises no non-exports): `docs:exports-drift` reports `contracts` in + `mode=complete`, 0 omitted / 0 documented-non-export groups, PASS. +- Box 3 (Fresh UI matches published exports): `fresh-ui` in `mode=complete` over six entrypoints, 0 + omitted-symbol groups, 1 explicitly labelled documented-non-export group (Dropzone copy-source), + PASS. +- Box 4 (machine-readable omissions): reason-bearing coverage discriminant with fail-closed refusal + tests (cycle-1/2 mutation evidence stands; test file unchanged since `423867017`). +- Box 5 (runbook + wired verification): named `docs:exports-drift` task, Pages step, runbook on the + Fresh UI page, and `docs:accuracy` still spawns the checker fail-closed. + +Boxes remain unchecked and coordinator-owned; I did not touch them. PR body carries `Closes #1296` +as its own line. + +### 10. `NOT_RUN` boundaries — reported as such + +`fresh-browser` N/A/waived, `NOT_RUN`, no runtime lease; close-gate `NOT_RUN`, deliberately not +rerun by me. Neither is restated as a pass anywhere in `sa4-evidence.md`, the PR comments, or here. +Note for the coordinator: GitHub CI is `skipped` at `46528ae4c`/`440fa65ca`/`b67414f4f` because the +PR is draft; the freshness gates CI failed at `ee67d12b4` were satisfied here by local receipts plus +my independent reruns, and CI will re-exercise them on the ready flip. + +## Evaluator commit and exit hygiene + +- Only `impl-eval.md` written; prior canonical file renamed to `impl-eval-cycle-2.md` (content + byte-identical, `git mv`). Committed on a detached evaluator worktree at `b67414f4f` and pushed by + explicit refspec `HEAD:refs/heads/fix/reference-export-drift-gate`. +- Scratch worktrees `wt-content`, `wt-pre`, `wt-base` and probe files removed; my session's + `.llm/tmp/claude/hooks/unscoped/events.jsonl` moved to + `/home/codex/.claude/jobs/f281b8cf/quarantine/hooks-unscoped/` so the forbidden-commands scan + stays green for the next runner; `git status --short` empty in the shared checkout at exit. diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/impl-eval-cycle-4.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/impl-eval-cycle-4.md new file mode 100644 index 0000000000..8c1914be6d --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/impl-eval-cycle-4.md @@ -0,0 +1,195 @@ +# IMPL-EVAL cycle 4 (post-integration delta) — reference-export-drift-gate (PR #1666) + +## Verdict + +**PASS** + +This is the post-integration delta evaluation of the union merge `8c03d8629` that resolved the +`CONFLICTING` state created when #1665 advanced the same generator cascade on main. The prior +canonical verdict (cycle 3, PASS at content head `46528ae4c`, evidence head `b67414f4f`, committed +at `0d4c82d6e`) is preserved verbatim as `impl-eval-cycle-3.md`; cycles 1 and 2 are untouched. Every +item below was re-derived in this session on scratch worktrees under `$CLAUDE_JOB_DIR/tmp/`, not +re-read from `base-refresh-evidence.md`. No blocking finding; one non-blocking observation (§6). + +## Binding + +| Field | Value | +| ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Evaluator | Claude Fable 5, fresh separate session; opposite-family to Codex GPT-5.6 Sol author thread `01a005d2-7c9d-7dd1-b6fc-531b72dc14e4` | +| Session | `claude.ai/code/session_01RQ7Eb4N4NaQEuAA6zPtpxV` (bg job `be3774eb`, Remote Control) | +| Immutable content head | `8c03d862931b64573df9a4bac76ebf266e0ec175` — true merge commit, `^1 = 0d4c82d6e`, `^2 = 0ef48c2ec` (main) | +| Recovery evidence head | `021c7ffc62cea5b0f6728ddb8ee377393a647f44` — `receipts/base-refresh/`, `audit/base-refresh/`, `base-refresh-evidence.md`, worklog | +| Original base / new base | `baf1cdf67` (= `git merge-base 0d4c82d6e 0ef48c2ec`) / `0ef48c2ec` (PR `baseRefOid`) | +| Prior heads | `ee67d12b4`, `f98cfabac`, `440fa65ca`, `46528ae4c`, `b67414f4f`, `0d4c82d6e` — all `git merge-base --is-ancestor` of `021c7ffc6`; no rebase/squash | +| Local / remote / PR head | `git rev-parse HEAD`, `git fetch` + `origin/fix/reference-export-drift-gate`, `gh pr view 1666 --json headRefOid` all `021c7ffc6`; PR OPEN, draft, `status:impl`, `mergeStateStatus CLEAN` | +| Receipt binding | all 12 `receipts/base-refresh/*.json`: `gitHead == actualGitHead == 8c03d8629`, ids `reference-export-base-refresh-*` — the intended content-head binding carried by the evidence commit, not a mismatch | +| Product content E = C | `git diff --name-only 8c03d8629 021c7ffc6` = 16 paths, all under `.llm/runs/.../reference-export-drift-gate/`; zero product paths | + +Scratch worktrees: `wt-content` @ `8c03d8629`, `wt-main` @ `0ef48c2ec`, `wt-eval` @ `021c7ffc6` +(this commit), all `git worktree add --detach` under `$CLAUDE_JOB_DIR/tmp/`, removed at exit. Corpus +decompressions went to `$CLAUDE_JOB_DIR/tmp/corpus/`. Nothing was created under `.llm/tmp/` except +the checked-in Claude hook's own `.llm/tmp/claude/hooks/unscoped/events.jsonl` for this session, +quarantined at exit (see hygiene). No Aspire / Docker / browser / `e2e:cli` / scaffold smoke / +close-gate / publish / label / issue / draft-state action. + +## Integration-specific findings + +### Union, not side-selection — re-derived, exact + +`git merge-tree --write-tree --name-only 0d4c82d6e 0ef48c2ec` → exit 1, exactly four conflict paths: +`.llm/assets/agent-docs/prose.json.gz`, `.llm/assets/agent-docs/provenance.json`, +`packages/cli/src/kernel/assets/agent-docs.generated.ts`, +`packages/mcp/src/publish-assets.generated.ts`. Zero source conflicts (`docs/site` diverged on +disjoint pages: main touched `services-sdk/sdk.md`, `tutorials/live-dashboard/03-…`, +`web-layer/query-bridge.md`; the leaf touched `reference/fresh-ui/index.md`). + +I decompressed the four corpus versions (base `baf1cdf67`, main `0ef48c2ec`, leaf `0d4c82d6e`, +merged `8c03d8629`; 181 members each) and computed the ideal three-way union member-by-member: + +- Members changed by main only vs base: `pages/services-sdk/sdk/index.md`, + `pages/tutorials/live-dashboard/03-sdk-cache-first-query/index.md`, + `pages/web-layer/query-bridge/index.md` — merged corpus carries **main's** bytes for all three. +- Member changed by leaf only: `pages/reference/fresh-ui/index.md` — merged carries the **leaf's** + bytes. +- Member changed by both: `llms-full.txt` only. `git merge-file -p leaf base main` on the three + line-split versions exits 0 (no conflict) and its output is **line-identical** to the merged + member (40,616 lines; main +23/−16, leaf +87/−28 vs base; every added line of both sides present; + zero lines in the merged member that are in neither side; no main-removed line survives). +- No member added or removed relative to base ∪ main ∪ leaf; the two non-`pages/` preserved members + (`context/01-…mdx`, `context/02-…mdx`) are byte-identical across all four versions, so the + `buildAgentDocsProseFromSite` carry-forward of the binary-conflict "ours" gzip lost nothing. + +The union corpus therefore contains both #1665's query-bridge guidance +(`module instances are +loaded`) and this leaf's Fresh UI rule (`reason-bearing omission group`), and +nothing else. Canonical decompressed SHA-256 `c1d095a62e…74b3` equals `provenance.json` `sha256`; +checked-in gzip SHA-256 `46703a024d…c52f7c`. + +### History preservation — verified + +`46528ae4c`, `b67414f4f`, `0d4c82d6e`, `ee67d12b4`, `f98cfabac`, `440fa65ca`, `0ef48c2ec` are all +ancestors of `021c7ffc6`; `8c03d8629` has both parents. +`git diff --stat 0d4c82d6e 021c7ffc6 -- +receipts/sa4 receipts/s3 receipts/fix1 audit/sa4 impl-eval*.md plan-eval*.md` +is empty: prior receipts (including the preserved red `sa4/test.json`, SHA-256 `2715babef5…62f7`, +exit 1, 4202/1/19 = 4222), audits and verdicts are unamended. `0d4c82d6e..021c7ffc6` in the run dir +adds only `receipts/base-refresh/*` (12), `audit/base-refresh/*` (2), `base-refresh-evidence.md`, +and a worklog append. + +### Provenance stamp subtlety — benign, and re-derived rather than assumed + +`provenance.json` at `8c03d8629` carries `sourceCommit 0d4c82d6e`, +`extractionTimestamp +2026-08-15T20:40:35.830Z` (fresh, i.e. **not** retained from the leaf's +`19:47:49` stamp — the corpus genuinely changed during resolution, so retention did not fire then). +Retention can only hide staleness if `existingEquivalentTransport` +(`build-agent-docs-bundle.ts:134`) is weaker than content equality; it is not — it gunzips the +existing file and requires `bytesEqual(payload, encoded)`. My own regeneration at `8c03d8629` +(below) reproduced the identical gzip and left `provenance.json` unchanged, which under that +predicate proves the committed corpus **is** the canonical corpus of the merged site. No stale +corpus is hiding behind the stamp. + +## Findings against the ten brief items + +### 1. Four-output cascade — exact + +`comm -23 <(diff-paths 0d4c82d6e..8c03d8629) <(diff-paths baf1cdf67..0ef48c2ec)` is empty: the merge +introduced no path outside main's own change set; the only paths that are neither pure main-side +content nor pure leaf content are the four generated outputs above. Leaf source paths are +byte-identical between `0d4c82d6e` and `8c03d8629` (empty `--stat` over the ten non-generated leaf +paths). `packages/mcp/src/export-surface-corpus.generated.ts` unchanged base→main→head. No fifth +output; no included-but-unaffected file. + +### 2. Idempotence — re-derived at the content head, holds + +At `wt-content` (`8c03d8629`, clean): run 1 `gen:agent-docs-prose` (full Lume build) → 0, +`gen:publish-assets` → 0, `gen:assets-barrel` → 0, `git status --short` empty after **each** step; +run 2 identical, empty after each step. Then `check:agent-docs-prose` 0, `check:assets-barrel` 0, +`check:publish-assets` 0, `check:mcp-export-corpus` **1**; tree still clean; gzip SHA-256 still +`46703a024d…c52f7c`; `provenance.json` unchanged. Cost was ~2–3 min per cascade pass; it was run, +not carried. + +### 3. Both root-test receipts — verified + +`receipts/sa4/test.json`: `reference-export-sa4-test`, `gitHead 46528ae4c`, exit 1, summary +`4202/1/19`, total 4222, single failure `forbidden-commands_test.ts` on +`.llm/tmp/claude/hooks/unscoped/events.jsonl`. `test-attempt2.json`: +`reference-export-sa4-test-attempt2`, same head, exit 0, `4203/0/19`, total 4222. Both retained +byte-unchanged since `0d4c82d6e`. New `receipts/base-refresh/test.json` at `8c03d8629`: exit 0, +`4211/0/19`, total 4230 (main added tests) — the head-bound authority for this delta. + +### 4. Quarantine attribution — honest; scanner unweakened; event unedited; recoverable + +`/home/codex/.claude/jobs/f7691917/quarantine/sa4-hooks-unscoped/events.jsonl`: 262,354 bytes, 180 +lines, mtime `Aug 15 21:12`, SHA-256 `d0251bc2f8…eab2` (matches recorded pre-move value). Line 177: +`ts 2026-08-15T19:11:51.339Z`, `sessionId null`, `tool_name Bash`; the token appears once in the +whole file, inside supervisor prose that itself describes the earlier `receipts/fix1/test.json` +contamination. `.llm/tools/agentic/teardown/`, `.claude/settings.json` and `claude-hook-log.ts` have +empty diffs base→`8c03d8629`; the forbidden-commands test passes at the head worktree (`1 passed`). +The same hook recreated `.llm/tmp/claude/hooks/unscoped/events.jsonl` for **this** session at 22:31 +— the mechanism is the checked-in default, not a story. Not laundering. + +### 5. Scope discipline — 14 of 17, no eighteenth, lock identical + +`git diff --name-only 0ef48c2ec 8c03d8629` minus `.llm/runs/` = exactly 14 paths (`pages.yml`, four +generated outputs, `check-accuracy-and-discoverability.ts`, `check-exports-drift.ts`, +`check-exports-drift_test.ts`, `deno.json`, `docs/site/reference/fresh-ui/index.md`, four +`packages/contracts` files) — all inside the seventeen-path contract. `docs/exports` absent from the +`8c03d8629` tree; `contract-primitives.ts` and `src/public/mod.ts` empty diffs main→head. +`deno.lock` blob `a1522e6ecc98dd4232312385b0cea4e52f5fa4b2` at `baf1cdf67`, `0ef48c2ec`, +`0d4c82d6e`, `8c03d8629`, `021c7ffc6`. + +### 6. Receipt coherence and sufficiency — sufficient; one observation + +Twelve receipts, all bound, all exit 0/PASS, `audit/base-refresh/evidence-set.json` expects exactly +those twelve gate ids and recomputes `SUFFICIENT` (`reasons: []`). For an integration delta the +load-bearing set is the three freshness checks, root `check`/`test`, `quality-job`, `arch-check`, +`docs-accuracy` (spawns the drift checker fail-closed), `publish-dry-run` — all present at the exact +head; I re-ran the three freshness checks, `docs:exports-drift` (raw 0, 8 coverage lines, terminal +PASS), the checker test (6/0) and the forbidden-commands test (1/0) at `8c03d8629`. **Observation +(non-blocking):** the four JSR audits in `audit/sa4/` were not recut at `8c03d8629`; that is +acceptable because no package `deno.json`/export map changed `0d4c82d6e→8c03d8629`, only the two +regenerated embedded assets moved, and `publish-dry-run` PASS is head-bound. + +### 7. CLI/MCP publication selection — verified, JSR table honest + +`MCP_EMBEDDED_DOCS_PROVENANCE.paths` at head is `llms.txt` + 11 pages; `pages/reference/fresh-ui/` +is not among them (`03-sdk-cache-first-query` **is**, but main already carried its new bytes). The +main→head diff of `publish-assets.generated.ts` is the single line +`sourceCommit ef3e43f06 → +0d4c82d6e`. `agent-docs.generated.ts` changes the base64 payload plus +`sourceCommit`, `extractionTimestamp`, `uncompressedBytes 4,755,371→4,770,349`, +`compressedBytes +1,364,040→1,368,351`, `sha256 c8491e53…→c1d095a6…`. `base-refresh-evidence.md` +states both as they are. + +### 8. Known reds stay red — pre-existing at the new base + +`check:mcp-export-corpus`: raw 1 at `wt-main` (`0ef48c2ec`) and raw 1 at `wt-content`; not +regenerated, not waived. Doc-lint `packages/contracts` `{errors 9, privateTypeRef 9}` and +`packages/fresh-ui` `{errors 123, privateTypeRef 96, missingJSDoc 27}` — identical at main and head. + +### 9. Issue #1296 — `Closes #1296` earned; boxes left unchecked + +Leaf source is byte-identical to the cycle-3-judged content (item 1), so the cycle-3 box-by-box +derivation stands unchanged; the head-side re-runs of `docs:exports-drift` (contracts and fresh-ui +`mode=complete`, PASS) and the checker test confirm boxes 2–5 at the integrated head. Issue open, +five boxes unchecked, coordinator-owned, untouched. PR body carries `Closes #1296` on its own line. + +### 10. `NOT_RUN` boundaries — reported as such + +`fresh-browser` N/A/waived and close-gate `NOT_RUN` in `base-refresh-evidence.md`, the worklog and +the last IMPL comment; neither restated as a pass. CI at `021c7ffc6`: draft, so `close-gate`, +`quality`, `check-test` are `skipped`; only `build` and `classify docs-site changes` ran (success). +Not rerun by me. + +## Evaluator commit and exit hygiene + +- Only this file written; prior canonical file preserved as `impl-eval-cycle-3.md` via `git mv` + (byte-identical). Committed on detached `wt-eval` at `021c7ffc6`, pushed by explicit refspec + `HEAD:refs/heads/fix/reference-export-drift-gate`; shared checkout fast-forwarded (`--ff-only`) to + the pushed head. +- `wt-content`, `wt-main`, `wt-eval` and `$CLAUDE_JOB_DIR/tmp/corpus` removed; this session's + `.llm/tmp/claude/hooks/unscoped/events.jsonl` moved to + `/home/codex/.claude/jobs/be3774eb/quarantine/hooks-unscoped/`; `git status --short` empty in the + shared checkout at exit. diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/impl-eval.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/impl-eval.md new file mode 100644 index 0000000000..baaac0a3ad --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/impl-eval.md @@ -0,0 +1,149 @@ +# IMPL-EVAL cycle 5 (changed-source quality repair delta) — reference-export-drift-gate (PR #1666) + +## Verdict + +**PASS** + +Cycle 5 judges the focused repair `e357938df` that answered the two leaf-owned findings raised by +the ready-triggered **Code quality** run `31908898023` (head `05ac90d00`, `failure`): `explicit-any` +at former line 356 and `unsafe-cast` at former line 372 of `.llm/tools/docs/check-exports-drift.ts`. +It also confirms the integration contract accepted by cycle 4 is undisturbed. The prior canonical +verdict (cycle 4, PASS at content head `8c03d8629`, evidence `021c7ffc6`, committed `05ac90d00`) is +preserved verbatim as `impl-eval-cycle-4.md`; cycles 1–3 and both `plan-eval*` are untouched. Every +item below was re-derived in this session on scratch `git archive` copies under +`$CLAUDE_JOB_DIR/tmp/` (never `.llm/tmp/`), not re-read from `ci-quality-repair-evidence.md`. No +blocking finding; one non-blocking observation (§5, lint exclusion — pre-existing repo config). + +## Binding + +| Field | Value | +| ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Evaluator | Claude Fable 5, fresh separate session; opposite-family to Codex GPT-5.6 Sol author thread `01a005d2-7c9d-7dd1-b6fc-531b72dc14e4` | +| Session | `claude.ai/code/session_016v2se871QD9Q9Rd6YADAKC` (bg job `dc433b8d`, Remote Control) | +| Immutable repaired head | `e357938df82b2a87ccc69ac3217c165c16572930` — `fix(docs): type exports drift map parsing` | +| Prior accepted heads | integration content `8c03d8629`, evidence `021c7ffc6`, cycle-4 verdict `05ac90d00`; base `baf1cdf67`; main `0ef48c2ec` — all ancestors of `e357938df` (linear, no rebase/squash) | +| Local / remote / PR head | `git rev-parse HEAD`, `git fetch origin` + `origin/fix/reference-export-drift-gate`, `gh pr view 1666 --json headRefOid` all `e357938df`; PR OPEN, draft, `status:impl` | +| Repair delta | `git show --stat e357938df`: 6 files — checker (+34/−11), checker test (+54/−1), `ci-quality-repair-evidence.md`, `context-pack.md`, `drift.md`, `worklog.md` (append-only) | +| CI at head | `Code quality`, `ci`, `e2e-cli`, `public-surface-diff` **skipped** (draft) at `e357938df`; Pages deploy success. My local `changed-files` scan below is the head-bound evidence. | + +Evaluator worktree: `.claude/worktrees/impl-eval-c5` (branch `eval/impl-eval-c5-1666` at +`e357938df`); scratch archives `$CLAUDE_JOB_DIR/tmp/{prefix,head}` (`git archive 05ac90d00` / +`e357938df` of `.llm/tools/quality`, `.llm/tools/docs`, `deno.json`, `deno.lock`). No Aspire / +Docker / browser / `e2e:cli` / scaffold smoke / close-gate / publish / label / issue / draft-state +action; #1663 and #1651 untouched; no second evaluator launched. + +## Findings against the eight brief items + +### 1. Both findings eliminated by real typing — confirmed, no cheating + +- `grep -n -E '\bany\b|as unknown|@ts-|deno-lint-ignore|quality-allow'` over + `check-exports-drift.ts` and `check-exports-drift_test.ts` at head: **zero matches**. +- Repair shape (diff `05ac90d00..e357938df`): `exportsObj: any` → `exportsObj: unknown`; + `(value as any).default || ''` → `resolveDenoExportPath(value)` behind `isExportsRecord` / + `isDenoExportTarget` type guards and the new `DenoConditionalExportTarget` / `DenoExportTarget` / + `DenoExports` vocabulary. No cast, no ignore, no allowance. +- Scanner and its config byte-unchanged base→head: + `git diff --stat baf1cdf67 e357938df -- + .llm/tools/quality/ .github/workflows/code-quality.yml` + is **empty**; the only `deno.json` delta base→head is the one-line `docs:exports-drift` task + (already-accepted S2 content); `quality:scan` `--max-allow 7` unchanged. +- Pre-fix reproduction on the `05ac90d00` archive: + `scan-code-quality.ts --changed-file + --changed-file ` → `ok:false`, + exactly two findings, `explicit-any` line 356 `exportsObj: any,` and `unsafe-cast` line 372 + `(value as any).default || ''`, `allowCount 0`, raw exit **1**. The findings were real and are the + ones CI attributed. + +### 2. Unknown top-level fails closed — confirmed + +Direct probe of head `deriveExpectedExports('@x/p', v)` (scratch `probe.ts` importing the archived +head checker): `42`, `null`, `undefined`, `[]`, `['./a.ts']`, `true` **all throw** +`TypeError: Deno exports must be a string or a record`; `'x'` → `[['@x/p','x']]`. No permissive +empty-map fallback exists on any non-string/non-record path (arrays are excluded by +`isExportsRecord`). + +### 3. Behaviour deliberate; tests discriminate — mutation-tested, 6/6 killed + +Head focused suite: 12 passed / 0 failed (structured wrapper, raw exit 0). Six mutants applied one +at a time to the archived head checker, suite re-run each time, checker byte-restored (`cmp` OK) +after each: + +| Mutant | Change | Result | Failing test (only) | +| ------ | ----------------------------------------------------------------------------------------- | ------------ | ----------------------------------------------------------------- | +| M1 | string form no longer sets root | 11/1, exit 1 | `derives a root export from the string exports form` | +| M2 | conditional object resolves to `''` | 11/1, exit 1 | `derives record exports from string and default targets` | +| M3 | missing `default` → `'MISSING'` (`?? 'MISSING'`) | 11/1, exit 1 | `uses an empty path when a conditional export has no default` | +| M4 | guard loosened + falsy default stringified (`false` → `'false'`) | 11/1, exit 1 | `preserves the empty fallback for a falsy default` | +| M5 | `null` target throws | 11/1, exit 1 | `uses an empty path for a null export target instead of throwing` | +| M6 | top-level guard returns empty map instead of throwing (the permissive fallback of item 2) | 11/1, exit 1 | `refuses a malformed top-level exports value` | + +Each behaviour has exactly one correspondingly named test that fails on its own regression; the four +pre-existing policy-refusal tests were unaffected by every mutant. The `null`-target change (throw → +`''`) is documented as the single intentional pathological-input change in +`ci-quality-repair-evidence.md` §Behavior 3, the drift log, and the IMPL comment; the `|| ''` falsy +fallback is preserved (with the guard, `''`/`false`/`0` all map to `''`). + +### 4. Changed-files quality selection non-empty and green — confirmed at head + +`changed-source-files.ts 0ef48c2ec e357938df` → nine paths (three `.llm/tools/docs/*`, two generated +assets, four `packages/contracts/*`). `scan-code-quality.ts --pretty` with those nine as +`--changed-file`: **`mode: "changed-files"`**, `scanned` lists all nine (including +`check-exports-drift.ts` and `_test.ts`), `findings: []`, `allowCount 0`, raw exit **0**. Not a +repository-mode run; the repaired files were actually scanned. + +### 5. Focused checker / drift / check / test evidence — truthful, numbers match + +| Command (this session, worktree at `e357938df`) | Raw exit | Observed | Author claim | +| ------------------------------------------------------------------------------- | -------: | ------------------------------------------------------------------------------------------------------------------------- | ------------ | +| `run-deno-test.ts -- --allow-all .llm/tools/docs/check-exports-drift_test.ts` | 0 | 12 passed / 0 failed | 12/0 ✓ | +| `deno task docs:exports-drift` | 0 | 8 coverage lines; `fresh-ui`/`config`/`contracts`/`telemetry` `mode=complete`; fresh-ui 0/1, contracts 0/0; terminal PASS | ✓ | +| `deno check --unstable-kv` both edited files | 0 | clean | ✓ | +| `run-deno-fmt.ts --root .llm/tools/docs --ext ts --include check-exports-drift` | 0 | 2 selected, 0 findings | ✓ | +| `deno task check` (root wrapper, packages+plugins) | 0 | 2925 files, 25 batches, 0 failed | ✓ | +| `deno task test` (root wrapper) | 0 | **4217 passed / 0 failed / 19 ignored, 4236 total** (295.9 s) | 4217/0/19 ✓ | + +Non-blocking observation: `run-deno-lint.ts` over `.llm/tools/docs` exits 2 because raw `deno lint` +reports "No target files found" — `.llm/` is excluded from lint by repo `deno.json` (pre-existing, +base and head alike); the quality scanner (item 4) is the governing gate for this path and is green. + +### 6. Accepted integration contract preserved byte-for-byte — confirmed + +`git rev-parse` blob ids identical at `8c03d8629` and `e357938df`: `deno.lock` `a1522e6e…`, +`prose.json.gz` `f6c1e3b6…`, `provenance.json` `a894f884…`, `agent-docs.generated.ts` `1321a9e4…`, +`publish-assets.generated.ts` `03ec3c00…`; `git diff --stat` over the five paths empty. +`git diff --stat 8c03d8629 e357938df -- packages/ plugins/` **empty** — no publish-surface delta at +all. `grep -c check-exports-drift packages/cli/src/kernel/assets/agent-tools.generated.ts` = 0 — the +checker is not embedded, so the repair carries no publish delta. + +### 7. Prior history append-only — confirmed + +`git diff --stat 05ac90d00 e357938df` over `impl-eval.md`, `impl-eval-cycle-{1,2,3}.md`, +`plan-eval.md`, `plan-eval-cycle-1.md`, `receipts/` (s3, fix1, sa4, base-refresh), `audit/` is +**empty**. `receipts/sa4/test.json` still `outcome FAIL`, `exitCode 1`, summary `4202/1/19`, +`totalResults 4222`. The full run-dir delta since cycle 4 is four append-only files +(`ci-quality-repair-evidence.md` +70, `context-pack.md` +12, `drift.md` +12, `worklog.md` +17). + +### 8. #1296 acceptance holds; `Closes #1296` earned; boxes untouched + +No `packages/`/`docs/site` content changed since cycle 4 (item 6), so the cycle-3/4 row-by-row +derivation stands. Head-side spot checks: `pages.yml` carries the +`Check documentation exports +drift` step (`deno task docs:exports-drift`); the fresh-ui runbook +(`docs/site/reference/fresh-ui/ +index.md` §regeneration, steps 1–5) names the checker and task; +`contract-primitives.ts` JSDoc imports `baseContract` from the root, which `src/public/mod.ts:2` +re-exports; drift gate PASS with contracts and fresh-ui `mode=complete` and one reason-bearing +documented-non-export group. PR body carries `Closes #1296` on its own line. Issue #1296 open; its +five boxes are coordinator-owned and were not touched by me. + +## Evaluator commit and exit hygiene + +- Only this file written; prior canonical preserved as `impl-eval-cycle-4.md` via `git mv` + (byte-identical). Committed on `eval/impl-eval-c5-1666` at `e357938df`, pushed by explicit refspec + `HEAD:refs/heads/fix/reference-export-drift-gate`. +- Scratch archives `$CLAUDE_JOB_DIR/tmp/{prefix,head}`, `mutate.sh`, `probe.ts`, `rootgates.sh` and + logs live under the job tmp dir (auto-cleaned); nothing under `.llm/tmp/` except this session's + checked-in Claude hook log `.llm/tmp/claude/hooks/unscoped/events.jsonl` (gitignored; contains + none of the forbidden teardown phrases; forbidden-commands test passed inside the root run above), + quarantined to `/home/codex/.claude/jobs/dc433b8d/quarantine/` at exit. +- `git status --short` empty in the evaluator worktree at exit; worktree removed. diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/implement.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/implement.md new file mode 100644 index 0000000000..85ca486ff7 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/implement.md @@ -0,0 +1,113 @@ +use harness + +## SKILL + +Read `AGENTS.md`, then the `netscript-harness`, `netscript-tools`, `netscript-pr`, +`netscript-doctrine`, `netscript-deno-toolchain`, and `jsr-audit` skills. Then read issue **#1296** +in full. You are the implementation author for a new internals leaf. + +## Identity + +- Leaf: `reference-export-drift-gate`, wave 2, internals lane +- Worktree: `/home/codex/repos/netscript-007-reference-export` (already created, clean) +- Branch: `fix/reference-export-drift-gate`, based on `origin/main` `baf1cdf67` +- Run dir: `.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/` +- Closes exactly **#1296** +- Archetype `6-cli-tooling`, overlays `frontend` + `docs` + +## This pass: research and plan only. No implementation. + +Produce `research.md` and `plan.md`, commit, push, open the PR as **draft**, comment, then **stop**. +I run Tier-A on your exact pushed head. State explicitly in `plan.md` whether a fresh PLAN-EVAL is +required and why — that gate is the coordinator's to grant, not yours to assume. + +## Authorized file surface — exactly nine paths, from the frozen leaf contract + +``` +.github/workflows/ +.llm/tools/docs/check-accuracy-and-discoverability.ts +.llm/tools/docs/check-exports-drift.ts +deno.json +docs/exports +docs/site/reference/fresh-ui/index.md +packages/contracts/src/application/contract-primitives.ts +packages/contracts/src/application/paginated-query.ts +packages/contracts/src/public/mod.ts +``` + +Narrow this with per-path justification and name what you deliberately will **not** touch. A tenth +path is rescope: stop and ask me. Note `docs/exports` **does not exist** on baseline — see A2 below. + +## Ground truth I measured before briefing you — verify each, do not trust it + +**A1 — the drift gate is real, passing, and wired to nothing.** +`deno run --no-lock --allow-read --allow-env --allow-run .llm/tools/docs/check-exports-drift.ts` +returns **raw exit 0** and prints `Exports & Symbols drift check: PASS`. But +`grep -rn 'check-exports-drift\|exports-drift' deno.json .github/workflows/` returns **zero hits**. +The tool exists, works, and **guards nothing** — no task, no workflow, not in `docs:maintenance` +(which is `docs:links && docs:accuracy && docs:contract-derivation && agentic:sync-claude:check && +agentic:check-claude`). This is the live core of acceptance row 5, and it is the same +coverage-versus-compliance defect this lane keeps finding: a green that proves nothing because +nobody runs it. Re-derive this yourself; do not cite my measurement as your evidence. + +**A2 — a contracted surface does not exist.** `docs/exports` is in the frozen contract but is absent +on baseline `baf1cdf67`. Determine whether it is a path you are expected to *create* (a generated +export inventory) or a stale contract entry, and say which in `research.md`. Do not invent a +directory just to satisfy the contract, and do not silently drop it. + +**A3 — acceptance row 1 is already satisfied on baseline.** The coordinator's Step-0 synthesis +found: `baseContract`, `BaseContractRoute`, `BaseContractOutputRoute`, and +`OffsetPaginationQuerySchema` are all re-exported from the root (`src/public/mod.ts:2-6,65`) and the +JSDoc at `contract-primitives.ts:72,112,144` already imports correctly. **Four rows remain live.** +Verify this independently. If it holds, reconcile the issue row **honestly and visibly** — state in +the PR that it was already satisfied at baseline rather than ticking a box you did not earn. If your +measurement contradicts Step-0, say so with evidence; that is a finding, not a problem. + +**A4 — the #1112 / MySQL half is not yours.** #1296's body defers it to **#1293**, which is still +`OPEN` / `status:impl`. The frozen surface contains no `prisma-adapter-mysql` path, confirming the +split. Do not touch it and do not block on it. + +## The four live acceptance rows + +1. Contracts reference inventory advertises no non-exports. +2. Fresh UI reference surface repaired to match its published exports. +3. Intentional omissions expressed **machine-readably** rather than being silently incomplete. +4. Maintainer regeneration runbook documented **and** the drift check wired into the documentation + verification path. + +Row 3 is the design decision in this leaf — choose the machine-readable format deliberately and +justify it against how the existing checkers consume data. Row 4 is where A1 lands: pick the wiring +point (task graph, `docs:maintenance`, CI workflow, or a combination) and defend it. Wiring a gate +that then fails on baseline is a legitimate outcome — report it, do not tune the gate until it goes +quiet. + +## Proving gates from the contract + +`check`, `test`, `publish-dry-run`, `quality-job`, `arch-check`, `docs-source-format`, +`docs-accuracy` — plus **`fresh-browser`**, which **this lane may not execute**. Plan for +`fresh-browser`, classify it, and **ask, not take**: state in `plan.md` what it would prove and +whether it is genuinely required for this surface. Do not run Aspire, Docker, browsers, or +`e2e:cli`. `jsrAudit` is **applicable**: audit public exports and exact `@netscript` dependency pins +for every touched publishable member, and plan an isolated-declaration `publish:dry-run`. +`packages/contracts` is a **published** member — if you change its public surface or JSDoc that +ships, say so in the JSR table honestly. The #1663 leaf was failed by its evaluator for claiming +"no publish delta" over a surface it had not examined; do not repeat that. + +## Evidence discipline + +- Read raw exit codes **unpiped** (`"${PIPESTATUS[0]}"` or no pipe). A masked exit is a false green; + this exact trap has bitten this lane. +- An empty selection is a **refusal**, not a pass. +- A command that did not fire is NOT FIRED — never infer a result. +- Scratch belongs in `.llm/tmp/`, never inside a measured selection root. +- Prefer `deno doc` over broad source reads for public surfaces. + +## Boundaries + +Do not merge, publish, flip ready, relabel beyond the leaf's own `status:`, close issues, alter +milestone scope, mutate central cluster state, or touch another lane's worktree. PR targets `main` +and stays **draft**. + +Commit, push, open the draft PR with `Closes #1296` in the body and the namespaced labels, post the +structured `[PHASE: RESEARCH]` / `[PHASE: PLAN]` comment, then **stop**. If a proof comes out red, +report it red — an honest red is worth more than a green I have to disbelieve. diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/plan-eval-cycle-1.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/plan-eval-cycle-1.md new file mode 100644 index 0000000000..c85da2ac01 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/plan-eval-cycle-1.md @@ -0,0 +1,197 @@ +# PLAN-EVAL — release-0.0.7-internals--orchestration/slices/reference-export-drift-gate + +## Verdict block + +| Field | Value | +| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Evaluated head | `a3f6b87b599e778db950daf6ccaecd847c088d19` (asserted via `git rev-parse HEAD`, match) | +| Base | `baf1cdf67a4e931af17b4772ddf6101f36152184` | +| PR / issue | #1666 (draft) / closes #1296 | +| Cycle | **1 of 2** | +| Evaluator session | Claude Code session `68c31fcc-f93b-496f-8c0b-10e6736dded7` (background job `68c31fcc`) | +| Route | native Claude **Fable 5** / effort **medium** (`formal_plan_evaluation`, opposite family) | +| Artifacts evaluated | `plan.md` (as amended), `scope-amendment.md` (SA-1, governs on conflict), `research.md`, `implement.md`, frozen `leaf-contracts.json` entry (read-only) | +| Surface / archetype | frozen `6 — CLI / Tooling`; overlays `frontend`, `docs` | +| **Verdict** | **`FAIL_PLAN`** | + +One blocking finding (B1). Everything else re-derived below holds. Nothing outside this file was +written; no gate other than the read-only checks listed here was fired; `fresh-browser` stays +`NOT_RUN`. + +## Blocking finding + +### B1 — acceptance row 1 is materially less satisfied than research/plan/SA-1 state; three more shipped Contracts JSDoc examples import from a non-exporting root, all outside the frozen surface + +The plan (F3/F4, D8, "Explicit deferrals") and PR body assert that #1296 row 1 +(_"`packages/contracts` JSDoc examples import from the subpath that actually exports the symbols; a +reader copying them gets code that compiles"_) is baseline-earned except for `paginated-query.ts:6`. +I enumerated **every** `from '@netscript/contracts…'` line in shipped Contracts sources and checked +each imported symbol against the root with `deno doc --filter` (exit 1 = `Node … was not found!`): + +```text +grep -rnoE "from '@netscript/contracts[^']*'" packages/contracts --include=*.ts --include=*.tsx | grep -v _test + packages/contracts/crud/create-crud-contract.ts:6,250 -> '@netscript/contracts/crud' (correct) + packages/contracts/src/application/contract-primitives.ts:72,112,144 -> '@netscript/contracts' (correct; baseContract/BaseContractRoute/BaseContractOutputRoute all root EXIT=0) + packages/contracts/src/application/paginated-query.ts:6 -> '@netscript/contracts' (WRONG — plan already covers) + packages/contracts/src/application/transform-helpers.ts:6 -> '@netscript/contracts' (WRONG — NOT in plan) + packages/contracts/schemas/filters.ts:6 -> '@netscript/contracts' (WRONG — NOT in plan) + packages/contracts/schemas/pagination.ts:6 -> '@netscript/contracts' (WRONG — NOT in plan) + +deno doc --no-lock --filter createTransformer packages/contracts/mod.ts -> EXIT=1 ; on transform.ts -> EXIT=0 +deno doc --no-lock --filter FilterConditionSchema packages/contracts/mod.ts -> EXIT=1 ; on query.ts -> EXIT=0 +deno doc --no-lock --filter buildPrismaWhere packages/contracts/mod.ts -> EXIT=1 ; on query.ts -> EXIT=0 +deno doc --no-lock --filter PaginationInputSchema packages/contracts/mod.ts -> EXIT=1 ; on query.ts -> EXIT=0 +deno doc --no-lock --filter createPaginatedOutput packages/contracts/mod.ts -> EXIT=1 ; on query.ts -> EXIT=0 +deno doc --no-lock --filter paginatedQuery packages/contracts/mod.ts -> EXIT=1 ; on query.ts -> EXIT=0 +``` + +All three additional files are in the publish set (`packages/contracts/deno.json` `publish.include` +has `src/**/*.ts` and `schemas/**/*.ts`), so they ship JSDoc a reader cannot copy — the same class +of defect as `paginated-query.ts:6`, in three more places. + +Why this blocks the plan rather than the implementation: + +1. `research.md` F3/F4 and `plan.md` D8 / "Explicit deferrals and non-scope" record row 1 as + already-correct apart from one file. That statement is false, so the "reconcile row 1 honestly + and visibly" obligation from the brief cannot be met by the plan as written. +2. `plan.md` locks `Closes #1296`. Merging under this plan would auto-close an issue whose row 1 is + still unmet in three shipped files. +3. The three files are **outside the frozen nine (+1) paths**. Fixing them needs a coordinator + rescope; declining to fix them needs a coordinator decision on closure. Either way this is not a + decision the author may take alone, and it is not "safe to defer" — it changes what the PR may + honestly claim to close. That is an unflagged open decision under `gates/plan-gate.md` + ("Open-decision sweep" / "Deferred scope explicit"). +4. SA-1 A4's sequencing rationale ("#1533's example-compile gate would go red on + `paginated-query.ts:6` — the very JSDoc import this leaf corrects") is incomplete: #1533 would go + red on the three files above as well, so landing #1666 first does not prevent that red. + +**Required fix (author, then coordinator decision):** + +- Update `research.md` (F3/F4) with the full nine-line import inventory above and its `deno doc` + evidence; correct `plan.md` D8, the row-1 statement in the "Live acceptance contract" table, and + the deferrals section so that row 1 is recorded as **partially** satisfied at baseline with the + residual named file-by-file. +- Resolve, in `plan.md`, one of: + - (a) request from the coordinator a **JSDoc-only** scope amendment for + `packages/contracts/src/application/transform-helpers.ts`, + `packages/contracts/schemas/filters.ts`, `packages/contracts/schemas/pagination.ts` (edit + surface: the `@example` import line only; same publish-delta treatment as `paginated-query.ts` + in the JSR table), and add them to S1 and to validation row 11's path audit; **or** + - (b) keep the frozen surface, state explicitly that row 1 remains **unmet** for those three files + after this leaf, and have the coordinator decide whether `Closes #1296` stands (it should not + without (a) or a follow-up issue that the PR references without a closing keyword). +- Update the SA-1 A4 rationale (or add an SA-2 note) so the #1533 sequencing argument reflects all + four affected files, not one. + +I did not perform any of this. It is a coordinator scope decision. + +## Verified claims (re-derived, not trusted) + +| # | Claim | Result | Evidence | +| -------- | ------------------------------------------------------------- | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| A1 | Checker real and passing | **holds** | `deno run --no-lock --allow-read --allow-env --allow-run .llm/tools/docs/check-exports-drift.ts` → `DRIFT_RAW_EXIT=0`, `Exports & Symbols drift check: PASS` | +| A1 | "wired to nothing" | **false, as research says** | `grep -rnE 'check-exports-drift\|exports-drift' deno.json .github/workflows/` → `EXIT=1` (no hits). But `.llm/tools/docs/check-accuracy-and-discoverability.ts:292-301` spawns `deno run --allow-all .llm/tools/docs/check-exports-drift.ts`, throws on nonzero child code; `deno.json:85` `docs:accuracy` runs that script (`--allow-run=deno`), `deno.json:90` `docs:maintenance` includes `docs:accuracy`; `.llm/tools/gates/catalog.ts:59` maps `docs-accuracy` → `deno task docs:accuracy`. `deno task docs:accuracy` → `ACCURACY_RAW_EXIT=0`, terminal `docs accuracy: PASS`. No workflow runs `docs:accuracy`/`docs:maintenance`/`docs-accuracy` (`grep … .github/workflows/` → `EXIT=1`). Research F1 is accurate; the missing pieces (named task, workflow step, runbook) are correctly identified. | +| A3 | Row 1 baseline-satisfied for the four Step-0 symbols | **holds for those four**, but see B1 | `deno doc --filter` on `packages/contracts/mod.ts`: `baseContract`, `BaseContractRoute`, `BaseContractOutputRoute`, `OffsetPaginationQuerySchema` all `EXIT=0`; `contract-primitives.ts:72,112,144` import from root. | +| F4 | `paginatedQuery` absent from root, present on `/query` | **holds** | root filter `EXIT=1` (`Node paginatedQuery was not found!`); `query.ts` filter `EXIT=0`, its own JSDoc uses `@netscript/contracts/query`. `paginated-query.ts:6` still imports from root at head. | +| F5 | Six Fresh UI entrypoints, 28/11/35/82/16/7 symbols, 168 union | **holds exactly** | scratch `.llm/tmp/pe-count.ts` (outside measured roots) using `deno doc --no-lock --json` per `deno.json.exports` entry → `{".":28,"./ai/render-ui":11,"./desktop":35,"./interactive":82,"./primitives":16,"./registry":7} UNION 168`, zero `declarationKind: 'private'` nodes. | +| F6 | Forcing symbol checking today: 168 / 78 / 162 | **holds exactly** | scratch `.llm/tmp/pe-f6.ts` importing the checker's own `parseDocContent`/`checkSymbolsDrift` → `EXPECTED 168 DOCUMENTED_PARSE 78 ERRORS 162` = 126 OMITS + 36 INVENTS. The 36 invented names are the prop/field/generic artifacts research lists (`columns, rows, label, class, [attribute: string], key, header, width, cell, render, DataGridColumn, DataGridProps, DataGridRow, hint, icon, active, accept, multiple, onFile, onFiles, onReject, onDrop, onDragOver, onPaste, children, DROPZONE_*, Dropzone*, ShowProps, layout, viz, data`). Parser at `check-exports-drift.ts:270-283` does take the first backticked cell of every table row. | +| D5 | `Symbol`-header boundary safe for already-complete pages | **holds** | Header cells in `docs/site/reference/{config,contracts,telemetry,fresh-ui}/index.md`: config 13×`Symbol`+1×`Export`; contracts 12×`Symbol`+1×`Export`; telemetry 9×`Symbol` (padded, trims to `Symbol`)+1×`Export`; fresh-ui 10×`Symbol` plus `Prop`/`Shape`/`Field`/`Category`/… tables (the false-positive sources). Restricting to `Symbol`-headed tables will not create false reds on Config/Contracts/Telemetry — provided the header match is applied after `trim()`. | +| D4 | Dropzone types are in a `Symbol`-headed table | **holds** | `fresh-ui/index.md:153-161`; prose at 125-126 labels Dropzone copy-source / not a package export. | +| F2 | `docs/exports` absent, no history | **holds** | `test -e docs/exports` → `EXIT=1`; `git ls-tree -r --name-only baf1cdf67 -- docs/exports` → 0 paths. | +| F8 | Pages triggers already cover the edit surface | **holds** | `pages.yml:6-22,25-41` include `docs/site/**`, `packages/**`, `plugins/**`, `.llm/tools/docs/**`, `deno.json`. Note the `classify` job can skip the build by policy (`ci-classify-changes.ts`); root `deno.json` **tasks-only** changes → `pages:false`, package source/`packages/*/deno.json` changes → `pages:true`, `.llm/tools/docs/**` → `pages:true`. So a drift step in the build job fires for every input that can change export truth. | +| SA-1 T4 | Existing test passes | **holds** | `deno test --no-lock --allow-all .llm/tools/docs/check-exports-drift_test.ts` → `TEST_RAW_EXIT=0`, `1 passed \| 0 failed`. The single test exercises pure functions (`deriveExpectedExports`/`parseDocContent`/`checkExportsDrift`), not process exit. | +| Contract | Nine `fileSurfaces`, `fresh-browser` in `provingGates` | **holds** | `leaf-contracts.json` entry `reference-export-drift-gate` lines 1129-1149. Divergence from SA-1 is real and is upstream's. | +| Head | Branch diff vs base | **plan-only** | `git diff --name-status baf1cdf67 a3f6b87b5` → four added `.llm/runs/...` files only. | + +## Judgement on the eight questions + +1. **A1** — see table. Not "wired to nothing"; wired indirectly and fail-closed via `docs:accuracy`. + Nothing missed beyond what research F1 records; no workflow runs it. Plan's S2 is the right + remediation and does not claim prior work. +2. **A3** — the four Step-0 symbols hold; `paginatedQuery` is real; **three further files were + missed** (B1). +3. **`paginated-query.ts:6`** — confirmed with `deno doc`. +4. **D5 / D2-D4** — false positives are real and reproduced to the digit. The discriminated policy + makes a skipped symbol gate a config-level machine-readable fact (mode + mandatory nonempty + reason, refusal on empty/unknown). D5 fixes the parser first; D4's `documentedNonExports` is a + reason-bearing allow-list for a table the page itself labels non-export — it does not compensate + for a parser defect and does not weaken invented-symbol detection globally. Acceptable. Two + non-blocking gaps: N2 (report), N3 (test seam). +5. **D11** — executable. Real reds surface as `OMITS`/`INVENTS`; the legitimate outlets are + documenting the symbol or an audited reason-bearing omission group, and Tier-A reviews every + group. But S1's proof line reads "direct drift command raw exit 0 only after … reconcile", which + pressures toward green; N1 asks the plan to state that an honest residual red at S1 is reported + red, not tuned away. +6. **SA-1 justification** — a persistent test is required: the refusal paths are the load-bearing + semantics and a one-off probe cannot fail CI. The path is bounded to assertions. It is sufficient + for the four named refusal cases only if the checker exposes a seam the test can drive without + editing product code (N3). +7. **`fresh-browser` waiver** — correct. `catalog.ts:55` maps it to `deno task test:browser` = + `packages/fresh/deno.json:26` → `packages/fresh/tests/form-navigation_browser.ts`, a browser test + of `@netscript/fresh` form navigation. Nothing in the ten paths touches `packages/fresh`, any + route/island/component/CSS. Tier-A's caveat (the rewritten page is Lume-rendered) is about the + docs build, which Pages already covers via `deno task build` (`check:source-format` → lume → + `check:rendered-output`), not about `fresh-browser`. Not run; remains `NOT_RUN`. +8. **Four live rows** — rows 2, 3, 4 (Fresh UI repair, machine-readable omissions, runbook + wiring) + are closed by S1/S2 as designed. Row "Contracts inventory advertises no non-exports" (issue row + 2) is closed by the JSDoc fix plus the already-green reference page. Issue row 1 is **not** + honestly reconciled — B1. + +## Plan-Gate checklist + +| Plan-Gate item | Result | Evidence / location | +| --------------------------------------- | ------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Research present and current | FAIL | `research.md` re-baselined at head, load-bearing findings F1/F4/F5/F6 reproduce; but F3/F4's row-1 inventory is incomplete (B1). | +| Decisions locked | PASS | D1-D11 with rationale; SA-1 leaves them intact. | +| Open-decision sweep | FAIL | The three out-of-surface JSDoc files (B1) are an unflagged decision that changes what the PR may close; not safe to defer. | +| Commit slices (< 30, gate + files each) | PASS | S1-S3 ordered, files and proofs named. | +| Risk register | PASS | present; "exclusion list becomes a hiding place" mitigated by review. | +| Gate set selected | PASS | frozen gates minus waived `fresh-browser` (SA-1 A2), plus JSR audit; validation table rows 1-11. | +| Deferred scope explicit | FAIL | "The already-correct Contracts root exports and `contract-primitives.ts` JSDoc" is explicit, but the deferral list silently omits three shipped Contracts JSDoc defects that row 1 requires (B1). | +| jsr-audit surface scan (pkg/plugin) | PASS | Contracts publish delta named honestly; Fresh UI no member delta; baseline doc-lint reds recorded as red; pins verified. Under fix (a) the JSR table gains three more prose-only files in the same publish set. | + +## Open-decision sweep (evaluator-run) + +- **B1** (blocking) — fix path (a) or (b) above; coordinator's call. +- No other decision would force checker/doc rework if deferred. + +## Non-blocking findings (address in the same cycle; not required for PASS) + +- **N1 — S1 proof wording vs D11.** State in S1 that if honest reconciliation leaves a residual red, + S1 commits with the residual reported red (per implement.md "wiring a gate that then fails on + baseline is a legitimate outcome") rather than requiring exit 0 as its commit condition. +- **N2 — visible coverage report.** The policy is machine-readable in config, but the checker's + terminal `PASS` line would still be silent about which packages ran in `entrypoints-only` mode. + Have the checker print, per package, the coverage mode, reason, and omission-group counts on every + run so a green never hides five entrypoint-only packages. +- **N3 — test seam.** Name how `check-exports-drift_test.ts` will assert the four refusal cases: + export a policy validator (or make `checkDrift(mapping)` injectable) and bind `Deno.exit(1)` to it + in `main`. `AUTHORITATIVE_MAPPING` is a hardcoded const, so a subprocess test cannot inject a + malformed policy without a seam; SA-1's "asserted nonzero" needs this to be satisfiable without + touching product code beyond the in-scope checker. +- **N4 — Pages step cwd.** The checker uses `Deno.cwd()` and repo-relative paths; the + build/links/caveats steps use `working-directory: docs/site` (`docs:snippets` runs from root). The + new step must run from repo root (`deno task docs:exports-drift` with no `working-directory`), and + it must sit behind the same `if: env.RUN == 'true'` guard as the other build steps. +- **N5 — `docs:accuracy` calling the named task.** With `--allow-run=deno` the child + `deno task docs:exports-drift` is permitted; keep the child's stdout/stderr surfaced on failure as + today (`check-accuracy-and-discoverability.ts:296-300`). + +## Commands fired (all read-only; raw exits unpiped) + +```text +git rev-parse HEAD -> a3f6b87b599e778db950daf6ccaecd847c088d19 +deno run --no-lock --allow-read --allow-env --allow-run .llm/tools/docs/check-exports-drift.ts -> 0 (PASS) +grep -rnE 'check-exports-drift|exports-drift' deno.json .github/workflows/ -> 1 +grep -rn 'docs-accuracy\|docs:maintenance\|docs:accuracy' .github/workflows/ -> 1 +deno task docs:accuracy -> 0 (PASS) +deno test --no-lock --allow-all .llm/tools/docs/check-exports-drift_test.ts -> 0 (1 passed) +deno doc --no-lock --filter packages/contracts/{mod,query,transform}.ts (see B1 / A3) -> as tabulated +deno run --no-lock --allow-read --allow-run .llm/tmp/pe-count.ts -> 0 (168) +deno run --no-lock --allow-read --allow-run .llm/tmp/pe-f6.ts -> 0 (168/78/162) +test -e docs/exports -> 1 +fresh-browser -> NOT_RUN (waived, not restated) +``` + +Scratch: `.llm/tmp/pe-*.{ts,out,json}` only. No implementation, product, config, generated, plan, +research, amendment, lock, doctrine, debt, or central-state file was modified. diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/plan-eval.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/plan-eval.md new file mode 100644 index 0000000000..5204638bd8 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/plan-eval.md @@ -0,0 +1,163 @@ +# PLAN-EVAL — release-0.0.7-internals--orchestration/slices/reference-export-drift-gate + +## Verdict block + +| Field | Value | +| ------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Evaluated head | `80046696e6b192c5448aba6b3b0b619faeabac21` — local `git rev-parse HEAD`, `git ls-remote origin`, and `gh pr view 1666 headRefOid` all equal; no mismatch | +| Base | `baf1cdf67a4e931af17b4772ddf6101f36152184` (`git merge-base HEAD origin/main`) | +| PR / issue | #1666 (draft, base `main`) / `Closes #1296` | +| Cycle | **2 of 2** (cycle 1 = `FAIL_PLAN` at `5d229e0f3`, preserved as `plan-eval-cycle-1.md`) | +| Prior heads | plan `9d0b4bf12`, SA-1 `a3f6b87b5`, cycle-1 verdict `5d229e0f3`, SA-1a `cb91b225d`, SA-2 `80046696e` | +| Evaluator session | Claude Code session `580832d7-53e8-4828-ad41-e2f9219c9340` (background job `0e2d1e57`), fresh and separate from Codex author thread `01a005d2-7c9d-7dd1-b6fc-531b72dc14e4` | +| Route | native Claude **Fable 5**, formal PLAN-EVAL, opposite family to the GPT-5.6 Sol author | +| Artifacts evaluated | `plan.md` (SA-2 amended), `scope-amendment.md` (SA-1/SA-1a/SA-2), `research.md`, `implement.md` (historical, unedited), issue #1296, frozen `leaf-contracts.json` entry | +| Surface / archetype | frozen `6 — CLI / Tooling`; overlays `frontend`, `docs` | +| **Verdict** | **`PASS`** | + +Artifact-only. No product, config, generated, lock, doctrine, debt, or central-state file was +modified. `fresh-browser` stays `NOT_RUN` (N/A / waived, SA-1 A2); no Aspire/Docker/browser/`e2e:cli` +was fired. At exit the four Contracts JSDoc examples are **still unfixed** in the tree +(`grep -c "from '@netscript/contracts';"` → 1 each in `paginated-query.ts`, `transform-helpers.ts`, +`schemas/filters.ts`, `schemas/pagination.ts`); `git status` is clean apart from this artifact. + +## Premise corrections — verified, not inherited + +- `implement.md:43,47` ("wired to nothing" / "guards nothing") is a **known-stale supervisor + premise**, deliberately left unedited as history. It is not reported as a contradiction. +- Cycle 1's claim "No workflow runs `docs:accuracy`/`docs:maintenance`/`docs-accuracy`" was + **false**. Re-derived chain at head: + `ci.yml:364-367` step *Docs accuracy check* (`if: env.RUN == 'true'`, quality job `:282`, guard + `:287` `draft == false`, `RUN = classify-failed || needs_deno || needs_docs` at `:291`) → + `run-gate.ts --gate docs-accuracy` → `catalog.ts:59` `'docs-accuracy' → ['deno','task','docs:accuracy']` + → `deno.json:85` → `check-accuracy-and-discoverability.ts:292-301` spawns + `deno run --allow-all .llm/tools/docs/check-exports-drift.ts`, prints child stdout/stderr and + throws on nonzero. **Enforcement already exists fail-closed for qualifying non-draft CI; the row-5 + residual is discoverability** (no `docs:exports-drift` task, no named workflow step, no runbook). + `research.md` F1 and `plan.md` (goal, live-acceptance row 4, D9, S2, risk "gate-catalog + indirection") state exactly this — neither overstated nor understated. `grep -rn docs-accuracy + .github/workflows/` → `ci.yml:285,366,367`, `EXIT=0`. + +## Judgement on the eight questions (re-derived) + +1. **B1 closure — full inventory.** Every `from '@netscript/contracts…'` in the package (`*.ts`, + `*.tsx`, `*.md`, tests excluded): 14 lines. Publish set (`deno.json` `publish.include`): + `README.md`, `mod.ts`, `crud.ts`, `query.ts`, `transform.ts`, `src/**`, `crud/**`, `schemas/**`. + + | Line | Symbols → entrypoint | `deno doc --no-lock --filter` | + | --------------------------------------------- | --------------------------------------------------------------------------- | ----------------------------- | + | `README.md:52` | `baseContract`, `OffsetPaginationMetaSchema`, `OffsetPaginationQuerySchema` → root | root `0/0/0` — correct | + | `mod.ts:10` | `baseContract`, `OffsetPaginationQuerySchema` → root | root `0/0` — correct | + | `query.ts:6` | `paginatedQuery` → `/query` | query `0` — correct | + | `crud.ts:6`, `crud/create-crud-contract.ts:6,250` | `createCrudContract` → `/crud` | crud `0` — correct | + | `transform.ts:6` | `createTransformer` → `/transform` | transform `0` — correct | + | `src/application/contract-primitives.ts:72,112,144` | `baseContract`, `BaseContractRoute`, `BaseContractOutputRoute` → root | root `0/0/0` — correct | + | `src/application/paginated-query.ts:6` | `paginatedQuery` → root | root `1`, query `0` — **wrong (in plan)** | + | `src/application/transform-helpers.ts:6` | `createTransformer` → root | root `1`, transform `0` — **wrong (SA-2)** | + | `schemas/filters.ts:6` | `FilterConditionSchema`, `buildPrismaWhere` → root | root `1/1`, query `0/0` — **wrong (SA-2)** | + | `schemas/pagination.ts:6` | `PaginationInputSchema`, `createPaginatedOutput` → root | root `1/1`, query `0/0` — **wrong (SA-2)** | + + Exactly four wrong-root lines, all covered by D8/SA-2 with the correct ruled entrypoints. **No + fifth wrong-root example exists in the publish set.** Cross-package check: no `packages/**` or + `plugins/**` file outside `packages/contracts` imports any of the six symbols from the root + (`grep … EXIT=1`). F3/F4 are complete and accurate. +2. **`Closes #1296` honesty.** Row 1: all four residual lines in S1 → met at merge. Row 2: + `contracts` mapping is `checkSymbols: true`, checker `PASS` (`DRIFT_RAW_EXIT=0`) → baseline-met, + preserved. Row 3/4: S1 (six-entrypoint page repair, discriminated reason-bearing coverage, D2-D7). + Row 5: runbook (S1, D10) + named task/Pages step (S2, D9) over the already-enforced chain. The + closing keyword is earned by the plan as amended; no row is left unmet at merge. The plan and PR + body both say honesty comes from SA-2's rescope, not from the baseline — correct. +3. **Thirteen-path discipline.** Enumerated: frozen nine (six edit + `docs/exports`, + `contract-primitives.ts`, `src/public/mod.ts` do-not-touch) + SA-1 test path + SA-2 three JSDoc + paths = 13. S1 lists 7 implementation paths, S2 lists 3, do-not-touch 3 → 13, one-for-one. Every + operational count in `plan.md` reads **thirteen** (`:7,46,178,202,266`) and every refusal reads + **fourteenth** (`:79,179,202`); S3, validation row 11, and the risk guard are all bound to 13. + The remaining "nine" mentions are the frozen-contract count and the unrelated `doc:lint` + baseline, both correctly labelled. `leaf-contracts.json` still freezes nine — SA-1 A5 records that + as coordinator-owed upstream reconciliation. +4. **N3 seam.** At head `checkDrift()` takes no argument, iterates the hardcoded + `AUTHORITATIVE_MAPPING`, and calls `Deno.exit(1)` internally (`check-exports-drift.ts:376-467`); + the only test exercises the pure functions. SA-2's `checkDrift(mapping): Promise` + + `if (import.meta.main) Deno.exit(await checkDrift(AUTHORITATIVE_MAPPING))` makes the four refusal + cases assertable inside the authorized surface: empty/malformed reason and unknown mode are + mapping-validation refusals that need no files; invented and omitted symbol need a mapping whose + `packagePath`/`docPath` resolve under `Deno.cwd()` — achievable from the test file alone via + `Deno.makeTempDir()` fixtures with cwd-relative paths (or `Deno.chdir`), because the test task + runs `--allow-all`. Moving the exit out of `checkDrift` is what makes this testable at all; the + plan does exactly that. Validation row 1 is bound to this seam. SA-1's persistence promise is + satisfiable. +5. **N1 vs D11.** S1 "Proves" no longer requires raw exit 0; the N1 bullet states an honest + residual red is committed red with omissions/inventions and raw exit; validation row 2 says "A + residual red is preserved under N1 rather than blocking the S1 commit". D11 forbids tuning quiet. + The plan cannot be satisfied by silencing the checker. +6. **N2.** S1 introduces an unconditional per-package mode/reason/omission-count report before the + terminal verdict; validation row 2 requires it every run. A terminal `PASS` cannot hide + `entrypoints-only` packages (`plugin`, `queue`, `sdk`, `service` today; `fresh-ui` promoted to + complete). +7. **N4/N5.** `pages.yml:143-157`: build steps carry `if: env.RUN == 'true'`; snippets runs from + root, build/links/caveats use `working-directory: docs/site`. Plan S2/N4 puts the new step at + repo root with no `working-directory` behind the same guard — correct for a checker that joins + `Deno.cwd()`. `pages-workflow_test.ts` asserts snippets < lume order and lume cwd only; a new + step does not break it (risk row covers refusal if it did). N5: `deno.json:85` already grants + `--allow-run=deno`, so `deno task docs:exports-drift` is spawnable; the plan keeps the existing + decode-print-throw at `:296-300`. +8. **JSR proportionality.** Contracts is published; publish set includes all four files (`src/**`, + `schemas/**`); the JSR table names the delta as shipped JSDoc prose only, no export/API/schema + change; export map `. ./crud ./query ./transform` unchanged; zero `@netscript/*` pins (verified); + Fresh UI pins `jsr:@netscript/sdk@0.0.6/{auto-update,desktop}` exact (`fresh-ui/deno.json:16-17`); + root `isolatedDeclarations: true` (`deno.json:174`) → canonical `publish:dry-run` required and + planned; baseline doc-lint reds recorded as red. Proportionate. + +## Plan-Gate checklist + +| Plan-Gate item | Result | Evidence / location | +| --------------------------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Research present and current | PASS | `research.md` re-baselined at `baf1cdf67`; F1 chain, F3/F4 nine-line inventory + six-symbol table, F5 six entrypoints, F8 triggers all reproduce at head. | +| Decisions locked | PASS | D1-D11 with rationale; D8 widened to four files by SA-2; SA-2 governs on conflict. | +| Open-decision sweep | PASS | Sweep table resolves the three PLAN-EVAL-discovered files (SA-2), `docs/exports`, policy format, parser boundary, wiring, `fresh-browser`; evaluator sweep found none. | +| Commit slices (< 30, gate + files each) | PASS | S1-S3 ordered, 13 paths accounted for one-for-one, each names files and proof. | +| Risk register | PASS | Present; guards bound to thirteen; exclusion-as-hiding-place, parser, duplicate-execution, lock churn covered. | +| Gate set selected | PASS | Frozen gates minus waived `fresh-browser` (`NOT_RUN` preserved), plus JSR audit; validation rows 1-11. | +| Deferred scope explicit | PASS | Explicit deferrals list; four incorrect imports now in S1, not deferred; doc-lint debt, MySQL, Fresh UI source, other packages' prose deferred with reasons. | +| jsr-audit surface scan (pkg/plugin) | PASS | Contracts prose-only publish delta named honestly; pins/exports/isolated-declarations verified; baseline reds reported red. | + +## Open-decision sweep (evaluator-run) + +None. No decision the plan leaves open would force checker/doc/JSDoc rework if deferred. + +## Non-blocking observations (implementation lane; not required for PASS) + +- **O1 — `schemas/pagination.ts` example free identifiers.** Its `@example` uses `baseContract` and + `UserSchema` without importing/declaring them. The SA-2 import-subpath-only edit corrects the + export truth (row 1's operative test) but cannot make that fragment compile standalone. SA-1 A4's + "clears all four known example-compile failures" therefore holds for import resolution only; if + #1533's compiler resolves free identifiers, this file may still be red there. Not this leaf's + scope; record it for #1533, not as a fourteenth path. +- **O2 — N3 fixture mechanics.** For the invented/omitted cases, `checkDrift(mapping)` reads + `join(Deno.cwd(), packagePath|docPath)` and runs `deno doc`; the test will need temp fixtures with + cwd-relative paths (or an optional `root` parameter on `checkDrift`, which stays inside the + authorized checker path). Either is within the thirteen; the plan need not change. +- **O3 — live acceptance table labels.** `plan.md` folds issue rows 1 and 2 into one row labelled + "Contracts reference inventory advertises no non-exports"; `research.md` keeps them separate. + Cosmetic; the underlying claims are correct in both. + +## Commands fired (read-only; raw exits unpiped) + +```text +git rev-parse HEAD / git ls-remote origin / gh pr view 1666 -> 80046696e x3, draft=true +git merge-base HEAD origin/main -> baf1cdf67 +git diff --name-status baf1cdf67 HEAD -> 6 added .llm/runs/... files only +grep -rn 'docs-accuracy|docs:accuracy|docs:maintenance|exports-drift' .github/workflows/ -> 0 (ci.yml:285,366,367) +sed ci.yml:280-290,360-370 ; catalog.ts:55,59 ; deno.json:85,90 ; check-accuracy…ts:285-305 +grep -rnoE "from ['\"]@netscript/contracts[^'\"]*['\"]" packages/contracts (ts/tsx/md, no tests) -> 14 lines +deno doc --no-lock --filter <12 symbols> packages/contracts/{mod,query,transform,crud}.ts -> as tabulated +grep six symbols from root outside packages/contracts -> 1 (none) +deno run --no-lock --allow-read --allow-env --allow-run .llm/tools/docs/check-exports-drift.ts -> 0 (PASS) +deno test --no-lock --allow-all .llm/tools/docs/check-exports-drift_test.ts -> 0 (1 passed) +grep pages.yml guards/cwd ; pages-workflow_test.ts assertions ; fresh-ui deno.json exports/pins ; deno.json:174 +grep -c "from '@netscript/contracts';" -> 1 each (unfixed at exit) +fresh-browser -> NOT_RUN (waived, not restated) +``` + +No scratch was written under measured roots. Only this artifact and the `plan-eval-cycle-1.md` +rename were produced. diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/plan.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/plan.md new file mode 100644 index 0000000000..5c6b32f75f --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/plan.md @@ -0,0 +1,386 @@ +# Plan: reference-export-drift-gate + +> **AMENDED — coordinator scope amendments SA-1/SA-1a/SA-2/SA-3, 2026-08-15.** The authoritative +> amendment record is `scope-amendment.md` in this slice directory. SA-1 adds one test-only path and +> waives `fresh-browser`; SA-1a corrected that path audit; SA-2 grants exactly three +> JSDoc-import-line paths, corrects the inherited CI premise, and resolves PLAN-EVAL cycle-1 +> findings N1-N5. After CI exposed the tracked agent-docs mirrors omitted by the original plan, SA-3 +> grants exactly four generator-owned paths. The live authorized implementation surface is +> **seventeen paths**. Where older text conflicts, SA-3 governs. + +## Run metadata + +| Field | Value | +| ------------------------- | ------------------------------------------------------------------------------ | +| Run ID | `release-0.0.7-internals--orchestration/slices/reference-export-drift-gate` | +| Leaf / lane | `reference-export-drift-gate` / wave 2 internals | +| Branch / base | `fix/reference-export-drift-gate` / `baf1cdf67a4e931af17b4772ddf6101f36152184` | +| Phase | SA-3 plan-only amendment; generation prohibited until fresh Tier-A PASS | +| Closing issue | exactly `Closes #1296` | +| Archetype | frozen `6 — CLI / Tooling` | +| Overlays | `frontend`, `docs` | +| Package doctrine subjects | Contracts: Archetype 1 / Keep; Fresh UI: Archetype 4 / Keep | + +## Goal + +Make the claimed reference boundary falsifiable: correct all four remaining shipped Contracts +example import lines, reconcile Fresh UI's reference with its six-entrypoint/168-symbol published +surface, make every symbol-coverage omission an explicit machine-readable policy decision, document +the maintainer update path, and make the already-enforced drift gate directly discoverable through +named local and Pages verification edges. + +SA-3 additionally restores the tracked publication cascade that the Fresh UI reference edit makes +stale: canonical agent-docs prose/provenance, its published CLI embedding, and the MCP publish +mirror that carries the corpus provenance. These files will be regenerated only through their +canonical generators after coordinator Tier-A PASS. + +The leaf preserves the already-correct Contracts root exports/examples and does not manufacture a +`docs/exports` inventory. + +## Live acceptance contract + +| Live row | Baseline truth | Planned closure | +| ------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Contracts reference inventory advertises no non-exports | **Partially satisfied.** Five of nine implementation-example lines are baseline-correct (two CRUD plus three root); all four specifically briefed root symbols resolve, but four implementation examples import six symbols from a root that does not export them. | S1 changes only those four `@example` import subpaths. `Closes #1296` is honest because SA-2 covers the full measured residual, not because the baseline row was complete. | +| Fresh UI reference matches published exports | Unsatisfied: six entrypoints exist, 168 unique symbols derive live, and symbol checking is disabled. | S1 repairs the page and enables complete-mode enforcement after fixing parser false positives. | +| Intentional omissions are machine-readable | Unsatisfied: boolean `checkSymbols: false` can silently skip coverage. | S1 adds reason-bearing discriminated coverage, refusal semantics, and N2's always-visible coverage report. | +| Maintainer runbook and drift verification | Enforcement already exists fail-closed in non-draft CI through quality -> gate catalog -> `docs:accuracy` -> checker; no named direct task/Pages identity/runbook exists. | S1 documents the runbook; S2 adds named local and Pages identities while preserving, not claiming, the existing enforcement chain. | + +The five issue checkboxes remain separately mapped to Contracts example imports, Contracts reference +inventory, Fresh UI reference truth, machine-readable omissions, and runbook/discoverable +verification. SA-3 does not check or rewrite any box; it repairs the generated publication evidence +required by the already-authored Fresh UI reference change. + +## Exact narrowed edit surface (locked) + +The frozen contract's nine implementation paths are narrowed below. SA-1 adds one test-only path; +SA-2 adds three JSDoc-import-line-only paths; SA-3 adds four verified generator-owned paths. The +live authorized surface is therefore **seventeen paths**. Run artifacts requested by the coordinator +are control-plane records, not implementation paths. + +| Frozen path | Planned action | Per-path justification | +| ----------------------------------------------------------- | ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `.github/workflows/` | Edit only `.github/workflows/pages.yml`. | Add one named `deno task docs:exports-drift` step in the existing build job. Current triggers already cover docs, packages, plugins, docs tooling, and root task configuration; no new workflow or path filters. | +| `.llm/tools/docs/check-accuracy-and-discoverability.ts` | Edit only the existing child invocation. | Call the named task instead of a hidden raw script argv while preserving fail-closed child-exit handling and single execution under `docs:accuracy`. | +| `.llm/tools/docs/check-exports-drift.ts` | Edit. | Introduce reason-bearing symbol coverage policy, reject invalid/empty policy, parse only actual symbol-inventory tables, normalize display generics, support explicitly labeled doc-only copy-source symbols, and enable Fresh UI symbol checking without false greens. | +| `deno.json` | Edit tasks only. | Add `docs:exports-drift` with least required permissions. Keep `docs:accuracy` and therefore `docs:maintenance` as the aggregate local path; do not duplicate the drift command in the same maintenance run. | +| `docs/exports` | **Do not create or edit.** | No baseline/history path, producer, or consumer exists. The live checker derives inventories in memory; creating this directory would add a drifting second authority. This frozen entry is stale. | +| `docs/site/reference/fresh-ui/index.md` | Edit. | Correct stale public-surface claims; add the missing desktop, ActionMenu/Combobox, registry, render-UI, DataGrid, namespace/contract inventory; keep Dropzone visibly copy-source; add maintainer regeneration/update runbook. | +| `packages/contracts/src/application/contract-primitives.ts` | **Do not edit.** | The named examples already import valid root exports. Editing would falsely claim work already present at baseline and would create unnecessary published JSDoc delta. | +| `packages/contracts/src/application/paginated-query.ts` | Edit JSDoc only. | Change the shipped module example from the non-exporting root to `@netscript/contracts/query`. No runtime/type semantics. | +| `packages/contracts/src/public/mod.ts` | **Do not edit.** | The briefed contract symbols already resolve from the root. No export addition/removal is warranted. | + +**SA-1.** One additional implementation path is authorized, **test-only**: + +| Amended path | Planned action | Per-path justification | +| --------------------------------------------- | -------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `.llm/tools/docs/check-exports-drift_test.ts` | **Edit — test assertions only.** | S1 lands fail-closed coverage-policy semantics (D2-D5) whose refusal paths are load-bearing: empty/malformed reasons, unknown coverage modes, invented symbols, and omitted symbols must each exit nonzero. Proving that with one-off probes leaves no artifact that can fail a future CI run. Persistent test cases are the only durable proof. No product, config, or generated file may be edited under this path. | + +**SA-2.** Exactly three additional implementation paths are authorized, and only the published JSDoc +example import line may change: + +| Amended path | Planned action | Per-path justification | +| --------------------------------------------------------- | ---------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | +| `packages/contracts/src/application/transform-helpers.ts` | Edit the `@example` import subpath only. | `createTransformer` is absent from root (`EXIT=1`) and present on `/transform` (`EXIT=0`). | +| `packages/contracts/schemas/filters.ts` | Edit the `@example` import subpath only. | `FilterConditionSchema` and `buildPrismaWhere` are absent from root (`EXIT=1` each) and present on `/query` (`EXIT=0` each). | +| `packages/contracts/schemas/pagination.ts` | Edit the `@example` import subpath only. | `PaginationInputSchema` and `createPaginatedOutput` are absent from root (`EXIT=1` each) and present on `/query` (`EXIT=0` each). | + +**SA-3.** Exactly four additional generated paths are authorized. They must be changed only by the +named canonical generator; hand-editing any generated content is prohibited: + +| Amended path | Owner / planned action | Per-path justification | +| -------------------------------------------------------- | ----------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `.llm/assets/agent-docs/prose.json.gz` | `gen:agent-docs-prose`; regenerate. | The rendered corpus includes `pages/reference/fresh-ui/index.md`; the repaired page changes from 18,895 to 26,411 bytes in the scratch-derived payload and therefore changes the gzip. | +| `.llm/assets/agent-docs/provenance.json` | `gen:agent-docs-prose`; regenerate. | Records canonical corpus sizes, digest, file set, and source commit; it must describe the regenerated gzip exactly. | +| `packages/cli/src/kernel/assets/agent-docs.generated.ts` | `gen:assets-barrel`; regenerate. | Embeds the exact gzip bytes and provenance in published `@netscript/cli`; scratch generation changed source commit, sizes, digest, and base64 payload. | +| `packages/mcp/src/publish-assets.generated.ts` | `gen:publish-assets`; regenerate. | Fresh UI is not in MCP's bounded 12-document selection, so prose bytes stay fixed, but the published fallback provenance legitimately advances its `sourceCommit`. | + +The scratch control also proved what is **not** in the cascade. `gen:mcp-export-corpus` changes +`packages/mcp/src/infrastructure/export-surfaces/export-surface-corpus.generated.ts` at both base +and leaf head, and the two regenerated files are byte-identical. Its check is already raw-exit-1 red +at base `baf1cdf67`; that is pre-existing drift, not propagation from this leaf, so SA-3 +deliberately excludes the file and will not regenerate it. The broad `PUBLISH_ASSET_OUTPUTS` list is +likewise not authority to rewrite unaffected outputs; scratch generation found no other changed +path. + +The prohibition stands for **everything else**: do not touch the Contracts reference page, any Fresh +UI package source/config, MySQL package/reference paths, `deno.lock`, doctrine/debt, central cluster +state, or another lane's worktree. SA-3 supersedes the former fourteenth-path refusal for only the +four paths above. An **eighteenth** implementation path is rescope: stop and request it from the +coordinator. + +## Locked decisions + +| ID | Decision | Rationale | +| --- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| D1 | Keep package `deno.json.exports` and per-entrypoint `deno doc --json` as the sole export/symbol authority; never materialize `docs/exports`. | Avoids a second generated/handwritten inventory and preserves A1/A14 dependency direction. | +| D2 | Replace `checkSymbols` + free-standing `excludedSymbols` with a discriminated `symbolCoverage` policy. | A boolean `false` silently disables proof. A discriminant makes completeness versus deliberate entrypoint-only coverage machine-readable and exhaustively consumable. | +| D3 | `symbolCoverage` has two modes, both with a required nonempty coverage reason: `complete` additionally has reason-bearing omission groups; `entrypoints-only` records why symbol comparison is deferred. | Every package can print mode + reason on every run. A skipped gate is a policy fact, not missing configuration; empty/malformed reasons refuse. | +| D4 | Complete-mode mappings may name reason-bearing `documentedNonExports` groups for copy-source/API-adjacent symbols that the page explicitly labels as non-package exports. | Fresh UI's Dropzone section is useful and honest. The checker must distinguish explicit copy-source docs from invented package exports without globally weakening invented-symbol detection. | +| D5 | Parse symbol inventories only from Markdown tables whose first header cell is exactly `Symbol`; ignore prop/field/shape tables, strip display generic suffixes such as ``, and retain grouped symbol-cell support. | Eliminates the measured false positives (`columns`, `label`, `layout`, generic display names) before enabling enforcement. Exclusions must never compensate for parser defects. | +| D6 | Fresh UI uses `complete` mode. Document user-facing components/functions/constants/namespaces and their public contract families; every intentionally omitted low-level member type is enumerated in sorted reason-bearing groups. | Repairs the reproduced Fresh UI surface and makes remaining curation auditable. A newly exported symbol must be documented or explicitly classified before the gate returns green. | +| D7 | Existing currently entrypoint-only mappings remain entrypoint-only only with explicit reasons; Config, Contracts, Fresh UI, and Telemetry remain/enter complete mode. | Satisfies machine-readable omission policy without pretending this leaf authored complete prose for unrelated packages. Promotion of other packages can occur independently. | +| D8 | Correct the example import line in `paginated-query.ts` to `/query`, `transform-helpers.ts` to `/transform`, and `schemas/filters.ts` plus `schemas/pagination.ts` to `/query`; preserve `contract-primitives.ts` and `src/public/mod.ts`. | Independent `deno doc` proves the briefed root symbols are valid and all six residual symbols are absent from root but present on the ruled subpaths. All changes are shipped JSDoc prose only. | +| D9 | Add `docs:exports-drift`; make `docs:accuracy` call it; add the same named task as an explicit Pages build step. | Improves the direct discoverability of a gate already enforced fail-closed through non-draft CI quality, while retaining the aggregate and avoiding duplicate execution within either path. | +| D10 | The Fresh UI runbook documents derivation, not file generation: inspect every `deno.json.exports` entry with `deno doc --json`, update the page and coverage policy, run the direct drift task, then the aggregate accuracy task. | There is no generator today. Calling a manual derived update "regeneration" is honest only when the source of truth and verification steps are explicit. | +| D11 | Do not tune the checker to baseline green. First land semantics that refuse malformed coverage, then reconcile the page/policy until the unchanged live export authority passes. | Coverage and compliance remain distinct. A real red after wiring is reported red. | +| D12 | Regenerate only the verified four-file agent-docs publication cascade: prose and provenance first, MCP publish assets second, CLI assets barrel third. Do not run `gen:mcp-export-corpus`. | Scratch generation assigns clear ownership and proves no other output changes; the export corpus is an unrelated baseline red whose base/head regenerated bytes are identical. | +| D13 | Prove idempotence by comparing the first and second canonical regeneration diffs, committing the content, rerunning all three generators at that clean committed head, and requiring no further diff or non-cascade path. | A generated tree is trustworthy only when rerunning its owners is a no-op; a broad output manifest is not permission to accept unrelated churn. | +| D14 | Treat the CLI and MCP generated files as real publish deltas and re-audit both members. | Both members publish generated source under `src/**/*.ts`; upgrading consumers receive refreshed offline agent-docs content/provenance even though no export map, runtime API, or pin changes. | + +## Open-decision sweep + +| Decision | Status | Resolution | +| -------------------------------------------------------------- | -------------------- | ------------------------------------------------------------------------------------------------------------------------------- | +| Whether `docs/exports` should be created | resolved now | No; stale frozen entry, explicitly non-touched. | +| Machine-readable omission format | resolved now | D2-D4 discriminated, reason-bearing mapping policy. | +| Symbol-table parser boundary | resolved now | D5 exact `Symbol` header plus display-name normalization. | +| Direct task versus aggregate versus workflow discoverability | resolved now | D9 combination: named task, already-enforced accuracy/maintenance aggregate, explicit Pages step. | +| Whether the briefed Contracts root exports need edits | resolved now | No; baseline-earned. Four other shipped import lines are repaired under SA-2. | +| Whether the three PLAN-EVAL-discovered files may change | resolved by SA-2 | Yes, exactly the `@example` import subpath; no runtime/type/export/schema edits. | +| Which tracked agent-docs outputs the Fresh UI edit invalidates | resolved by SA-3 | Exactly the four D12 paths; scratch generation and a base control exclude the MCP export corpus and all other manifest outputs. | +| Whether package-source doc-lint debt should be fixed | safe to defer | Outside frozen paths; record baseline reds without weakening gates. | +| Whether every mapped package should become symbol-complete now | safe to defer | This leaf makes non-complete status explicit/reasoned; unrelated prose expansion is separate scope. | +| Whether Fresh browser proof must run | **resolved by SA-1** | **N/A / waived.** No route/component/island/interaction behavior changes. `NOT_RUN` preserved; no runtime lease. | + +No unresolved implementation decision remains. `fresh-browser` is already N/A/waived. SA-3 +generation remains prohibited until the coordinator's fresh Tier-A returns PASS. + +## Ordered implementation slices + +### S1 — make reference coverage explicit and reconcile the live surfaces + +- Files: `.llm/tools/docs/check-exports-drift.ts`, `docs/site/reference/fresh-ui/index.md`, + `.llm/tools/docs/check-exports-drift_test.ts`, + `packages/contracts/src/application/paginated-query.ts`, + `packages/contracts/src/application/transform-helpers.ts`, + `packages/contracts/schemas/filters.ts`, `packages/contracts/schemas/pagination.ts`, and slice run + artifacts. +- Introduces: + - the discriminated reason-bearing coverage policy and fail-closed validation; + - **N2:** an unconditional per-package coverage report on every run containing coverage mode, the + reason (including complete-mode rationale), and omission-group counts, before the terminal + verdict, so `PASS` cannot hide entrypoint-only packages; + - **N3:** an injectable, exported `checkDrift(mapping: AuthoritativeMapping): Promise` + seam. It validates the supplied mapping and returns nonzero for malformed policy or drift; the + `if (import.meta.main)` guard passes `AUTHORITATIVE_MAPPING` and binds process status with + `Deno.exit(await checkDrift(AUTHORITATIVE_MAPPING))`. Tests import `checkDrift` and pass invalid + fixture mappings directly without triggering `main`, so the hardcoded production constant does + not make the four refusal cases untestable; + - table-aware symbol parsing and generic normalization; + - Fresh UI complete-mode enforcement, documented non-export classification, and exact omission + groups; + - repaired Fresh UI reference sections and the maintainer derivation/update runbook; + - the corrected import subpaths in all four shipped Contracts JSDoc examples. +- Proves: the existing negative export fixture remains green, while empty/malformed reason, unknown + coverage mode, invented symbol, and omitted symbol fixture mappings each make the injected + `checkDrift` result nonzero. The direct drift command reports the honestly reconciled live state. +- **N1:** raw exit 0 is not an S1 commit condition. If honest reconciliation leaves a residual red, + S1 is committed with that residual reported **red**, including the exact omissions/inventions and + raw exit. It is never tuned away or withheld merely to manufacture green; D11 governs. +- Slice review: confirm exclusions classify real exported symbols only, each reason is substantive, + Dropzone remains visibly non-exported, and no Contracts runtime/export changes entered the diff. + +### S2 — expose and execute the gate through the documentation path + +- Files: `deno.json`, `.llm/tools/docs/check-accuracy-and-discoverability.ts`, + `.github/workflows/pages.yml`, and slice run artifacts. +- Introduces: named least-permission `docs:exports-drift` task, aggregate invocation from + `docs:accuracy`, and a named Pages verification step. +- Proves: + - direct search now finds the task and Pages identity, while the record continues to attribute + pre-existing non-draft CI enforcement to the quality/catalog/accuracy chain; + - `deno task docs:exports-drift` and `deno task docs:accuracy` each return raw exit 0; + - Pages workflow tests and source-format gates remain green; + - a controlled drift diagnostic makes the named task nonzero and therefore would fail both + aggregate and workflow edges. No product file is left modified after the diagnostic. +- **N4:** the Pages step is `deno task docs:exports-drift` from repository root (no + `working-directory`) because the checker resolves repo-relative paths from `Deno.cwd()`. It sits + behind the same `if: env.RUN == 'true'` guard as the other build steps. +- **N5:** `docs:accuracy` invokes the named task through the existing `--allow-run=deno` permission. + Its child handling continues to decode and print both stdout and stderr before throwing on + nonzero, exactly preserving the current failure visibility at + `check-accuracy-and-discoverability.ts:296-300`. +- Slice review: ensure the task executes once per path, N4/N5 hold, permissions are no broader than + required, and workflow triggers were not widened. + +### S3 — history-bound contract and publication evidence + +- Files: slice run artifacts only; no implementation path edits. +- Proves at the exact committed head: `check`, `test`, `publish-dry-run`, `quality-job`, + `arch-check`, `docs-source-format`, and `docs-accuracy` through durable receipts; focused direct + drift and JSR evidence; its historical exact-path audit was bound to all **thirteen + then-authorized** paths; no lock churn. SA-3 later supersedes that historical fourteenth-path + refusal for only the four generated paths listed above. +- Handoff: coordinator performs Tier-A substantive review and grants/dispatches PLAN-EVAL and later + IMPL-EVAL according to the recorded gates. The author neither self-certifies nor advances the PR + to ready. + +### S4 — regenerate the verified publication cascade (only after fresh Tier-A PASS) + +- Files: the four SA-3 generated paths plus slice run artifacts. No checker, product source, + workflow, task, export-map, dependency, or lock edit is permitted. +- Canonical order: `deno task gen:agent-docs-prose`, `deno task gen:publish-assets`, then + `deno task gen:assets-barrel`. Each raw exit is captured unpiped. +- First-pass scope proof: direct Git diff must show exactly the four SA-3 paths and no other new + implementation path. Any eighteenth path is a hard refusal and coordinator rescope. +- Idempotence proof: record a checksum of the complete first regeneration diff; run the same three + generators again and require the same diff/checksum; commit the generated content; require a clean + tree; run the three generators once more at that immutable content head and require no diff. +- Content-head proof: recut every applicable receipt named below at the one clean committed content + head. Receipt artifacts are append-only and committed separately; preserved old/red receipts and + the pre-finding IMPL-EVAL PASS are not rewritten. +- Stop after explicit-refspec push and structured comment for a second fresh Tier-A. A fresh delta + IMPL-EVAL is required before readiness can be restored; the author does not run it, flip ready, or + touch labels/issue boxes. + +## Validation plan + +Durable merge evidence must use `.llm/tools/gates/run-gate.ts` at committed heads. Structured +wrapper selections must be nonempty. Raw exit codes are captured unpiped; a command that never fires +is `NOT FIRED`. + +| Order | Gate | Classification and evidence | +| ----- | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 1 | Focused checker test | The existing negative export fixture must still pass. Through N3's injectable `checkDrift(mapping)` seam, committed tests assert nonzero for empty/malformed reason, unknown mode, invented symbol, and omitted symbol. Assertions only under the test path; no scratch under measured roots. | +| 2 | Direct export drift | `deno task docs:exports-drift`; must enumerate/compare configured surfaces, print N2's per-package mode/reason/omission counts every run, and report the honest exit. A residual red is preserved under N1 rather than blocking the S1 commit. | +| 3 | `check` | Frozen contract gate via durable receipt; wrapper-backed type selection must be nonempty. | +| 4 | `test` | Frozen full behavior gate via durable receipt, including docs/tool/workflow tests selected by the repository task. | +| 5 | `quality-job` | Frozen CI-quality composite; records wrapper-backed lint/fmt/dependency evidence. | +| 6 | `arch-check` | Required because published Contracts JSDoc is touched; no doctrine/debt regression. | +| 7 | `docs-source-format` | Run from the required docs-site context through the cataloged gate; proves source/Vento formatting. Also run its existing test if the coordinator's receipt set requires it, but do not substitute that extra test for the contracted gate. | +| 8 | `docs-accuracy` | Must fire the named task under `--allow-run=deno`, propagate its real exit, and surface child stdout/stderr on failure. Terminal PASS alone is accepted only with the source/task binding reviewed. | +| 9 | `publish-dry-run` | Canonical workspace simulation at the exact head; proves the shipped Contracts JSDoc and isolated declarations package statically. Review member/file output; do not infer real-publish success. | +| 10 | JSR audit | Re-run package audit for Contracts and reference-subject audit for Fresh UI; preserve/report sanctioned or pre-existing reds exactly. Verify exact NetScript pins from member config. | +| 11 | Git/path/lock audit | Direct raw Git commands prove only the **seventeen authorized** implementation paths plus run artifacts changed; `docs/exports`, `deno.lock`, package export maps, MySQL paths, and the excluded MCP export corpus remain untouched. An eighteenth implementation path refuses and requires coordinator rescope. | + +**SA-3 recut set at the clean generated-content head.** The historical seven-receipt sets remain +append-only evidence for their old heads; they do not attest the changed content head. Recut: + +| Class | Required evidence at the SA-3 content head | +| --------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Binding receipts | `check`, `test`, `quality-job`, `arch-check`, `docs-source-format`, `docs-source-format-test`, `docs-tagline`, `docs-accuracy`, `agent-docs-prose` (`check:agent-docs-prose`), `assets-barrel` (`check:assets-barrel`), `publish-assets` (`check:publish-assets`), and `publish-dry-run`. | +| Focused/static checks | Direct `docs:exports-drift`, checker tests, the Pages workflow tests already used by S2, exact seventeen-path diff audit, and byte-identical `deno.lock` proof. | +| Publication checks | JSR audits for Contracts, Fresh UI, CLI, and MCP; exact `@netscript/*` pin audit from all four member configs; review CLI/MCP member file lists in the isolated-declaration workspace `publish:dry-run`. Static dry-run is not real-publish proof. | +| Honest baseline red | Re-run `check:mcp-export-corpus` read-only and record its raw exit as red if unchanged; do not generate or waive it. Preserve the existing Contracts/Fresh UI doc-lint reds exactly as red. | +| History binding | Record the immutable generated-content commit in every new receipt index. Fresh delta IMPL-EVAL is coordinator-owned and required before readiness. Close-gate is `NOT_RUN` and must not be rerun in this pass. | + +No Aspire, Docker, browser, `e2e:cli`, scaffold runtime, service runtime, publish, release cut, or +resource cleanup is planned. + +## `fresh-browser` classification and request + +**AMENDED (SA-1) — RESOLVED: `fresh-browser` is classified N/A / WAIVED for this leaf.** The +coordinator accepted the author's argument below: the verified plan changes checker, docs, shipped +JSDoc, task, and workflow wiring only, and no route, component, island, CSS, or interaction +behavior. **`NOT_RUN` evidence is preserved and reported as `NOT_RUN`** — it is never restated as a +pass — and **no runtime lease is acquired**. Aspire, Docker, browsers, and `e2e:cli` remain +prohibited in this lane. + +**Original author status: NOT FIRED — this lane is not authorized to execute it.** + +If granted, `fresh-browser` would prove only that the edited reference page builds/renders with +usable headings, anchors, tables, code blocks, and responsive presentation in the real Fresh docs +site. It would not prove that a symbol exists, that an omission policy is complete, or that the +Contracts import resolves; the checker, snippet/static gates, and `deno doc` own those facts. + +This plan judges `fresh-browser` **not genuinely required** for the frozen surface because no route, +component, CSS, island, interaction, loading/error state, or application workflow changes. The +frontend overlay is present because Fresh UI is the documented package, not because browser behavior +is modified. SA-1 resolved the classification as N/A/waived. The implementation lane will not +request a runtime lease or execute it; the evidence remains `NOT_RUN`. + +## JSR audit plan + +| JSR concern | Contracts | Fresh UI reference subject | +| ---------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Publish delta | Shipped JSDoc text changes in `src/application/paginated-query.ts`, `src/application/transform-helpers.ts`, `schemas/filters.ts`, and `schemas/pagination.ts`; this is a publish delta even though runtime/types/exports/schemas do not change. | No Fresh UI member source changes, but its reference edit propagates into published CLI/MCP generated assets under SA-3; the earlier leaf-wide “prose-only/no publish delta” framing is superseded. | +| Export audit | `deno doc` on `.`, `./crud`, `./query`, `./transform`; assert all six affected symbols are absent from root and present only on their ruled `/query` or `/transform` entrypoint; preserve baseline-correct root/CRUD symbols. | `deno doc --json` on all six entrypoints; 168-symbol union is checker input, not a remembered count baked into docs tooling. | +| Exact `@netscript/*` pins | None; explicitly zero rows, not "not examined." | Preserve `sdk/auto-update` and `sdk/desktop` exact at `@netscript/sdk@0.0.6`; no source/config change. | +| Documentation | Correct all four copyable implementation example imports. Baseline `doc:lint` has nine private-type-ref reds; report as baseline and do not claim zero. | Reference corrected. Baseline package `doc:lint` has 123 `/interactive` reds; source fix is out of scope and remains honest red. | +| Slow types / isolated declarations | `audit-jsr-package` sanctioned oRPC slow-type INFO; final canonical `publish:dry-run` required under root `isolatedDeclarations:true`. | Audit currently reports slow types plus structural warnings; no package change, no waiver invention. | +| Publish set / assets | Confirm the two `src/**/*.ts` and two `schemas/**/*.ts` JSDoc files are included; no new asset/runtime import/read. | Fresh UI's own publish set is unchanged; downstream CLI/MCP asset deltas are audited separately below. | + +**SA-3 publication correction.** The following table supersedes any earlier claim that the leaf has +no generated or consumer-visible publish delta: + +| Member | Generated publish delta | Publish-set proof | Exact `@netscript/*` pins / planned audit | +| ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `@netscript/cli@0.0.6` | `src/kernel/assets/agent-docs.generated.ts` changes: refreshed gzip/base64 corpus plus provenance. Consumers upgrading receive the repaired Fresh UI reference in offline agent docs. | `publish.include` contains `src/**/*.ts`; the generated file is imported by the public Deno agent-docs generator. | Audit every member pin: Aspire, Config, Fresh UI, MCP, Plugin, and SDK are exact `jsr:@netscript/*@0.0.6`; run package JSR audit and isolated-declaration dry-run. | +| `@netscript/mcp@0.0.6` | `src/publish-assets.generated.ts` changes its embedded-doc provenance `sourceCommit`. The selected fallback prose excludes Fresh UI and therefore its document bytes/hash stay fixed, but consumers still receive refreshed publication provenance. | `publish.include` contains `**/*.ts`; runtime infrastructure imports the generated file. | Aspire and both Telemetry subpaths are exact `jsr:@netscript/*@0.0.6`; run package JSR audit and isolated-declaration dry-run. | + +No package export map, version, runtime API/type/schema, or dependency pin changes. The two +`.llm/assets/agent-docs/*` files are tracked canonical inputs rather than direct JSR publish files; +their consumer-visible effect is the generated CLI/MCP source above. + +If implementation changes a public export, type signature, member dependency, version, publish +filter, or any other publishable member, stop and rescope before continuing. A green dry-run is a +static prerequisite, never permission to publish. + +## Anti-patterns and fitness gates + +| AP/F | Plan | +| -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| A1/A2/A14, F-5 | Live export maps and `deno doc` lead; the doc/checker follows. Coverage policy prevents boolean false-green claims. | +| A7/AP-2/AP-9 | Reuse Deno, the existing mapping/tasks/gates/workflow, and the three canonical generators. Add no generator or second inventory. | +| AP-18 | Negative checks assert semantic omitted/invented names and exit behavior, not giant full-page snapshots. | +| F-6 | Canonical workspace publish dry-run plus per-member JSR inspection; preserve sanctioned/pre-existing findings. | +| F-7 | Reference accuracy improves, but package-source doc-lint baselines remain red and are not mislabeled PASS. | +| F-19 | Contracted check/test/quality evidence comes from repository wrappers/receipts; empty selection refuses. | +| F-CLI-1..31 | No CLI command/API shape changes. The existing generated agent-docs asset is refreshed through its owner; no new barrel, adapter, or command surface is introduced. | + +## Risk register + +| Risk | Mitigation | +| -------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Exclusion list becomes a hiding place | Require complete mode, exact exported names, sorted reason-bearing groups, reject unknown names/empty reasons, and Tier-A review every Fresh omission. | +| Markdown parser mistakes prose tables for exports | D5 exact header boundary plus negative field/prop table probe; never quiet false positives with exclusions. | +| Duplicate symbol re-exports across root/subpaths inflate or conflict | Preserve Set de-duplication while checking every entrypoint derived from `deno.json.exports`. | +| Page truth changes while hardcoded count stays green | Do not encode 168 as a permanent expected constant; derive it every run and report the measured count. | +| Gate-catalog indirection is mistaken for absent enforcement | PR/research record the complete non-draft CI chain; S2 improves discoverability without claiming enforcement as leaf-earned. | +| Pages CI duplicates or bypasses local gate | Both edges call the same named task; `docs:accuracy` remains the enforced aggregate and Pages gets one root-cwd direct step under `env.RUN`. | +| Workflow or generator verification requires an unauthorized edit | Run existing tests/generators unchanged. If they require source changes outside the **seventeen authorized** paths, stop for rescope. The checker test path remains assertions-only. | +| Broad generator manifests create unrelated churn | Accept only the four scratch-verified outputs. Compare first/second regeneration diffs and refuse an eighteenth path; do not run the unrelated baseline-red MCP export-corpus generator. | +| Existing package JSR/doc-lint debt is mistaken for regression or silently waived | Record baseline raw reds in research/JSR table and compare final results; do not weaken checker/audit settings or enter package source. | +| Large Fresh reference edit renders poorly | Docs format/build/links are required; browser remains coordinator-classified and may be granted externally. | +| Lock or package surface churn appears during validation | Direct diff audit; do not stage `deno.lock`; stop if exports, pins, versions, or unrelated publishable source changes. | + +## Explicit deferrals and non-scope + +- `docs/exports` creation or any new hand-invented inventory artifact. The four existing canonical + generated mirrors authorized by SA-3 are explicitly in scope. +- The already-correct Contracts root exports, `contract-primitives.ts` JSDoc, CRUD examples, and + entrypoint self-documentation. The four incorrect implementation imports are explicitly in S1, not + deferred. +- Contracts reference-page prose outside the frozen surface. +- Fresh UI package source, namespace/type exports, doc-lint/slow-type/structure remediation, visual + design, component behavior, CSS, or registry contents. Only its already-edited reference page + propagates into the four SA-3 mirrors. +- `packages/mcp/src/infrastructure/export-surfaces/export-surface-corpus.generated.ts`: its + base/head regenerated bytes are identical and its freshness red predates the leaf. Do not + regenerate, stage, or waive it. +- MySQL/#1293/#1112 paths and acceptance. +- Symbol-complete prose expansion for unrelated entrypoint-only package mappings; their policy must + become explicit in this leaf, but their pages do not enter scope. +- New/edited tests outside the frozen paths **except** the single path authorized by SA-1, + `.llm/tools/docs/check-exports-drift_test.ts` (test assertions only); dependency/version/catalog/ + lock changes, doctrine/debt, central milestone state, issue checkbox mutation, merge, publish, + ready flip, or release work. +- Aspire, Docker, browser execution, `e2e:cli`, scaffold/static/runtime smokes. + +## Evaluation judgement + +PLAN-EVAL cycle 1 returned **`FAIL_PLAN`** at evaluator commit `5d229e0f3`; the coordinator then +ruled B1 and N1-N5. PLAN-EVAL cycle 2 returned **`PASS`** at evaluator commit `45c249b9c`, after +which S1-S3 and the refusal-test repair were implemented and evaluated. Those records remain +append-only. + +IMPL-EVAL later passed at `ee67d12b4`, but that PASS is pre-finding evidence only: CI then exposed +the missing generated publication cascade, readiness was revoked, and the PR returned to draft +`status:impl`. It is not amended or presented as attesting the future generated-content head. + +**SA-3 gate:** the coordinator explicitly requires fresh Tier-A on this plan-only amendment before +any generation. No new PLAN-EVAL is author-launched or assumed. After the four generated files and +coherent receipts land, a fresh **delta IMPL-EVAL is required** before readiness can be restored; +that grant, dispatch, and verdict are coordinator-owned. Close-gate, issue boxes, labels, and draft +state remain untouched. diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/agent-docs-prose.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/agent-docs-prose.json new file mode 100644 index 0000000000..66ab2773fe --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/agent-docs-prose.json @@ -0,0 +1,36 @@ +{ + "gateId": "agent-docs-prose", + "invocationId": "reference-export-base-refresh-agent-docs-prose", + "argv": [ + "deno", + "task", + "check:agent-docs-prose" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "actualGitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "timeoutMs": 1800000, + "runnerIdentity": "worker:875120", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "c17103deb1088fdc94199e8048bafce267df25c688df2095613849307e81e242", + "lifecycleId": "worker:875120:reference-export-base-refresh-agent-docs-prose:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T20:51:45.372Z", + "startedAt": "2026-08-15T20:51:45.374Z", + "finishedAt": "2026-08-15T20:51:55.388Z", + "durationMs": 10014, + "exitCode": 0, + "stdout": { + "bytes": 47933, + "sha256": "057cdaabf9e5bf8657ba0aa18869eecc8fc813d8f7678c3739da2cf2431212b9", + "tail": "9ef51.pf_index <- (generated)\n🔥 /pagefind/index/en_cffb3a8.pf_index <- (generated)\n🔥 /pagefind/index/en_ebc6c8a.pf_index <- (generated)\n🔥 /pagefind/index/en_827c2ae.pf_index <- (generated)\n🔥 /pagefind/index/en_e5c5363.pf_index <- (generated)\n🔥 /pagefind/index/en_1665933.pf_index <- (generated)\n🔥 /pagefind/index/en_c9f0b88.pf_index <- (generated)\n🔥 /pagefind/index/en_cc7e3c8.pf_index <- (generated)\n🔥 /pagefind/index/en_44bae1a.pf_index <- (generated)\n🔥 /pagefind/index/en_722f72b.pf_index <- (generated)\n🔥 /pagefind/index/en_7edd91a.pf_index <- (generated)\n🔥 /pagefind/index/en_8c303c8.pf_index <- (generated)\n🔥 /pagefind/index/en_14836ef.pf_index <- (generated)\n🔥 /pagefind/index/en_70b747c.pf_index <- (generated)\n🔥 /pagefind/index/en_5cbb33a.pf_index <- (generated)\n🔥 /pagefind/index/en_f6d8f76.pf_index <- (generated)\n🔥 /pagefind/index/en_20859fe.pf_index <- (generated)\n🔥 /pagefind/index/en_83b924b.pf_index <- (generated)\n🔥 /pagefind/index/en_b15e627.pf_index <- (generated)\n🔥 /pagefind/index/en_e14780e.pf_index <- (generated)\n🔥 /pagefind/index/en_f46bbdb.pf_index <- (generated)\n🔥 /pagefind/index/en_bcbe7a9.pf_index <- (generated)\n🔥 /pagefind/index/en_ce24ff1.pf_index <- (generated)\n🔥 /pagefind/index/en_f26669c.pf_index <- (generated)\n🔥 /pagefind/pagefind.js <- (generated)\n🔥 /pagefind/pagefind-highlight.js <- (generated)\n🔥 /pagefind/pagefind-ui.js <- (generated)\n🔥 /pagefind/pagefind-ui.css <- (generated)\n🔥 /pagefind/pagefind-modular-ui.js <- (generated)\n🔥 /pagefind/pagefind-modular-ui.css <- (generated)\n🔥 /pagefind/wasm.unknown.pagefind <- (generated)\n🔥 /pagefind/pagefind-entry.json <- (generated)\n🔥 /glossary/index.md <- (generated)\n🔥 /how-to/ <- /how-to/index.md\n🔥 /tutorials/ <- /tutorials/index.md\n🔥 /tutorials/workspace/ <- /tutorials/workspace/index.md\n🔥 /tutorials/workspace/04-provision-job/ <- /tutorials/workspace/04-provision-job.md\n🔥 /tutorials/workspace/05-route-authz/ <- /tutorials/workspace/05-route-authz.md\n🔥 /tutorials/workspace/06-deploy/ <- /tutorials/workspace/06-deploy.md\n🔥 /tutorials/workspace/01-scaffold/ <- /tutorials/workspace/01-scaffold.md\n🔥 /tutorials/workspace/02-auth/ <- /tutorials/workspace/02-auth.md\n🔥 /tutorials/workspace/03-workspace-data/ <- /tutorials/workspace/03-workspace-data.md\n🔥 /tutorials/chat/ <- /tutorials/chat/index.md\n🔥 /tutorials/chat/04-tool-call/ <- /tutorials/chat/04-tool-call.md\n🔥 /tutorials/chat/03-chat-ui/ <- /tutorials/chat/03-chat-ui.md\n🔥 /tutorials/chat/05-mcp/ <- /tutorials/chat/05-mcp.md\n🔥 /tutorials/chat/01-scaffold/ <- /tutorials/chat/01-scaffold.md\n🔥 /tutorials/chat/06-live-streaming/ <- /tutorials/chat/06-live-streaming.md\n🔥 /tutorials/chat/02-durable-chat-route/ <- /tutorials/chat/02-durable-chat-route.md\n🔥 /tutorials/live-dashboard/04-definePage-QueryIsland/ <- /tutorials/live-dashboard/04-definePage-QueryIsland.md\n🔥 /tutorials/live-dashboard/ <- /tutorials/live-dashboard/index.md\n🔥 /tutorials/live-dashboard/06-deploy/ <- /tutorials/live-dashboard/06-deploy.md\n🔥 /tutorials/live-dashboard/01-scaffold/ <- /tutorials/live-dashboard/01-scaffold.md\n🔥 /tutorials/live-dashboard/02-contract-to-service/ <- /tutorials/live-dashboard/02-contract-to-service.md\n🔥 /tutorials/live-dashboard/03-sdk-cache-first-query/ <- /tutorials/live-dashboard/03-sdk-cache-first-query.md\n🔥 /tutorials/live-dashboard/05-live-stream/ <- /tutorials/live-dashboard/05-live-stream.md\n🔥 /tutorials/eis-chat/ <- /tutorials/eis-chat/index.md\n🔥 /tutorials/eis-chat/01-scaffold/ <- /tutorials/eis-chat/01-scaffold.md\n🔥 /tutorials/eis-chat/03-deliver-worker/ <- /tutorials/eis-chat/03-deliver-worker.md\n🔥 /tutorials/eis-chat/02-message-contract/ <- /tutorials/eis-chat/02-message-contract.md\n🔥 /tutorials/eis-chat/04-live-stream/ <- /tutorials/eis-chat/04-live-stream.md\n🔥 /tutorials/erp-sync/ <- /tutorials/erp-sync/index.md\n🔥 /tutorials/erp-sync/02-import-job/ <- /tutorials/erp-sync/02-import-job.md\n🔥 /tutorials/erp-sync/01-scaffold/ <- /tutorials/erp-sync/01-scaffold.md\n🔥 /tutorials/erp-sync/03-polyglot-transform/ <- /tutorials/erp-sync/03-polyglot-transform.md\n🔥 /tutorials/erp-sync/05-deploy/ <- /tutorials/erp-sync/05-deploy.md\n🔥 /tutorials/erp-sync/04-queue-and-cron/ <- /tutorials/erp-sync/04-queue-and-cron.md\n🔥 /tutorials/storefront/04-checkout-saga/ <- /tutorials/storefront/04-checkout-saga.md\n🔥 /tutorials/storefront/ <- /tutorials/storefront/index.md\n🔥 /tutorials/storefront/06-storefront-ui/ <- /tutorials/storefront/06-storefront-ui.md\n🔥 /tutorials/storefront/01-scaffold/ <- /tutorials/storefront/01-scaffold.md\n🔥 /tutorials/storefront/07-deploy/ <- /tutorials/storefront/07-deploy.md\n🔥 /tutorials/storefront/02-catalog-service/ <- /tutorials/storefront/02-catalog-service.md\n🔥 /tutorials/storefront/05-shipping-webhook/ <- /tutorials/storefront/05-shipping-webhook.md\n🔥 /tutorials/storefront/03-cart-contracts/ <- /tutorials/storefront/03-cart-contracts.md\n🔥 /why/ <- /why.vto\n🔥 /quickstart/aspire/ <- /quickstart/aspire.md\n🔥 /ai/how-to/ <- /ai/how-to/index.md\n🔥 /ai/how-to/build-a-durable-chat/ <- /ai/how-to/build-a-durable-chat.md\n🔥 /ai/agent-tooling/ <- /ai/agent-tooling.md\n🔥 /ai/ <- /ai/index.md\n🔥 /ai/durable-chat/ <- /ai/durable-chat.md\n🔥 /ai/mcp/ <- /ai/mcp.md\n🔥 /ai/engine/ <- /ai/engine.md\n🔥 /ai/chat-ui/ <- /ai/chat-ui.md\n🔥 /quickstart/ <- /quickstart.vto\n🔥 /comparisons/ <- /comparisons/index.md\n🔥 /comparisons/backend/ <- /comparisons/backend.md\n🔥 /comparisons/frontend/ <- /comparisons/frontend.md\n🔥 /cli-reference/ <- /cli-reference.md\n🔥 /durable-workflows/how-to/ <- /durable-workflows/how-to/index.md\n🔥 /durable-workflows/how-to/publish-a-durable-stream/ <- /durable-workflows/how-to/publish-a-durable-stream.md\n🔥 /durable-workflows/how-to/build-a-validated-ingestion-queue/ <- /durable-workflows/how-to/build-a-validated-ingestion-queue.md\n🔥 /durable-workflows/streams/ <- /durable-workflows/streams.md\n🔥 /durable-workflows/ <- /durable-workflows/index.md\n🔥 /durable-workflows/sagas/ <- /durable-workflows/sagas.md\n🔥 /durable-workflows/triggers/ <- /durable-workflows/triggers.md\n🔥 / <- /index.vto\n🔥 /concepts/ <- /concepts.vto\n🔥 /reference/queue/ <- /reference/queue/index.md\n🔥 /reference/auth-workos/ <- /reference/auth-workos/index.md\n🔥 /reference/mcp/ <- /reference/mcp/index.md\n🔥 /reference/ai/skills/ <- /reference/ai/skills.md\n🔥 /reference/ai/ <- /reference/ai/index.md\n🔥 /assets/diagrams/polyglot-task-execution.svg <- /assets/diagrams/polyglot-task-execution.svg\n🔥 /assets/diagrams/architecture-overview.svg <- /assets/diagrams/architecture-overview.svg\n🔥 /styles/tokens.css <- /styles/tokens.css\n🔥 /assets/diagrams/aspire-resource-graph.svg <- /assets/diagrams/aspire-resource-graph.svg\n🔥 /assets/diagrams/queue-worker-scheduler.svg <- /assets/diagrams/queue-worker-scheduler.svg\n🔥 /assets/diagrams/request-lifecycle.svg <- /assets/diagrams/request-lifecycle.svg\n🔥 /assets/diagrams/fresh-page-model.svg <- /assets/diagrams/fresh-page-model.svg\n🔥 /assets/diagrams/trigger-ingress-flow.svg <- /assets/diagrams/trigger-ingress-flow.svg\n🔥 /favicon.svg <- /favicon.svg\n🔥 /assets/diagrams/sdk-data-flow.svg <- /assets/diagrams/sdk-data-flow.svg\n🔥 /assets/diagrams/otel-traceparent.svg <- /assets/diagrams/otel-traceparent.svg\n🔥 /assets/diagrams/contract-flow.svg <- /assets/diagrams/contract-flow.svg\n🔥 /assets/diagrams/runtime-config-resolution.svg <- /assets/diagrams/runtime-config-resolution.svg\n🔥 /styles/docs.css <- /styles/docs.css\n🔥 /assets/diagrams/streams-pipeline.svg <- /assets/diagrams/streams-pipeline.svg\n🔥 /assets/diagrams/database-schema-aggregation.svg <- /assets/diagrams/database-schema-aggregation.svg\n🔥 /assets/diagrams/auth-flow.svg <- /assets/diagrams/auth-flow.svg\n🔥 /assets/diagrams/plugin-thread-isolation.svg <- /assets/diagrams/plugin-thread-isolation.svg\n🔥 /assets/diagrams/saga-state-machine.svg <- /assets/diagrams/saga-state-machine.svg\n🍾 Site built into _site\n 638 files generated in 8.82 seconds\nRendered output: OK (homepage semantics; 227 HTML files; 4 documented-syntax allowances)\n{\"fresh\":true,\"stalePaths\":[],\"provenance\":{\"schemaVersion\":1,\"version\":\"0.0.6\",\"sourceCommit\":\"0d4c82d6e\",\"extractionTimestamp\":\"2026-08-15T20:40:35.830Z\",\"files\":[\"context/01-how-the-web-became-the-default.mdx\",\"context/02-how-the-web-stack-grew-up.mdx\",\"llms-full.txt\",\"llms.txt\",\"pages/ai/agent-tooling/index.md\",\"pages/ai/chat-ui/index.md\",\"pages/ai/durable-chat/index.md\",\"pages/ai/engine/index.md\",\"pages/ai/how-to/build-a-durable-chat/index.md\",\"pages/ai/how-to/index.md\",\"pages/ai/index.md\",\"pages/ai/mcp/index.md\",\"pages/background-processing/how-to/add-a-task-runtime-adapter/index.md\",\"pages/background-processing/how-to/index.md\",\"pages/background-processing/how-to/restrict-worker-task-permissions/index.md\",\"pages/background-processing/how-to/run-a-polyglot-task/index.md\",\"pages/background-processing/how-to/tune-worker-runtime/index.md\",\"pages/background-processing/index.md\",\"pages/background-processing/polyglot-tasks/index.md\",\"pages/background-processing/workers/index.md\",\"pages/cli-reference/index.md\",\"pages/comparisons/backend/index.md\",\"pages/comparisons/frontend/index.md\",\"pages/comparisons/index.md\",\"pages/concepts/index.md\",\"pages/data-persistence/database/index.md\",\"pages/data-persistence/how-to/choose-a-queue-provider/index.md\",\"pages/data-persistence/how-to/database-migration/index.md\",\"pages/data-persistence/how-to/index.md\",\"pages/data-persistence/how-to/queue-kv-cron/index.md\",\"pages/data-persistence/how-to/use-a-second-database/index.md\",\"pages/data-persistence/index.md\",\"pages/data-persistence/kv-queues-cron/index.md\",\"pages/durable-workflows/how-to/build-a-validated-ingestion-queue/index.md\",\"pages/durable-workflows/how-to/index.md\",\"pages/durable-workflows/how-to/publish-a-durable-stream/index.md\",\"pages/durable-workflows/index.md\",\"pages/durable-workflows/sagas/index.md\",\"pages/durable-workflows/streams/index.md\",\"pages/durable-workflows/triggers/index.md\",\"pages/explanation/architecture/index.md\",\"pages/explanation/aspire/index.md\",\"pages/explanation/auth-model/index.md\",\"pages/explanation/compared/index.md\",\"pages/explanation/contracts/index.md\",\"pages/explanation/durability-model/index.md\",\"pages/explanation/index.md\",\"pages/explanation/observability/index.md\",\"pages/explanation/plugin-system/index.md\",\"pages/glossary/index.md\",\"pages/how-to/index.md\",\"pages/identity-access/auth/index.md\",\"pages/identity-access/better-auth-plugins/index.md\",\"pages/identity-access/how-to/add-authentication/index.md\",\"pages/identity-access/how-to/index.md\",\"pages/identity-access/index.md\",\"pages/identity-access/session-lifecycles/index.md\",\"pages/index.md\",\"pages/observability/how-to/add-opentelemetry/index.md\",\"pages/observability/how-to/index.md\",\"pages/observability/index.md\",\"pages/observability/telemetry/index.md\",\"pages/orchestration-runtime/cli-scaffold/index.md\",\"pages/orchestration-runtime/how-to/add-a-plugin/index.md\",\"pages/orchestration-runtime/how-to/author-a-plugin/index.md\",\"pages/orchestration-runtime/how-to/deno-lsp-code-intelligence/index.md\",\"pages/orchestration-runtime/how-to/deploy-deno-deploy/index.md\",\"pages/orchestration-runtime/how-to/deploy-local-aspire/index.md\",\"pages/orchestration-runtime/how-to/deploy/index.md\",\"pages/orchestration-runtime/how-to/graceful-shutdown/index.md\",\"pages/orchestration-runtime/how-to/index.md\",\"pages/orchestration-runtime/how-to/roll-out-runtime-overrides/index.md\",\"pages/orchestration-runtime/index.md\",\"pages/orchestration-runtime/runtime-config/index.md\",\"pages/quickstart/aspire/index.md\",\"pages/quickstart/index.md\",\"pages/reference/ai/index.md\",\"pages/reference/ai/skills/index.md\",\"pages/reference/aspire/index.md\",\"pages/reference/auth-better-auth/index.md\",\"pages/reference/auth-kv-oauth/index.md\",\"pages/reference/auth-workos/index.md\",\"pages/reference/auth/index.md\",\"pages/reference/cli/commands/index.md\",\"pages/reference/cli/index.md\",\"pages/reference/config/index.md\",\"pages/reference/contracts/index.md\",\"pages/reference/cron/index.md\",\"pages/reference/database/index.md\",\"pages/reference/fresh-ui/index.md\",\"pages/reference/fresh/index.md\",\"pages/reference/index.md\",\"pages/reference/kv/index.md\",\"pages/reference/logger/index.md\",\"pages/reference/mcp/index.md\",\"pages/reference/plugin-ai-core/index.md\",\"pages/reference/plugin-ai/index.md\",\"pages/reference/plugin-auth-core/index.md\",\"pages/reference/plugin-auth/index.md\",\"pages/reference/plugin-sagas-core/index.md\",\"pages/reference/plugin-streams-core/index.md\",\"pages/reference/plugin-triggers-core/index.md\",\"pages/reference/plugin-workers-core/index.md\",\"pages/reference/plugin/index.md\",\"pages/reference/prisma-adapter-mysql/index.md\",\"pages/reference/queue/index.md\",\"pages/reference/runtime-config/index.md\",\"pages/reference/sagas/index.md\",\"pages/reference/sdk/index.md\",\"pages/reference/service/index.md\",\"pages/reference/streams/index.md\",\"pages/reference/telemetry/index.md\",\"pages/reference/triggers/index.md\",\"pages/reference/watchers/index.md\",\"pages/reference/workers/index.md\",\"pages/services-sdk/how-to/add-a-service/index.md\",\"pages/services-sdk/how-to/discover-services/index.md\",\"pages/services-sdk/how-to/expose-openapi-scalar/index.md\",\"pages/services-sdk/how-to/index.md\",\"pages/services-sdk/index.md\",\"pages/services-sdk/sdk/index.md\",\"pages/services-sdk/services/index.md\",\"pages/tutorials/chat/01-scaffold/index.md\",\"pages/tutorials/chat/02-durable-chat-route/index.md\",\"pages/tutorials/chat/03-chat-ui/index.md\",\"pages/tutorials/chat/04-tool-call/index.md\",\"pages/tutorials/chat/05-mcp/index.md\",\"pages/tutorials/chat/06-live-streaming/index.md\",\"pages/tutorials/chat/index.md\",\"pages/tutorials/erp-sync/01-scaffold/index.md\",\"pages/tutorials/erp-sync/02-import-job/index.md\",\"pages/tutorials/erp-sync/03-polyglot-transform/index.md\",\"pages/tutorials/erp-sync/04-queue-and-cron/index.md\",\"pages/tutorials/erp-sync/05-deploy/index.md\",\"pages/tutorials/erp-sync/index.md\",\"pages/tutorials/index.md\",\"pages/tutorials/live-dashboard/01-scaffold/index.md\",\"pages/tutorials/live-dashboard/02-contract-to-service/index.md\",\"pages/tutorials/live-dashboard/03-sdk-cache-first-query/index.md\",\"pages/tutorials/live-dashboard/04-definePage-QueryIsland/index.md\",\"pages/tutorials/live-dashboard/05-live-stream/index.md\",\"pages/tutorials/live-dashboard/06-deploy/index.md\",\"pages/tutorials/live-dashboard/index.md\",\"pages/tutorials/storefront/01-scaffold/index.md\",\"pages/tutorials/storefront/02-catalog-service/index.md\",\"pages/tutorials/storefront/03-cart-contracts/index.md\",\"pages/tutorials/storefront/04-checkout-saga/index.md\",\"pages/tutorials/storefront/05-shipping-webhook/index.md\",\"pages/tutorials/storefront/06-storefront-ui/index.md\",\"pages/tutorials/storefront/07-deploy/index.md\",\"pages/tutorials/storefront/index.md\",\"pages/tutorials/workspace/01-scaffold/index.md\",\"pages/tutorials/workspace/02-auth/index.md\",\"pages/tutorials/workspace/03-workspace-data/index.md\",\"pages/tutorials/workspace/04-provision-job/index.md\",\"pages/tutorials/workspace/05-route-authz/index.md\",\"pages/tutorials/workspace/06-deploy/index.md\",\"pages/tutorials/workspace/index.md\",\"pages/web-layer/builders/index.md\",\"pages/web-layer/defer-streaming-ui/index.md\",\"pages/web-layer/error/index.md\",\"pages/web-layer/examples/index.md\",\"pages/web-layer/form/index.md\",\"pages/web-layer/fresh-ui/index.md\",\"pages/web-layer/how-to/build-a-desktop-frontend/index.md\",\"pages/web-layer/how-to/build-a-server-validated-form/index.md\",\"pages/web-layer/how-to/customize-fresh-ui/index.md\",\"pages/web-layer/how-to/index.md\",\"pages/web-layer/index.md\",\"pages/web-layer/interactive/index.md\",\"pages/web-layer/layers/index.md\",\"pages/web-layer/partials/index.md\",\"pages/web-layer/query-bridge/index.md\",\"pages/web-layer/query/index.md\",\"pages/web-layer/resources/index.md\",\"pages/web-layer/response/index.md\",\"pages/web-layer/route/index.md\",\"pages/web-layer/server/index.md\",\"pages/web-layer/testing/index.md\",\"pages/web-layer/vite/index.md\",\"pages/why/index.md\"],\"uncompressedBytes\":4770349,\"compressedBytes\":1368351,\"sha256\":\"c1d095a62e72555356d346d78848bff144ce9773c38eb9cd95f2d406b28174b3\"}}\n", + "truncated": true + }, + "stderr": { + "bytes": 2242, + "sha256": "8cfffaebeb6dfcc670e1a943cc09dee80cf7aceef5be0c871eeb7e1877842833", + "tail": "Task check:agent-docs-prose deno task gen:agent-docs-prose --check\nTask gen:agent-docs-prose deno task --cwd docs/site build && deno run --no-lock --allow-read --allow-write --allow-run=git .llm/tools/docs/build-agent-docs-bundle.ts --site-dir docs/site/_site '--check'\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\nTask build deno task check:source-format && deno task lume && deno task check:rendered-output\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\nTask check:source-format deno run --no-lock --allow-read _plugins/check-source-format.ts .\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\nTask lume echo \"import 'lume/cli.ts'\" | deno run --unstable-temporal -A -\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\nTask check:rendered-output deno run --no-lock --allow-read _plugins/check-rendered-output.ts _site/index.html\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/arch-check.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/arch-check.json new file mode 100644 index 0000000000..b467155d93 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/arch-check.json @@ -0,0 +1,36 @@ +{ + "gateId": "arch-check", + "invocationId": "reference-export-base-refresh-arch-check", + "argv": [ + "deno", + "task", + "arch:check" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "actualGitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "timeoutMs": 1800000, + "runnerIdentity": "worker:873279", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "33125302ff9ee0a96bd49928df487b5df1577a02871517a4d00d0b38003b8b6f", + "lifecycleId": "worker:873279:reference-export-base-refresh-arch-check:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T20:51:05.224Z", + "startedAt": "2026-08-15T20:51:05.228Z", + "finishedAt": "2026-08-15T20:51:13.431Z", + "durationMs": 8204, + "exitCode": 0, + "stdout": { + "bytes": 39909, + "sha256": "d77dafaa286327a322f3f2086c602375ed79ec21ba740af7071b1a5ab9a5d607", + "tail": " instead (e2e/suites/quickstart/quickstart-walk-suite.ts)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/kernel/adapters/database/scaffolder.ts:44)\n# Doctrine readiness — config\n FAIL=0 WARN=2 INFO=1\n WARN A8/AP-1/F-1: file is 635 lines (cap 300) — split into smaller single-reason files (src/domain/config-section-types.ts)\n WARN A8/AP-1/F-1: file is 317 lines (cap 300) — split into smaller single-reason files (src/domain/schemas/deploy-schema.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — contracts\n FAIL=0 WARN=2 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A1/A2/A7: exports Result/Either/Option-style contract — keep it package-specific, documented, and inline unless multiple real consumers justify a shared contract (src/domain/result.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — cron\n FAIL=0 WARN=1 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — database\n FAIL=0 WARN=7 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 529 lines (cap 500) — split into smaller single-reason files (adapters/mssql.adapter.ts)\n WARN A8/AP-1/F-1: file is 640 lines (cap 500) — split into smaller single-reason files (extensions/sql-json.extension.ts)\n WARN A8/AP-1/F-1: file is 555 lines (cap 500) — split into smaller single-reason files (scripts/fix-zod-imports.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (scripts/migrate.ts)\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (scripts/generate-zod.ts)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (extensions/sql-json.extension.ts:639)\n# Doctrine readiness — fresh\n FAIL=0 WARN=3 INFO=1\n WARN A8/AP-1/F-1: file is 609 lines (cap 500) — split into smaller single-reason files (src/runtime/ai/create-chat-connection.ts)\n WARN A8/AP-1/F-1: file is 604 lines (cap 500) — split into smaller single-reason files (src/application/route/manifest.ts)\n WARN F-16: directory has 13 immediate children; doctrine cap is 12 (src/runtime/ai)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — fresh-ui\n FAIL=0 WARN=5 INFO=1\n WARN AP-16/F-11: forbidden folder name 'lib' — split into domain/, application/, or adapters/ aligned to a real concern (registry/lib)\n WARN A8/AP-1/F-1: file is 669 lines (cap 500) — split into smaller single-reason files (src/chat/parse-blocks.ts)\n WARN A8/AP-1/F-1: file is 1512 lines (cap 500) — split into smaller single-reason files (registry.manifest.ts)\n WARN F-16: directory has 16 immediate children; doctrine cap is 12\n WARN F-16: directory has 99 immediate children; doctrine cap is 12 (registry/components/ui)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — kv\n FAIL=0 WARN=5 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 827 lines (cap 500) — split into smaller single-reason files (adapters/redis.adapter.ts)\n WARN A8/AP-1/F-1: file is 674 lines (cap 500) — split into smaller single-reason files (adapters/denokv-bridge.ts)\n WARN A8/AP-1/F-1: file is 541 lines (cap 500) — split into smaller single-reason files (adapters/memory.adapter.ts)\n WARN A8/AP-1/F-1: file is 592 lines (cap 500) — split into smaller single-reason files (adapters/deno-kv.adapter.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — logger\n FAIL=0 WARN=1 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — mcp\n FAIL=0 WARN=3 INFO=1\n WARN A8/AP-1/F-1: file is 367 lines (cap 300) — split into smaller single-reason files (src/domain/tool-contracts.ts)\n WARN F-16: directory has 14 immediate children; doctrine cap is 12 (src/domain)\n WARN F-16: directory has 16 immediate children; doctrine cap is 12 (src/application/flows)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — plugin\n FAIL=0 WARN=3 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN F-16: directory has 17 immediate children; doctrine cap is 12 (src)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12 (src/config/domain)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — plugin-ai-core\n FAIL=0 WARN=1 INFO=0\n WARN A8/AP-1/F-1: file is 310 lines (cap 300) — split into smaller single-reason files (src/contracts/v1/ai.contract-schemas.ts)\n# Doctrine readiness — plugin-auth-core\n FAIL=0 WARN=2 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 519 lines (cap 500) — split into smaller single-reason files (src/contracts/v1/auth.contract.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — plugin-sagas-core\n FAIL=0 WARN=2 INFO=2\n WARN A8/AP-1/F-1: file is 739 lines (cap 500) — split into smaller single-reason files (src/contracts/v1/sagas.contract.ts)\n WARN F-16: directory has 19 immediate children; doctrine cap is 12 (src)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n# Doctrine readiness — plugin-streams-core\n FAIL=0 WARN=1 INFO=1\n WARN A8/AP-1/F-1: file is 515 lines (cap 500) — split into smaller single-reason files (src/application/durable-stream-producer-supervisor.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — plugin-triggers-core\n FAIL=0 WARN=3 INFO=2\n WARN A8/AP-1/F-1: file is 722 lines (cap 500) — split into smaller single-reason files (src/contracts/v1/triggers.contract.ts)\n WARN F-16: directory has 13 immediate children; doctrine cap is 12 (src/ports)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12 (src/runtime)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n# Doctrine readiness — plugin-workers-core\n FAIL=0 WARN=5 INFO=2\n WARN A8/AP-1/F-1: file is 305 lines (cap 300) — split into smaller single-reason files (src/domain/job-spec.ts)\n WARN A8/AP-1/F-1: file is 426 lines (cap 300) — split into smaller single-reason files (src/domain/task.ts)\n WARN A8/AP-1/F-1: file is 574 lines (cap 500) — split into smaller single-reason files (src/contracts/v1/workers.contract-definition.ts)\n WARN F-16: directory has 18 immediate children; doctrine cap is 12 (src)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12 (src/executor/adapters)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n# Doctrine readiness — prisma-adapter-mysql\n FAIL=0 WARN=2 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 809 lines (cap 500) — split into smaller single-reason files (src/adapter.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — queue\n FAIL=0 WARN=2 INFO=1\n WARN A8/AP-1/F-1: file is 785 lines (cap 500) — split into smaller single-reason files (adapters/kv-polling.adapter.ts)\n WARN A8/AP-1/F-1: file is 582 lines (cap 500) — split into smaller single-reason files (adapters/postgres.adapter.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — runtime-config\n FAIL=0 WARN=1 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — sdk\n FAIL=0 WARN=1 INFO=1\n WARN F-16: directory has 13 immediate children; doctrine cap is 12 (src)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — service\n FAIL=0 WARN=3 INFO=1\n WARN A5/AP-5/F-4: class Gq sits 3+ levels deep in inheritance chain — prefer composition\n WARN A5/AP-5/F-4: class dW sits 3+ levels deep in inheritance chain — prefer composition\n WARN A8/AP-1/F-1: file is 531 lines (cap 500) — split into smaller single-reason files (src/builder/service-builder-impl.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — telemetry\n FAIL=0 WARN=5 INFO=1\n WARN A8/AP-1/F-1: file is 539 lines (cap 500) — split into smaller single-reason files (src/instrumentation/scheduler.ts)\n WARN A8/AP-1/F-1: file is 670 lines (cap 500) — split into smaller single-reason files (src/instrumentation/worker.ts)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12\n WARN F-16: directory has 14 immediate children; doctrine cap is 12 (src/attributes)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (src/adapters/otel/otel-sdk.ts)\n# Doctrine readiness — watchers\n FAIL=0 WARN=1 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — ai\n FAIL=0 WARN=5 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (cli.ts)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/chat-route/chat-route.stub.ts:41)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:40)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:25)\n# Doctrine readiness — auth\n FAIL=0 WARN=5 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN F-16: directory has 13 immediate children; doctrine cap is 12\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (services/src/main.ts:54)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n# Doctrine readiness — sagas\n FAIL=0 WARN=8 INFO=2\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 374 lines (cap 300) — split into smaller single-reason files (services/src/routers/v1-types.ts)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (services/src/main.ts:46)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/saga/saga.stub.ts:60)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/saga/saga.stub.ts:95)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n# Doctrine readiness — streams\n FAIL=0 WARN=5 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/stream/stream.stub.ts:84)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/consumer/consumer.stub.ts:78)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n# Doctrine readiness — triggers\n FAIL=0 WARN=13 INFO=2\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN F-16: directory has 18 immediate children; doctrine cap is 12\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/scheduled/scheduled.stub.ts:43)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/file-watch/file-watch.stub.ts:43)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/webhook/webhook.stub.ts:46)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/webhook/webhook.stub.ts:109)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (jobs/file-relay.ts:167)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (jobs/staged-cleanup.ts:72)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (jobs/file-import.ts:177)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (generic-webhook.ts:44)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (webhook-validate-data.ts:35)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n# Doctrine readiness — workers\n FAIL=0 WARN=9 INFO=2\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN F-16: directory has 19 immediate children; doctrine cap is 12\n WARN F-16: directory has 19 immediate children; doctrine cap is 12 (worker)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (test-api.ts)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (services/src/main.ts:45)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/cli/official-sample-configuration.ts:409)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (jobs/health-check.ts:246)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n", + "truncated": true + }, + "stderr": { + "bytes": 485, + "sha256": "d383a582d1a3ab53409417a624b04062624331ae3ada6bd36a8fb15ed8e33cc6", + "tail": "Task arch:check deno task deps:check && deno run --allow-read --allow-run .llm/tools/fitness/check-doctrine.ts --all-roots\nTask deps:check deno run --allow-read .llm/tools/deps/scan-jsr-centralization.ts --fail-on-violation && deno run --allow-read .llm/tools/deps/audit-file-link.ts --fail-on-violation && deno run --allow-read .llm/tools/deps/scan-npm-catalog-compliance.ts && deno task deps:check:zod\nTask deps:check:zod deno run --allow-read .llm/tools/deps/check-zod-alignment.ts\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/assets-barrel.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/assets-barrel.json new file mode 100644 index 0000000000..34eaf4baae --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/assets-barrel.json @@ -0,0 +1,36 @@ +{ + "gateId": "assets-barrel", + "invocationId": "reference-export-base-refresh-assets-barrel", + "argv": [ + "deno", + "task", + "check:assets-barrel" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "actualGitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "timeoutMs": 1800000, + "runnerIdentity": "worker:875487", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "934b02dbe64cbb21e4a32e7bce356154ff992ee94330bf1289555e1cdb54a3f6", + "lifecycleId": "worker:875487:reference-export-base-refresh-assets-barrel:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T20:52:00.933Z", + "startedAt": "2026-08-15T20:52:00.937Z", + "finishedAt": "2026-08-15T20:52:01.860Z", + "durationMs": 923, + "exitCode": 0, + "stdout": { + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "tail": "", + "truncated": false + }, + "stderr": { + "bytes": 570, + "sha256": "6fc77d278be69f0dc20503a5435f98da17262e66cfb99a0b1b4cf25f75a8802d", + "tail": "Task check:assets-barrel deno task gen:assets-barrel && git diff --exit-code -- packages/cli/src/kernel/assets/embedded.generated.ts packages/cli/src/kernel/assets/skills.generated.ts packages/cli/src/kernel/assets/agent-tools.generated.ts packages/cli/src/kernel/assets/agent-docs.generated.ts packages/plugin/src/kernel/assets/embedded.generated.ts packages/fresh-ui/registry.generated.ts packages/service/src/primitives/scalar.generated.ts\nTask gen:assets-barrel deno run --no-lock --allow-read --allow-write --allow-run=deno .llm/tools/generate-cli-assets-barrel.ts\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/check.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/check.json new file mode 100644 index 0000000000..46f459a980 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/check.json @@ -0,0 +1,36 @@ +{ + "gateId": "check", + "invocationId": "reference-export-base-refresh-check", + "argv": [ + "deno", + "task", + "check" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "actualGitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "timeoutMs": 1800000, + "runnerIdentity": "worker:855158", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "6298df4c2ca1190351e2e7c0205bc8f962f84c2a69f9f3e9bdca812682683c96", + "lifecycleId": "worker:855158:reference-export-base-refresh-check:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T20:43:33.781Z", + "startedAt": "2026-08-15T20:43:33.787Z", + "finishedAt": "2026-08-15T20:45:23.057Z", + "durationMs": 105337, + "exitCode": 0, + "stdout": { + "bytes": 299, + "sha256": "86c552296d2f08af3f9992586422c5f834b525b99a5599df04710d5509e7210f", + "tail": "{\"source\":{\"mode\":\"selection\",\"cwd\":\"/home/codex/repos/netscript-007-reference-export\"},\"command\":\"deno check --unstable-kv \",\"selection\":{\"filesSelected\":2925,\"batches\":25,\"failedBatches\":0},\"summary\":{\"totalOccurrences\":0,\"uniqueOccurrences\":0,\"uniqueCodes\":0,\"uniquePaths\":0},\"groups\":[]}\n", + "truncated": false + }, + "stderr": { + "bytes": 192, + "sha256": "8e7cb67a36cfafde9a120b0109ba1f06cbe2c185d7d3fac8967000ed6e61dfec", + "tail": "Task check deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-check.ts --root packages --root plugins --ext ts,tsx --exclude \"^(.*(?:^|/)\\.generated/|.*(?:^|/)node_modules/)\"\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/docs-accuracy.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/docs-accuracy.json new file mode 100644 index 0000000000..8a87a7d877 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/docs-accuracy.json @@ -0,0 +1,36 @@ +{ + "gateId": "docs-accuracy", + "invocationId": "reference-export-base-refresh-docs-accuracy", + "argv": [ + "deno", + "task", + "docs:accuracy" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "actualGitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "timeoutMs": 1800000, + "runnerIdentity": "worker:874447", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "b165559f94f0d8d832998073806cb37db36324ad3787fea216b75cf9dd4dc21f", + "lifecycleId": "worker:874447:reference-export-base-refresh-docs-accuracy:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T20:51:35.204Z", + "startedAt": "2026-08-15T20:51:35.206Z", + "finishedAt": "2026-08-15T20:51:39.368Z", + "durationMs": 4162, + "exitCode": 0, + "stdout": { + "bytes": 277, + "sha256": "6697c7628277ab19e6aa705cf3f4a7a93f39cfa0c660c34726cac5de505cf043", + "tail": "docs accuracy: PASS (4 saga pages checked for stale claims, 199 published source pages, 181 shipped corpus files, one query dialect exception page, mutation-map columns, 91/91 root/direct public commands from 149 recursive paths, 6 valid @netscript/fresh root imports checked)\n", + "truncated": false + }, + "stderr": { + "bytes": 577, + "sha256": "5c84eae8ac33adda151be9910882a4f787efee99e29cab10e4cee274d63cf192", + "tail": "Task docs:accuracy deno run --no-lock --allow-read --allow-env --allow-run=deno .llm/tools/docs/check-accuracy-and-discoverability.ts\nWarning The following peer dependency issues were found:\n└─┬ @tanstack/ai-preact@0.10.4\n └── peer @tanstack/ai@^0.41.0: resolved to 0.39.1\n\nThese packages were resolved to a version that does not satisfy a peer dependency constraint, which can cause runtime errors. To silence this warning, install a compatible version or add an \"overrides\" entry to your package.json or deno.json.\nLearn more: https://docs.deno.com/go/peer-deps\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/docs-source-format-test.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/docs-source-format-test.json new file mode 100644 index 0000000000..0684695edb --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/docs-source-format-test.json @@ -0,0 +1,36 @@ +{ + "gateId": "docs-source-format-test", + "invocationId": "reference-export-base-refresh-docs-source-format-test", + "argv": [ + "deno", + "task", + "test:source-format" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export/docs/site", + "gitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "actualGitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "timeoutMs": 1800000, + "runnerIdentity": "worker:874131", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "56c5fa6b34d26b7a471a4e7bc432a72ac9e5347fabc7c38c608ad8444eb3a80c", + "lifecycleId": "worker:874131:reference-export-base-refresh-docs-source-format-test:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T20:51:23.567Z", + "startedAt": "2026-08-15T20:51:23.571Z", + "finishedAt": "2026-08-15T20:51:25.242Z", + "durationMs": 181, + "exitCode": 0, + "stdout": { + "bytes": 560, + "sha256": "71da5a96f460c1ed621fcd53589c6b2bedd06385c44ccd2dd8a6ebad10ae363b", + "tail": "running 6 tests from ./_plugins/check-source-format_test.ts\nrejects raw newlines inside quoted Vento component arguments ... ok (6ms)\nrejects Markdown headings in Vento pages without Markdown rendering ... ok (11ms)\naccepts multiline component objects whose individual strings stay valid ... ok (1ms)\nrejects literal Vento placeholders in any rendered page ... ok (1ms)\nallows only the bounded CLI string-template documentation tokens ... ok (1ms)\nrejects CLI documentation tokens beyond the bounded allowance ... ok (809µs)\n\nok | 6 passed | 0 failed (29ms)\n\n", + "truncated": false + }, + "stderr": { + "bytes": 566, + "sha256": "a6c0b3a4a9ce9ce036d0a94beeacb7bf156ebc6f0495ec9c1c7e6aa6314075e0", + "tail": "Warning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\nTask test:source-format deno test --no-lock --allow-read --allow-write _plugins/check-source-format_test.ts\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/docs-source-format.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/docs-source-format.json new file mode 100644 index 0000000000..561a82bb1e --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/docs-source-format.json @@ -0,0 +1,36 @@ +{ + "gateId": "docs-source-format", + "invocationId": "reference-export-base-refresh-docs-source-format", + "argv": [ + "deno", + "task", + "check:source-format" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export/docs/site", + "gitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "actualGitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "timeoutMs": 1800000, + "runnerIdentity": "worker:874048", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "b43b1bf184260a3f1be09aea9802fa533a92d8cb802187a932c83d594842a14f", + "lifecycleId": "worker:874048:reference-export-base-refresh-docs-source-format:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T20:51:19.362Z", + "startedAt": "2026-08-15T20:51:19.365Z", + "finishedAt": "2026-08-15T20:51:19.448Z", + "durationMs": 83, + "exitCode": 0, + "stdout": { + "bytes": 23, + "sha256": "a91dbfc7ba015ebd64902c27740032f3798207dc0ebae57d2526342b219899c5", + "tail": "Docs source format: OK\n", + "truncated": false + }, + "stderr": { + "bytes": 549, + "sha256": "e213b85f487a989efad13e7a5fc9ed5254f41a214e443e9ea8132796901dd6e1", + "tail": "Warning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\nTask check:source-format deno run --no-lock --allow-read _plugins/check-source-format.ts .\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/docs-tagline.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/docs-tagline.json new file mode 100644 index 0000000000..8ccf6bc674 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/docs-tagline.json @@ -0,0 +1,36 @@ +{ + "gateId": "docs-tagline", + "invocationId": "reference-export-base-refresh-docs-tagline", + "argv": [ + "deno", + "task", + "docs:tagline:check" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "actualGitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "timeoutMs": 1800000, + "runnerIdentity": "worker:874245", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "60c91e98d6eb11efdae740e9f5017c3c3a8615859ac310f2ce514c644e3575b6", + "lifecycleId": "worker:874245:reference-export-base-refresh-docs-tagline:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T20:51:30.036Z", + "startedAt": "2026-08-15T20:51:30.041Z", + "finishedAt": "2026-08-15T20:51:30.234Z", + "durationMs": 192, + "exitCode": 0, + "stdout": { + "bytes": 105, + "sha256": "a1d59212ae3a7b1d83d1120f6c2db1508896116ba56e5803fbb2be04f3a35f09", + "tail": "JSR tagline length gate — cap 250 bytes\n checked=36 over=0\n OK — every tagline lands whole on JSR.\n", + "truncated": false + }, + "stderr": { + "bytes": 115, + "sha256": "44b5df6596dfb4e9ead6020e23a6641ce5b5b9c98c73b34d9818108cfd959a86", + "tail": "Task docs:tagline:check deno run --no-lock --allow-read .llm/tools/validation/check-jsr-tagline-length.ts --pretty\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/publish-assets.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/publish-assets.json new file mode 100644 index 0000000000..e4a773a61e --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/publish-assets.json @@ -0,0 +1,36 @@ +{ + "gateId": "publish-assets", + "invocationId": "reference-export-base-refresh-publish-assets", + "argv": [ + "deno", + "task", + "check:publish-assets" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "actualGitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "timeoutMs": 1800000, + "runnerIdentity": "worker:875689", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "ac592ed8b1647b431995b6ab48f24f1c2e06a701d0210b3f2da4fbbe001cb296", + "lifecycleId": "worker:875689:reference-export-base-refresh-publish-assets:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T20:52:06.357Z", + "startedAt": "2026-08-15T20:52:06.360Z", + "finishedAt": "2026-08-15T20:52:06.746Z", + "durationMs": 386, + "exitCode": 0, + "stdout": { + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "tail": "", + "truncated": false + }, + "stderr": { + "bytes": 198, + "sha256": "70bc4b06374ff6f561f02b223ee735b7bf25bb21e4a9811a8183d6279a83735b", + "tail": "Task check:publish-assets deno task gen:publish-assets --check\nTask gen:publish-assets deno run --no-lock --allow-read --allow-write --allow-run=deno .llm/tools/generate-publish-assets.ts '--check'\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/publish-dry-run.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/publish-dry-run.json new file mode 100644 index 0000000000..396311f67a --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/publish-dry-run.json @@ -0,0 +1,36 @@ +{ + "gateId": "publish-dry-run", + "invocationId": "reference-export-base-refresh-publish-dry-run", + "argv": [ + "deno", + "task", + "publish:dry-run" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "actualGitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "timeoutMs": 1800000, + "runnerIdentity": "worker:876007", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "830615c1659e25f30ba8be80388b11b27cf641901e89285f0b818efc570eeb27", + "lifecycleId": "worker:876007:reference-export-base-refresh-publish-dry-run:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T20:52:11.399Z", + "startedAt": "2026-08-15T20:52:11.401Z", + "finishedAt": "2026-08-15T20:53:02.769Z", + "durationMs": 49936, + "exitCode": 0, + "stdout": { + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "tail": "", + "truncated": false + }, + "stderr": { + "bytes": 318631, + "sha256": "f0450150f80a51e68cbf5599e15004b736893f93ec7c020ffaa2ccb7390babd2", + "tail": "ts/stream-producer-random-port.ts (183B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-streams-core/src/ports/stream-producer-transport-port.ts (2.49KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-streams-core/src/public/mod.ts (2.39KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-streams-core/src/sse/mod.ts (1.35KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-streams-core/src/telemetry/attributes.ts (3.38KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-streams-core/src/telemetry/instrumentation.ts (11.92KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-streams-core/src/telemetry/mod.ts (1.18KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-streams-core/src/telemetry/producer-metrics.ts (8.25KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-streams-core/src/testing/memory-stream-producer.ts (3.47KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-streams-core/src/testing/mod.ts (365B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-streams-core/src/testing/topic-fixtures.ts (1.13KB)\nSimulating publish of @netscript/plugin-workers-core@0.0.6 with files:\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/README.md (7.89KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/deno.json (2.19KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/mod.ts (1.5KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/abstracts/job-dispatcher.ts (428B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/abstracts/job-lifecycle-adapter.ts (556B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/abstracts/job-scheduler.ts (874B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/abstracts/mod.ts (1.42KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/abstracts/registry.ts (444B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/abstracts/task-executor.ts (816B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/abstracts/task-instrumentation.ts (221B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/abstracts/task-runtime-adapter.ts (799B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/abstracts/worker-instrumentation.ts (942B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/abstracts/workers-command.ts (767B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/abstracts/workers-item-scaffolder.ts (568B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/builders/builder-types.ts (2.98KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/builders/job-builder.ts (9.68KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/builders/mod.ts (985B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/builders/task-builder.ts (7.81KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/builders/workflow-builder.ts (5.18KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/config/config-schema.ts (582B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/config/job-config.ts (3.87KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/config/mod.ts (1019B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/config/task-config.ts (3.77KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/config/workers-config.ts (6.01KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/contracts/v1/mod.ts (840B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/contracts/v1/workers.contract-definition.ts (19.83KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/contracts/v1/workers.contract-schemas.ts (8.92KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/contracts/v1/workers.contract-types.ts (4KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/contracts/v1/workers.contract.ts (953B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/domain/constants.ts (6.6KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/domain/cron.ts (3.17KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/domain/job-context.ts (432B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/domain/job-definition.ts (11.44KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/domain/job-handler.ts (514B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/domain/job-result.ts (1.24KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/domain/job-spec.ts (13.74KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/domain/mod.ts (3.4KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/domain/permissions.ts (2.83KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/domain/public-schema.ts (5.52KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/domain/task.ts (15.03KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/domain/workflow.ts (6.81KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/executor/adapters/argv-builder.ts (4.7KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/executor/adapters/cmd-runtime-adapter.ts (900B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/executor/adapters/command-spec.ts (1.37KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/executor/adapters/dax-process-runner.ts (5.89KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/executor/adapters/deno-runtime-adapter.ts (991B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/executor/adapters/dotnet-runtime-adapter.ts (667B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/executor/adapters/executable-runtime-adapter.ts (699B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/executor/adapters/log-classifier.ts (846B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/executor/adapters/mod.ts (1.08KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/executor/adapters/path-resolution.ts (1.21KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/executor/adapters/permission-flags.ts (1.07KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/executor/adapters/powershell-runtime-adapter.ts (698B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/executor/adapters/python-runtime-adapter.ts (670B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/executor/adapters/runtime-adapter-base.ts (2.38KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/executor/adapters/shell-runtime-adapter.ts (676B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/executor/executor-types.ts (4.15KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/executor/mod.ts (1.18KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/executor/multi-runtime-task-executor.ts (8.58KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/ports/job-storage-port.ts (510B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/ports/mod.ts (456B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/ports/scheduler-port.ts (319B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/ports/worker-idempotency-port.ts (1.64KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/ports/worker-port.ts (379B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/presets/mod.ts (790B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/presets/start-workers.ts (723B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/public/root.ts (13.47KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/registry/kv-job-registry.ts (6.3KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/registry/kv-task-registry.ts (4.08KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/registry/memory-job-registry.ts (1.94KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/registry/mod.ts (921B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/registry/registry-options.ts (890B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/registry/registry-types.ts (5.54KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/registry/registry.ts (474B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/runtime/composition-root.ts (4.65KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/runtime/in-process-job-runner.ts (1.36KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/runtime/job-dispatcher.ts (2.32KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/runtime/messages.ts (2.36KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/runtime/mod.ts (5.91KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/runtime/runtime-types.ts (11.18KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/runtime/worker-idempotency.ts (1.51KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/shutdown/mod.ts (290B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/shutdown/shutdown-manager.ts (4.12KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/state/execution-state.ts (12.07KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/state/mod.ts (384B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/stores/kv-worker-idempotency-store.ts (7.03KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/stores/mod.ts (562B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/streams/mod.ts (735B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/streams/producer.ts (4.67KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/streams/schema.ts (7.08KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/telemetry/attributes.ts (1.76KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/telemetry/instrumentation.ts (7.4KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/telemetry/job-tools.ts (3.38KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/telemetry/mod.ts (1.25KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/testing/job-fixtures.ts (4.58KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/testing/memory-job-storage.ts (1.69KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/testing/memory-worker.ts (2.59KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/testing/mod.ts (1.46KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/workflow/mod.ts (1.04KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/workflow/workflow-executor.ts (5.61KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/workflow/workflow-state.ts (2.56KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/workflow/workflow-step-runner.ts (2.96KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/plugin-workers-core/src/workflow/workflow-types.ts (1.89KB)\nSimulating publish of @netscript/auth-kv-oauth@0.0.6 with files:\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/auth-kv-oauth/README.md (6.04KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/auth-kv-oauth/deno.json (1.01KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/auth-kv-oauth/mod.ts (2.68KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/auth-kv-oauth/src/backend.ts (12.22KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/auth-kv-oauth/src/cookies.ts (3.54KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/auth-kv-oauth/src/crypto.ts (4.08KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/auth-kv-oauth/src/errors.ts (1.08KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/auth-kv-oauth/src/flow.ts (13.63KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/auth-kv-oauth/src/providers.ts (12.46KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/auth-kv-oauth/src/store.ts (8.64KB)\nSimulating publish of @netscript/logger@0.0.6 with files:\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/logger/README.md (4.57KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/logger/config.ts (3.35KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/logger/constants.ts (475B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/logger/creators.ts (3.85KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/logger/deno.json (998B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/logger/middleware.ts (6.7KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/logger/mod.ts (1.25KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/logger/orpc-plugin.ts (12.47KB)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/logger/orpc.ts (528B)\n file:///tmp/netscript-publish-dry-run-987286c4a0d30b4a/packages/logger/types.ts (1.21KB)\nSuccess Dry run complete\n", + "truncated": true + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/quality-job.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/quality-job.json new file mode 100644 index 0000000000..3da388b41b --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/quality-job.json @@ -0,0 +1,36 @@ +{ + "gateId": "quality-job", + "invocationId": "reference-export-base-refresh-quality-job", + "argv": [ + "deno", + "task", + "ci:quality" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "actualGitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "timeoutMs": 1800000, + "runnerIdentity": "worker:872296", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "7c470db6f9194530a1a671b959cefed2d969392927daa55aeca4979fbc03db61", + "lifecycleId": "worker:872296:reference-export-base-refresh-quality-job:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T20:50:47.537Z", + "startedAt": "2026-08-15T20:50:47.540Z", + "finishedAt": "2026-08-15T20:50:58.823Z", + "durationMs": 9772, + "exitCode": 0, + "stdout": { + "bytes": 26032, + "sha256": "8928a730f139cac608c2f0ac812373661eb4e5401de8ac81784301827f9797ee", + "tail": "telemetry/api@^1.9.0 outside package.json catalog: (catalog has ^1.9.1, inline use has ^1.9.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/consume-flow-b-stream.ts:11 packages/cli uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/consume-flow-b-stream.ts:11 packages/cli/e2e uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/ui-ai-gates.ts:140 packages/cli uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/ui-ai-gates.ts:140 packages/cli/e2e uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/ui-ai-gates.ts:174 packages/cli uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/ui-ai-gates.ts:174 packages/cli/e2e uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/contracts/deno.json:13 packages/contracts uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/deno.json:19 packages/fresh-ui uses npm:preact@^10.29.2 outside package.json catalog: (catalog has ^10.29.2)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/scripts/build-tokens.ts:1 packages/fresh-ui uses npm:style-dictionary@5.4.4 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/tests/registry/components/ui/desktop.test.tsx:2 packages/fresh-ui uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/tests/registry/islands/desktop-only.test.tsx:3 packages/fresh-ui uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/tests/runtime/accordion/accordion-render.test.tsx:2 packages/fresh-ui uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:42 packages/fresh uses npm:preact@^10.29.2 outside package.json catalog: (catalog has ^10.29.2)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:43 packages/fresh uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:45 packages/fresh uses npm:@durable-streams/state@^0.3.1 outside package.json catalog: (catalog has ^0.3.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:46 packages/fresh uses npm:@durable-streams/tanstack-ai-transport@^0.0.8 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:52 packages/fresh uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:53 packages/fresh uses npm:@preact/signals@2.9.2 outside package.json catalog: (catalog has 2.9.2)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:54 packages/fresh uses npm:@tanstack/ai@^0.39.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:55 packages/fresh uses npm:@tanstack/ai-preact@^0.10.1 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:56 packages/fresh uses npm:@tanstack/preact-query@^5.101.0 outside package.json catalog: (catalog has ^5.101.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:57 packages/fresh uses npm:@tanstack/query-core@^5.101.0 outside package.json catalog: (catalog has ^5.101.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:58 packages/fresh uses npm:@tanstack/react-db@^0.1.95 outside package.json catalog: (catalog has ^0.1.95)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:59 packages/fresh uses npm:vite@7.2.2 outside package.json catalog: (catalog has 7.2.2)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/src/application/vite/vite.test.ts:367 packages/fresh uses npm:/preact@10.29.7/hooks outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/logger/deno.json:20 packages/logger uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-ai-core/deno.json:11 packages/plugin-ai-core uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-ai-core/deno.json:12 packages/plugin-ai-core uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-auth-core/deno.json:18 packages/plugin-auth-core uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-auth-core/deno.json:19 packages/plugin-auth-core uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-sagas-core/src/stores/prisma-saga-store_integration_test.ts:2 packages/plugin-sagas-core uses npm:@prisma/adapter-pg@7.8.0 outside package.json catalog: (catalog has ^7.8.0, inline use has 7.8.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/deno.json:34 packages/plugin-workers-core uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/deno.json:35 packages/plugin-workers-core uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/executor/multi-runtime-task-executor_test.ts:1 packages/plugin-workers-core uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/executor/multi-runtime-task-executor_test.ts:2 packages/plugin-workers-core uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/streams/workers-streams_test.ts:1 packages/plugin-workers-core uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/streams/workers-streams_test.ts:2 packages/plugin-workers-core uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/streams/workers-streams_test.ts:3 packages/plugin-workers-core uses npm:@opentelemetry/core@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/streams/workers-streams_test.ts:4 packages/plugin-workers-core uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin/deno.json:28 packages/plugin uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin/deno.json:29 packages/plugin uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/queue/adapters/amqp.adapter.ts:10 packages/queue uses npm:amqplib@^0.10.3 outside package.json catalog: (catalog has ^2.0.1, inline use has ^0.10.3)\n [deps:check] WARN DEPS-NPM-CATALOG packages/queue/adapters/amqp.adapter.ts:11 packages/queue uses npm:amqplib@^0.10.3 outside package.json catalog: (catalog has ^2.0.1, inline use has ^0.10.3)\n [deps:check] WARN DEPS-NPM-CATALOG packages/queue/adapters/postgres.adapter.ts:9 packages/queue uses npm:pg@^8.21.0 outside package.json catalog: (catalog has ^8.21.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:31 packages/sdk uses npm:@orpc/client@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:32 packages/sdk uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:33 packages/sdk uses npm:@orpc/openapi@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:34 packages/sdk uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:35 packages/sdk uses npm:@orpc/tanstack-query@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:36 packages/sdk uses npm:@orpc/zod@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:37 packages/sdk uses npm:@tanstack/db@^0.6.8 outside package.json catalog: (catalog has ^0.6.8)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:38 packages/sdk uses npm:@tanstack/query-core@^5.101.0 outside package.json catalog: (catalog has ^5.101.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:39 packages/sdk uses npm:@tanstack/query-db-collection@^1.2.1 outside package.json catalog: (catalog has ^1.2.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/cache/cache-telemetry_test.ts:15 packages/sdk uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/cache/cache-telemetry_test.ts:16 packages/sdk uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/cache/cache-telemetry_test.ts:17 packages/sdk uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/type-fixtures/service-query-utils-upstream_type.ts:1 packages/sdk uses npm:@orpc/client@1.14.6 outside package.json catalog: (catalog has ^1.14.6, inline use has 1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/type-fixtures/service-query-utils-upstream_type.ts:2 packages/sdk uses npm:@orpc/tanstack-query@1.14.6 outside package.json catalog: (catalog has ^1.14.6, inline use has 1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/deno.json:22 packages/service uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/deno.json:23 packages/service uses npm:@orpc/openapi@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/deno.json:24 packages/service uses npm:@orpc/client@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/deno.json:25 packages/service uses npm:@orpc/zod@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/tests/hono-tracing_test.ts:2 packages/service uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/tests/hono-tracing_test.ts:3 packages/service uses npm:@opentelemetry/core@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/tests/hono-tracing_test.ts:4 packages/service uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/tests/hono-tracing_test.ts:5 packages/service uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/deno.json:28 packages/telemetry uses npm:@opentelemetry/semantic-conventions@1.41.1 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/adapters/otel_ai_telemetry_test.ts:2 packages/telemetry uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/adapters/otel_ai_telemetry_test.ts:6 packages/telemetry uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/hono/otel_middleware_test.ts:4 packages/telemetry uses npm:@opentelemetry/core@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/hono/otel_middleware_test.ts:5 packages/telemetry uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/hono/otel_middleware_test.ts:6 packages/telemetry uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG plugins/workers/jobs/job-tools_test.ts:2 plugins/workers uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG plugins/workers/jobs/job-tools_test.ts:3 plugins/workers uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG plugins/workers/jobs/job-tools_test.ts:4 plugins/workers uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] zod-alignment PASS instances=zod@3.25.76,zod@4.4.3 residual-v3=@ag-ui/core@0.0.52,@olli/kvdex@3.6.7\n [lint] {\"source\":{\"mode\":\"command\",\"cwd\":\"/home/codex/repos/netscript-007-reference-export\",\"exitCode\":0},\"selection\":{\"filesSelected\":2037,\"batches\":11},\"summary\":{\"totalOccurrences\":0,\"uniqueOccurrences\":0,\"uniqueRules\":0,\"uniquePaths\":0},\"groups\":[]}\n [check:emitted-samples] Checked 47 emitted TypeScript samples from 37 artifact paths.\n", + "truncated": true + }, + "stderr": { + "bytes": 6078, + "sha256": "ccdf304f24f54ea889df2b7aa412e913b3d15dc9877074d6ac5b2bc032cdb708", + "tail": "Task check deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-check.ts --root packages --root plugins --ext ts,tsx --exclude \"^(.*(?:^|/)\\.generated/|.*(?:^|/)node_modules/)\" (cached, inputs unchanged)\nTask check:emitted-samples deno run --allow-read --allow-write --allow-run .llm/tools/validation/check-emitted-samples.ts\nTask check:streams-types deno task --cwd packages/fresh check:streams-types\n [check:streams-types] Task check:streams-types deno check --no-lock --config ./tests/type-fixtures/streamdb-consumer-deno.json --unstable-kv ./tests/type-fixtures/streamdb-wrapper_type.ts\nTask lint deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-lint.ts --root packages --root plugins --ext ts,tsx --exclude \"^(packages/(cli)|packages/mcp/tests/fixtures/doctor/|.*(?:^|/)\\.generated/|.*(?:^|/)node_modules/)\"\nTask fmt:check deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-fmt.ts --root packages --root plugins --ext ts,tsx --exclude \"^(packages/(cli)|packages/mcp/tests/fixtures/doctor/|.*(?:^|/)\\.generated/|.*(?:^|/)node_modules/)\" --ignore-line-endings\nTask deps:check deno run --allow-read .llm/tools/deps/scan-jsr-centralization.ts --fail-on-violation && deno run --allow-read .llm/tools/deps/audit-file-link.ts --fail-on-violation && deno run --allow-read .llm/tools/deps/scan-npm-catalog-compliance.ts && deno task deps:check:zod\nTask check:netscript-jsr-specifiers deno run --allow-read .llm/tools/validation/check-netscript-jsr-specifiers.ts --pretty\nTask check:aspire-host-ports deno run --allow-read .llm/tools/validation/check-aspire-host-ports.ts --pretty\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/ai/agents/assistant.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/ai/ai.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/ai/mcp/registry.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/ai/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/ai/models.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/ai/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/ai/routes/chat-stream.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/ai/routes/chat.tsx\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/ai/thread-store.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/ai/tools/echo.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/auth/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/auth/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/islands/InvoicesStream.tsx\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/routes/api/streams/invoices/seed.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/sagas/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/sagas/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/sagas/runtime.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/sagas/user-registration-saga.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/sagas/user-registration.config.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/streams/invoices-db.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/streams/invoices-producer.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/streams/invoices-schema.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/streams/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/streams/notifications-stream.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/streams/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/triggers/daily-maintenance.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/triggers/generic-inbound-webhook.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/triggers/incoming-file-watch.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/triggers/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/triggers/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/triggers/runtime.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/workers/jobs/health-check.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/workers/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/workers/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/workers/runtime.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/workers/tasks/validate-payload.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-742c4cddfaed9c2e/workers/workflows/daily-maintenance.ts\n [deps:check] Task deps:check:zod deno run --allow-read .llm/tools/deps/check-zod-alignment.ts\nTask ci:quality (no command)\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/test.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/test.json new file mode 100644 index 0000000000..10e9bbd4c0 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/base-refresh/test.json @@ -0,0 +1,36 @@ +{ + "gateId": "test", + "invocationId": "reference-export-base-refresh-test", + "argv": [ + "deno", + "task", + "test" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "actualGitHead": "8c03d862931b64573df9a4bac76ebf266e0ec175", + "timeoutMs": 1800000, + "runnerIdentity": "worker:859092", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "215b7fd55d9dc42bd4563e835d64b12f3457a684a4e8747abad02791c793deca", + "lifecycleId": "worker:859092:reference-export-base-refresh-test:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T20:45:31.887Z", + "startedAt": "2026-08-15T20:45:31.891Z", + "finishedAt": "2026-08-15T20:50:42.906Z", + "durationMs": 297831, + "exitCode": 0, + "stdout": { + "bytes": 270, + "sha256": "ef702af93109b9cd9d80c37d6534dd85df096196e37376506e016bc281560191", + "tail": "{\"schemaVersion\":1,\"command\":[\"deno\",\"test\",\"--reporter=tap\",\"--allow-all\"],\"cwd\":\"/home/codex/repos/netscript-007-reference-export\",\"exitCode\":0,\"durationMs\":297669,\"summary\":{\"passed\":4211,\"failed\":0,\"ignored\":19,\"totalResults\":4230,\"uniqueFailures\":0},\"failures\":[]}\n", + "truncated": false + }, + "stderr": { + "bytes": 101, + "sha256": "5ae7e9d1dade1dc447e471529cd4f870e6b8391091eb2b26d56244ed895c3917", + "tail": "Task test deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-test.ts -- --allow-all\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/arch-check.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/arch-check.json new file mode 100644 index 0000000000..f6890635c0 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/arch-check.json @@ -0,0 +1,36 @@ +{ + "gateId": "arch-check", + "invocationId": "reference-export-fix1-arch-check", + "argv": [ + "deno", + "task", + "arch:check" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "4238670173271bca4281eba7db6c2030d046bc73", + "actualGitHead": "4238670173271bca4281eba7db6c2030d046bc73", + "timeoutMs": 1800000, + "runnerIdentity": "worker:610897", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "fd62da2fe36a8cffbc906a6454cfd53b59eea5238bdc466b56d419367d2e221f", + "lifecycleId": "worker:610897:reference-export-fix1-arch-check:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T18:57:16.033Z", + "startedAt": "2026-08-15T18:57:16.037Z", + "finishedAt": "2026-08-15T18:57:25.455Z", + "durationMs": 7447, + "exitCode": 0, + "stdout": { + "bytes": 39909, + "sha256": "d77dafaa286327a322f3f2086c602375ed79ec21ba740af7071b1a5ab9a5d607", + "tail": " instead (e2e/suites/quickstart/quickstart-walk-suite.ts)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/kernel/adapters/database/scaffolder.ts:44)\n# Doctrine readiness — config\n FAIL=0 WARN=2 INFO=1\n WARN A8/AP-1/F-1: file is 635 lines (cap 300) — split into smaller single-reason files (src/domain/config-section-types.ts)\n WARN A8/AP-1/F-1: file is 317 lines (cap 300) — split into smaller single-reason files (src/domain/schemas/deploy-schema.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — contracts\n FAIL=0 WARN=2 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A1/A2/A7: exports Result/Either/Option-style contract — keep it package-specific, documented, and inline unless multiple real consumers justify a shared contract (src/domain/result.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — cron\n FAIL=0 WARN=1 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — database\n FAIL=0 WARN=7 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 529 lines (cap 500) — split into smaller single-reason files (adapters/mssql.adapter.ts)\n WARN A8/AP-1/F-1: file is 640 lines (cap 500) — split into smaller single-reason files (extensions/sql-json.extension.ts)\n WARN A8/AP-1/F-1: file is 555 lines (cap 500) — split into smaller single-reason files (scripts/fix-zod-imports.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (scripts/migrate.ts)\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (scripts/generate-zod.ts)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (extensions/sql-json.extension.ts:639)\n# Doctrine readiness — fresh\n FAIL=0 WARN=3 INFO=1\n WARN A8/AP-1/F-1: file is 609 lines (cap 500) — split into smaller single-reason files (src/runtime/ai/create-chat-connection.ts)\n WARN A8/AP-1/F-1: file is 604 lines (cap 500) — split into smaller single-reason files (src/application/route/manifest.ts)\n WARN F-16: directory has 13 immediate children; doctrine cap is 12 (src/runtime/ai)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — fresh-ui\n FAIL=0 WARN=5 INFO=1\n WARN AP-16/F-11: forbidden folder name 'lib' — split into domain/, application/, or adapters/ aligned to a real concern (registry/lib)\n WARN A8/AP-1/F-1: file is 669 lines (cap 500) — split into smaller single-reason files (src/chat/parse-blocks.ts)\n WARN A8/AP-1/F-1: file is 1512 lines (cap 500) — split into smaller single-reason files (registry.manifest.ts)\n WARN F-16: directory has 16 immediate children; doctrine cap is 12\n WARN F-16: directory has 99 immediate children; doctrine cap is 12 (registry/components/ui)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — kv\n FAIL=0 WARN=5 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 827 lines (cap 500) — split into smaller single-reason files (adapters/redis.adapter.ts)\n WARN A8/AP-1/F-1: file is 674 lines (cap 500) — split into smaller single-reason files (adapters/denokv-bridge.ts)\n WARN A8/AP-1/F-1: file is 541 lines (cap 500) — split into smaller single-reason files (adapters/memory.adapter.ts)\n WARN A8/AP-1/F-1: file is 592 lines (cap 500) — split into smaller single-reason files (adapters/deno-kv.adapter.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — logger\n FAIL=0 WARN=1 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — mcp\n FAIL=0 WARN=3 INFO=1\n WARN A8/AP-1/F-1: file is 367 lines (cap 300) — split into smaller single-reason files (src/domain/tool-contracts.ts)\n WARN F-16: directory has 14 immediate children; doctrine cap is 12 (src/domain)\n WARN F-16: directory has 16 immediate children; doctrine cap is 12 (src/application/flows)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — plugin\n FAIL=0 WARN=3 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN F-16: directory has 17 immediate children; doctrine cap is 12 (src)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12 (src/config/domain)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — plugin-ai-core\n FAIL=0 WARN=1 INFO=0\n WARN A8/AP-1/F-1: file is 310 lines (cap 300) — split into smaller single-reason files (src/contracts/v1/ai.contract-schemas.ts)\n# Doctrine readiness — plugin-auth-core\n FAIL=0 WARN=2 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 519 lines (cap 500) — split into smaller single-reason files (src/contracts/v1/auth.contract.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — plugin-sagas-core\n FAIL=0 WARN=2 INFO=2\n WARN A8/AP-1/F-1: file is 739 lines (cap 500) — split into smaller single-reason files (src/contracts/v1/sagas.contract.ts)\n WARN F-16: directory has 19 immediate children; doctrine cap is 12 (src)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n# Doctrine readiness — plugin-streams-core\n FAIL=0 WARN=1 INFO=1\n WARN A8/AP-1/F-1: file is 515 lines (cap 500) — split into smaller single-reason files (src/application/durable-stream-producer-supervisor.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — plugin-triggers-core\n FAIL=0 WARN=3 INFO=2\n WARN A8/AP-1/F-1: file is 722 lines (cap 500) — split into smaller single-reason files (src/contracts/v1/triggers.contract.ts)\n WARN F-16: directory has 13 immediate children; doctrine cap is 12 (src/ports)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12 (src/runtime)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n# Doctrine readiness — plugin-workers-core\n FAIL=0 WARN=5 INFO=2\n WARN A8/AP-1/F-1: file is 305 lines (cap 300) — split into smaller single-reason files (src/domain/job-spec.ts)\n WARN A8/AP-1/F-1: file is 426 lines (cap 300) — split into smaller single-reason files (src/domain/task.ts)\n WARN A8/AP-1/F-1: file is 574 lines (cap 500) — split into smaller single-reason files (src/contracts/v1/workers.contract-definition.ts)\n WARN F-16: directory has 18 immediate children; doctrine cap is 12 (src)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12 (src/executor/adapters)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n# Doctrine readiness — prisma-adapter-mysql\n FAIL=0 WARN=2 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 809 lines (cap 500) — split into smaller single-reason files (src/adapter.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — queue\n FAIL=0 WARN=2 INFO=1\n WARN A8/AP-1/F-1: file is 785 lines (cap 500) — split into smaller single-reason files (adapters/kv-polling.adapter.ts)\n WARN A8/AP-1/F-1: file is 582 lines (cap 500) — split into smaller single-reason files (adapters/postgres.adapter.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — runtime-config\n FAIL=0 WARN=1 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — sdk\n FAIL=0 WARN=1 INFO=1\n WARN F-16: directory has 13 immediate children; doctrine cap is 12 (src)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — service\n FAIL=0 WARN=3 INFO=1\n WARN A5/AP-5/F-4: class Gq sits 3+ levels deep in inheritance chain — prefer composition\n WARN A5/AP-5/F-4: class dW sits 3+ levels deep in inheritance chain — prefer composition\n WARN A8/AP-1/F-1: file is 531 lines (cap 500) — split into smaller single-reason files (src/builder/service-builder-impl.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — telemetry\n FAIL=0 WARN=5 INFO=1\n WARN A8/AP-1/F-1: file is 539 lines (cap 500) — split into smaller single-reason files (src/instrumentation/scheduler.ts)\n WARN A8/AP-1/F-1: file is 670 lines (cap 500) — split into smaller single-reason files (src/instrumentation/worker.ts)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12\n WARN F-16: directory has 14 immediate children; doctrine cap is 12 (src/attributes)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (src/adapters/otel/otel-sdk.ts)\n# Doctrine readiness — watchers\n FAIL=0 WARN=1 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — ai\n FAIL=0 WARN=5 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (cli.ts)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/chat-route/chat-route.stub.ts:41)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:40)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:25)\n# Doctrine readiness — auth\n FAIL=0 WARN=5 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN F-16: directory has 13 immediate children; doctrine cap is 12\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (services/src/main.ts:54)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n# Doctrine readiness — sagas\n FAIL=0 WARN=8 INFO=2\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 374 lines (cap 300) — split into smaller single-reason files (services/src/routers/v1-types.ts)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (services/src/main.ts:46)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/saga/saga.stub.ts:60)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/saga/saga.stub.ts:95)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n# Doctrine readiness — streams\n FAIL=0 WARN=5 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/stream/stream.stub.ts:84)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/consumer/consumer.stub.ts:78)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n# Doctrine readiness — triggers\n FAIL=0 WARN=13 INFO=2\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN F-16: directory has 18 immediate children; doctrine cap is 12\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/scheduled/scheduled.stub.ts:43)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/file-watch/file-watch.stub.ts:43)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/webhook/webhook.stub.ts:46)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/webhook/webhook.stub.ts:109)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (jobs/file-relay.ts:167)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (jobs/staged-cleanup.ts:72)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (jobs/file-import.ts:177)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (generic-webhook.ts:44)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (webhook-validate-data.ts:35)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n# Doctrine readiness — workers\n FAIL=0 WARN=9 INFO=2\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN F-16: directory has 19 immediate children; doctrine cap is 12\n WARN F-16: directory has 19 immediate children; doctrine cap is 12 (worker)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (test-api.ts)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (services/src/main.ts:45)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/cli/official-sample-configuration.ts:409)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (jobs/health-check.ts:246)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n", + "truncated": true + }, + "stderr": { + "bytes": 485, + "sha256": "d383a582d1a3ab53409417a624b04062624331ae3ada6bd36a8fb15ed8e33cc6", + "tail": "Task arch:check deno task deps:check && deno run --allow-read --allow-run .llm/tools/fitness/check-doctrine.ts --all-roots\nTask deps:check deno run --allow-read .llm/tools/deps/scan-jsr-centralization.ts --fail-on-violation && deno run --allow-read .llm/tools/deps/audit-file-link.ts --fail-on-violation && deno run --allow-read .llm/tools/deps/scan-npm-catalog-compliance.ts && deno task deps:check:zod\nTask deps:check:zod deno run --allow-read .llm/tools/deps/check-zod-alignment.ts\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/check.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/check.json new file mode 100644 index 0000000000..2e2fdc70aa --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/check.json @@ -0,0 +1,36 @@ +{ + "gateId": "check", + "invocationId": "reference-export-fix1-check", + "argv": [ + "deno", + "task", + "check" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "4238670173271bca4281eba7db6c2030d046bc73", + "actualGitHead": "4238670173271bca4281eba7db6c2030d046bc73", + "timeoutMs": 1800000, + "runnerIdentity": "worker:567464", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "b185774ef70405e6797a72e9d12d9288733524923a32e9d614de83d5177eb91d", + "lifecycleId": "worker:567464:reference-export-fix1-check:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T18:43:55.426Z", + "startedAt": "2026-08-15T18:43:55.439Z", + "finishedAt": "2026-08-15T18:43:55.650Z", + "durationMs": 212, + "exitCode": 0, + "stdout": { + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "tail": "", + "truncated": false + }, + "stderr": { + "bytes": 219, + "sha256": "173159241f5cebe29fb51916f6906c508f864f93a459284bc93fffbce2d2ad4b", + "tail": "Task check deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-check.ts --root packages --root plugins --ext ts,tsx --exclude \"^(.*(?:^|/)\\.generated/|.*(?:^|/)node_modules/)\" (cached, inputs unchanged)\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/docs-accuracy.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/docs-accuracy.json new file mode 100644 index 0000000000..e9fb9954d5 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/docs-accuracy.json @@ -0,0 +1,36 @@ +{ + "gateId": "docs-accuracy", + "invocationId": "reference-export-fix1-docs-accuracy", + "argv": [ + "deno", + "task", + "docs:accuracy" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "4238670173271bca4281eba7db6c2030d046bc73", + "actualGitHead": "4238670173271bca4281eba7db6c2030d046bc73", + "timeoutMs": 1800000, + "runnerIdentity": "worker:611897", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "cd9ceb4b1ea4bbf4e8f93f3ee3b5511c1e7786ecac193d789fcd823a8e501fb6", + "lifecycleId": "worker:611897:reference-export-fix1-docs-accuracy:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T18:57:36.543Z", + "startedAt": "2026-08-15T18:57:36.546Z", + "finishedAt": "2026-08-15T18:57:40.383Z", + "durationMs": 3837, + "exitCode": 0, + "stdout": { + "bytes": 277, + "sha256": "6d4a8061a0df4e25f6d2d66706a6495fe27a5f68f3dfea33e1be8d6128c75ab3", + "tail": "docs accuracy: PASS (4 saga pages checked for stale claims, 199 published source pages, 181 shipped corpus files, one query dialect exception page, mutation-map columns, 91/91 root/direct public commands from 149 recursive paths, 3 valid @netscript/fresh root imports checked)\n", + "truncated": false + }, + "stderr": { + "bytes": 577, + "sha256": "5c84eae8ac33adda151be9910882a4f787efee99e29cab10e4cee274d63cf192", + "tail": "Task docs:accuracy deno run --no-lock --allow-read --allow-env --allow-run=deno .llm/tools/docs/check-accuracy-and-discoverability.ts\nWarning The following peer dependency issues were found:\n└─┬ @tanstack/ai-preact@0.10.4\n └── peer @tanstack/ai@^0.41.0: resolved to 0.39.1\n\nThese packages were resolved to a version that does not satisfy a peer dependency constraint, which can cause runtime errors. To silence this warning, install a compatible version or add an \"overrides\" entry to your package.json or deno.json.\nLearn more: https://docs.deno.com/go/peer-deps\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/docs-source-format.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/docs-source-format.json new file mode 100644 index 0000000000..c8c6825163 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/docs-source-format.json @@ -0,0 +1,36 @@ +{ + "gateId": "docs-source-format", + "invocationId": "reference-export-fix1-docs-source-format", + "argv": [ + "deno", + "task", + "check:source-format" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export/docs/site", + "gitHead": "4238670173271bca4281eba7db6c2030d046bc73", + "actualGitHead": "4238670173271bca4281eba7db6c2030d046bc73", + "timeoutMs": 1800000, + "runnerIdentity": "worker:611617", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "e612fb035f7dc74415a40e7167226f9b74f6060a8e1b59ad6d22d0eb263ab82f", + "lifecycleId": "worker:611617:reference-export-fix1-docs-source-format:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T18:57:31.493Z", + "startedAt": "2026-08-15T18:57:31.496Z", + "finishedAt": "2026-08-15T18:57:31.611Z", + "durationMs": 115, + "exitCode": 0, + "stdout": { + "bytes": 23, + "sha256": "a91dbfc7ba015ebd64902c27740032f3798207dc0ebae57d2526342b219899c5", + "tail": "Docs source format: OK\n", + "truncated": false + }, + "stderr": { + "bytes": 549, + "sha256": "e213b85f487a989efad13e7a5fc9ed5254f41a214e443e9ea8132796901dd6e1", + "tail": "Warning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\nTask check:source-format deno run --no-lock --allow-read _plugins/check-source-format.ts .\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/publish-dry-run.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/publish-dry-run.json new file mode 100644 index 0000000000..8402c5b748 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/publish-dry-run.json @@ -0,0 +1,36 @@ +{ + "gateId": "publish-dry-run", + "invocationId": "reference-export-fix1-publish-dry-run", + "argv": [ + "deno", + "task", + "publish:dry-run" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "4238670173271bca4281eba7db6c2030d046bc73", + "actualGitHead": "4238670173271bca4281eba7db6c2030d046bc73", + "timeoutMs": 1800000, + "runnerIdentity": "worker:612572", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "9a84366d75fb44d92633b8f663fafd395262bd761910be460080fae7febbbd1f", + "lifecycleId": "worker:612572:reference-export-fix1-publish-dry-run:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T18:57:47.474Z", + "startedAt": "2026-08-15T18:57:47.477Z", + "finishedAt": "2026-08-15T18:58:42.913Z", + "durationMs": 51507, + "exitCode": 0, + "stdout": { + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "tail": "", + "truncated": false + }, + "stderr": { + "bytes": 318629, + "sha256": "006ad4d9fb0199092f356300a1f955765d53c0a3a77bf3d9bfc4f1ac32a5cb3a", + "tail": "config/environment.ts (4.4KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/config/mod.ts (253B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/config/provider-registration.ts (1.23KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/config/schema.ts (4.85KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/config/singleton.ts (488B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/context/helpers.ts (2.22KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/context/message.ts (1.09KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/context/mod.ts (440B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/context/payload-context.ts (1.35KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/context/types.ts (980B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/context/w3c.ts (7.69KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/diagnostics/inspect-telemetry.ts (2.04KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/domain/mod.ts (121B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/domain/query.ts (6.16KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/domain/telemetry-convention.ts (3.58KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/domain/types.ts (5.79KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/hono/mod.ts (220B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/hono/otel-middleware.ts (2.59KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/instrumentation/mod.ts (267B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/instrumentation/queue.ts (11.83KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/instrumentation/scheduler.ts (14.68KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/instrumentation/types.ts (2.98KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/instrumentation/worker.ts (18.4KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/orpc/_types.ts (1.23KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/orpc/_utils.ts (488B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/orpc/error-plugin.ts (11.62KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/orpc/handler-context.ts (6.63KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/orpc/mod.ts (682B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/orpc/tracing-plugin.ts (8.7KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/ports/meter-port.ts (2.95KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/ports/mod.ts (613B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/ports/propagator-port.ts (1.74KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/ports/provider-options.ts (1.58KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/ports/span-link-port.ts (1.33KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/ports/telemetry-query-port.ts (2.47KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/ports/tracer-provider-port.ts (2.74KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/testing/in-memory-span-recorder.ts (8.17KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/src/testing/mod.ts (123B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/telemetry/tracer.ts (128B)\nSimulating publish of @netscript/prisma-adapter-mysql@0.0.6 with files:\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/prisma-adapter-mysql/README.md (4.87KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/prisma-adapter-mysql/deno.json (677B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/prisma-adapter-mysql/mod.ts (94B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/prisma-adapter-mysql/src/adapter.ts (22.56KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/prisma-adapter-mysql/src/conversion.ts (8.1KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/prisma-adapter-mysql/src/errors.ts (5.96KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/prisma-adapter-mysql/src/mod.ts (1.49KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/prisma-adapter-mysql/src/types.ts (3.49KB)\nSimulating publish of @netscript/watchers@0.0.6 with files:\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/watchers/README.md (5.61KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/watchers/deno.json (1.11KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/watchers/mod.ts (941B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/watchers/src/file-watcher.ts (12.71KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/watchers/src/filters/debounce.ts (3.94KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/watchers/src/filters/dedup.ts (3.23KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/watchers/src/filters/glob.ts (1.71KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/watchers/src/filters/stability.ts (3.38KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/watchers/src/fs.ts (3.36KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/watchers/src/public/mod.ts (963B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/watchers/src/strategies/hybrid.ts (2.83KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/watchers/src/strategies/native.ts (3.32KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/watchers/src/strategies/polling.ts (7.03KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/watchers/src/types.ts (5.93KB)\nSimulating publish of @netscript/mcp@0.0.6 with files:\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/README.md (19.86KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/cli.ts (12.18KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/deno.json (1.23KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/mod.ts (8.8KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/openapi-projection.ts (1.14KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/docs/docs-flows.ts (4.47KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/docs/find-guidance-flow.ts (4.42KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/export-surfaces/export-surface-flows.ts (11.41KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/export-surfaces/export-surface-tool-contracts.ts (3.29KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/flows/analyze-db-bottlenecks-flow.ts (1.05KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/flows/analyze-service-performance-flow.ts (1.07KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/flows/doctor-flow.ts (3.97KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/flows/execute-command-flow.ts (1.29KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/flows/get-app-status-flow.ts (1.3KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/flows/get-last-job-result-flow.ts (1.25KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/flows/get-operation-schema-flow.ts (4.13KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/flows/get-recent-errors-flow.ts (1.2KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/flows/get-run-flow.ts (1.68KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/flows/list-api-services-flow.ts (3.32KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/flows/list-commands-flow.ts (1.45KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/flows/list-runs-flow.ts (1.2KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/flows/list-service-operations-flow.ts (4.36KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/flows/planned-flow.ts (485B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/flows/record-drift-flow.ts (2.28KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/flows/telemetry-doctor-family.ts (1.92KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/runner/mcp-server.ts (7.18KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/runner/receipt-lifecycle.ts (982B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/runner/truncation.ts (2.48KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/service-endpoint-directory.ts (10.38KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/telemetry-aggregation.ts (15.16KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/application/tool-registry.ts (3.35KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/command-catalog-port.ts (664B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/command-executor-port.ts (2.11KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/command-policy.ts (2.77KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/diagnostic-evidence-port.ts (891B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/docs/docs-corpus-port.ts (3.4KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/docs/guidance-concepts.ts (4.35KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/docs/guidance-contract.ts (3.81KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/docs/guidance-index.ts (9.32KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/docs/guidance-parser.ts (4.88KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/docs/guidance-result.ts (3.94KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/doctor-check-family.ts (1.94KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/json-rpc.ts (1.8KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/openapi/canonical-identity.ts (3.57KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/openapi/description-ladder.ts (2.7KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/openapi/operation-index.ts (3.09KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/openapi/schema-views.ts (11.12KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/project-doctor-port.ts (304B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/schema.ts (4.87KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/telemetry-endpoint.ts (2.11KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/telemetry-probe-port.ts (531B)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/telemetry-summaries.ts (3.6KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/tool-contracts.ts (13.1KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/domain/tool-types.ts (2.11KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/aspire-doctor-family.ts (2.01KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/embedded-docs-corpus.ts (3.12KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/export-surfaces/embedded-export-surface-corpus.ts (6.27KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/export-surfaces/export-surface-corpus.generated.ts (403.2KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/fetch-telemetry-probe.ts (1.23KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/filesystem-diagnostic-evidence.ts (1.72KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/filesystem-docs-corpus.ts (15.25KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/plugin-doctor-family.ts (1.31KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/project-wiring-doctor-family.ts (4.91KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/release-embedded-docs-corpus.ts (5.4KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/service-endpoints/appsettings-endpoint-source.ts (3.29KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/service-endpoints/aspire-cli-command.ts (1.07KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/service-endpoints/aspire-cli-endpoint-source.ts (10.33KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/service-endpoints/aspire-cli-output.ts (2.55KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/service-endpoints/endpoint-url.ts (1.06KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/service-endpoints/fetch-service-endpoint-probe.ts (6.7KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/service-endpoints/override-endpoint-source.ts (3.51KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/service-endpoints/run-manifest-endpoint-source.ts (4.79KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/spawn-command-executor.ts (4.72KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/static-command-catalog.ts (1.33KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/stdio-transport.ts (1.27KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/infrastructure/telemetry-query-adapter.ts (3.11KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/ports/export-surface-corpus-port.ts (2.54KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/ports/service-endpoint-directory-port.ts (8.93KB)\n file:///tmp/netscript-publish-dry-run-f251030fac6ffb7b/packages/mcp/src/publish-assets.generated.ts (281.23KB)\nSuccess Dry run complete\n", + "truncated": true + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/quality-job.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/quality-job.json new file mode 100644 index 0000000000..2429b08867 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/quality-job.json @@ -0,0 +1,36 @@ +{ + "gateId": "quality-job", + "invocationId": "reference-export-fix1-quality-job", + "argv": [ + "deno", + "task", + "ci:quality" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "4238670173271bca4281eba7db6c2030d046bc73", + "actualGitHead": "4238670173271bca4281eba7db6c2030d046bc73", + "timeoutMs": 1800000, + "runnerIdentity": "worker:610385", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "bf49f6f360a22e0990bb69e35bfe8d4d5536732612dec598354eeb3836e4cdc4", + "lifecycleId": "worker:610385:reference-export-fix1-quality-job:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T18:57:00.701Z", + "startedAt": "2026-08-15T18:57:00.703Z", + "finishedAt": "2026-08-15T18:57:07.869Z", + "durationMs": 7166, + "exitCode": 0, + "stdout": { + "bytes": 25505, + "sha256": "679c963ab78078061a25affc28e33bb6bb80347ac5363bdf438ebf9e007b5197", + "tail": "ages/cli uses npm:@opentelemetry/api@^1.9.0 outside package.json catalog: (catalog has ^1.9.1, inline use has ^1.9.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/consume-flow-b-stream.ts:10 packages/cli/e2e uses npm:@opentelemetry/api@^1.9.0 outside package.json catalog: (catalog has ^1.9.1, inline use has ^1.9.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/consume-flow-b-stream.ts:11 packages/cli uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/consume-flow-b-stream.ts:11 packages/cli/e2e uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/ui-ai-gates.ts:140 packages/cli uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/ui-ai-gates.ts:140 packages/cli/e2e uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/ui-ai-gates.ts:174 packages/cli uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/ui-ai-gates.ts:174 packages/cli/e2e uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/contracts/deno.json:13 packages/contracts uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/deno.json:19 packages/fresh-ui uses npm:preact@^10.29.2 outside package.json catalog: (catalog has ^10.29.2)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/scripts/build-tokens.ts:1 packages/fresh-ui uses npm:style-dictionary@5.4.4 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/tests/registry/components/ui/desktop.test.tsx:2 packages/fresh-ui uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/tests/registry/islands/desktop-only.test.tsx:3 packages/fresh-ui uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/tests/runtime/accordion/accordion-render.test.tsx:2 packages/fresh-ui uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:42 packages/fresh uses npm:preact@^10.29.2 outside package.json catalog: (catalog has ^10.29.2)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:43 packages/fresh uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:45 packages/fresh uses npm:@durable-streams/state@^0.3.1 outside package.json catalog: (catalog has ^0.3.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:46 packages/fresh uses npm:@durable-streams/tanstack-ai-transport@^0.0.8 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:52 packages/fresh uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:53 packages/fresh uses npm:@preact/signals@2.9.2 outside package.json catalog: (catalog has 2.9.2)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:54 packages/fresh uses npm:@tanstack/ai@^0.39.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:55 packages/fresh uses npm:@tanstack/ai-preact@^0.10.1 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:56 packages/fresh uses npm:@tanstack/preact-query@^5.101.0 outside package.json catalog: (catalog has ^5.101.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:57 packages/fresh uses npm:@tanstack/query-core@^5.101.0 outside package.json catalog: (catalog has ^5.101.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:58 packages/fresh uses npm:@tanstack/react-db@^0.1.95 outside package.json catalog: (catalog has ^0.1.95)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:59 packages/fresh uses npm:vite@7.2.2 outside package.json catalog: (catalog has 7.2.2)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/src/application/vite/vite.test.ts:367 packages/fresh uses npm:/preact@10.29.7/hooks outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/logger/deno.json:20 packages/logger uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-ai-core/deno.json:11 packages/plugin-ai-core uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-ai-core/deno.json:12 packages/plugin-ai-core uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-auth-core/deno.json:18 packages/plugin-auth-core uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-auth-core/deno.json:19 packages/plugin-auth-core uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-sagas-core/src/stores/prisma-saga-store_integration_test.ts:2 packages/plugin-sagas-core uses npm:@prisma/adapter-pg@7.8.0 outside package.json catalog: (catalog has ^7.8.0, inline use has 7.8.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/deno.json:34 packages/plugin-workers-core uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/deno.json:35 packages/plugin-workers-core uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/executor/multi-runtime-task-executor_test.ts:1 packages/plugin-workers-core uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/executor/multi-runtime-task-executor_test.ts:2 packages/plugin-workers-core uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/streams/workers-streams_test.ts:1 packages/plugin-workers-core uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/streams/workers-streams_test.ts:2 packages/plugin-workers-core uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/streams/workers-streams_test.ts:3 packages/plugin-workers-core uses npm:@opentelemetry/core@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/streams/workers-streams_test.ts:4 packages/plugin-workers-core uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin/deno.json:28 packages/plugin uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin/deno.json:29 packages/plugin uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/queue/adapters/amqp.adapter.ts:10 packages/queue uses npm:amqplib@^0.10.3 outside package.json catalog: (catalog has ^2.0.1, inline use has ^0.10.3)\n [deps:check] WARN DEPS-NPM-CATALOG packages/queue/adapters/amqp.adapter.ts:11 packages/queue uses npm:amqplib@^0.10.3 outside package.json catalog: (catalog has ^2.0.1, inline use has ^0.10.3)\n [deps:check] WARN DEPS-NPM-CATALOG packages/queue/adapters/postgres.adapter.ts:9 packages/queue uses npm:pg@^8.21.0 outside package.json catalog: (catalog has ^8.21.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:31 packages/sdk uses npm:@orpc/client@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:32 packages/sdk uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:33 packages/sdk uses npm:@orpc/openapi@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:34 packages/sdk uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:35 packages/sdk uses npm:@orpc/tanstack-query@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:36 packages/sdk uses npm:@orpc/zod@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:37 packages/sdk uses npm:@tanstack/db@^0.6.8 outside package.json catalog: (catalog has ^0.6.8)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:38 packages/sdk uses npm:@tanstack/query-core@^5.101.0 outside package.json catalog: (catalog has ^5.101.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:39 packages/sdk uses npm:@tanstack/query-db-collection@^1.2.1 outside package.json catalog: (catalog has ^1.2.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/cache/cache-telemetry_test.ts:15 packages/sdk uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/cache/cache-telemetry_test.ts:16 packages/sdk uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/cache/cache-telemetry_test.ts:17 packages/sdk uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/type-fixtures/service-query-utils-upstream_type.ts:1 packages/sdk uses npm:@orpc/client@1.14.6 outside package.json catalog: (catalog has ^1.14.6, inline use has 1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/type-fixtures/service-query-utils-upstream_type.ts:2 packages/sdk uses npm:@orpc/tanstack-query@1.14.6 outside package.json catalog: (catalog has ^1.14.6, inline use has 1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/deno.json:22 packages/service uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/deno.json:23 packages/service uses npm:@orpc/openapi@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/deno.json:24 packages/service uses npm:@orpc/client@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/deno.json:25 packages/service uses npm:@orpc/zod@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/tests/hono-tracing_test.ts:2 packages/service uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/tests/hono-tracing_test.ts:3 packages/service uses npm:@opentelemetry/core@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/tests/hono-tracing_test.ts:4 packages/service uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/tests/hono-tracing_test.ts:5 packages/service uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/deno.json:28 packages/telemetry uses npm:@opentelemetry/semantic-conventions@1.41.1 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/adapters/otel_ai_telemetry_test.ts:2 packages/telemetry uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/adapters/otel_ai_telemetry_test.ts:6 packages/telemetry uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/hono/otel_middleware_test.ts:4 packages/telemetry uses npm:@opentelemetry/core@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/hono/otel_middleware_test.ts:5 packages/telemetry uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/hono/otel_middleware_test.ts:6 packages/telemetry uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG plugins/workers/jobs/job-tools_test.ts:2 plugins/workers uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG plugins/workers/jobs/job-tools_test.ts:3 plugins/workers uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG plugins/workers/jobs/job-tools_test.ts:4 plugins/workers uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] zod-alignment PASS instances=zod@3.25.76,zod@4.4.3 residual-v3=@ag-ui/core@0.0.52,@olli/kvdex@3.6.7\n [check:emitted-samples] Checked 47 emitted TypeScript samples from 37 artifact paths.\n", + "truncated": true + }, + "stderr": { + "bytes": 6132, + "sha256": "cb8b6dcd2bb84c543606138c609eb24547dc94e21dfc7eddc4eee0a2e15d4863", + "tail": "Task check deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-check.ts --root packages --root plugins --ext ts,tsx --exclude \"^(.*(?:^|/)\\.generated/|.*(?:^|/)node_modules/)\" (cached, inputs unchanged)\nTask check:emitted-samples deno run --allow-read --allow-write --allow-run .llm/tools/validation/check-emitted-samples.ts\nTask check:streams-types deno task --cwd packages/fresh check:streams-types\nTask lint deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-lint.ts --root packages --root plugins --ext ts,tsx --exclude \"^(packages/(cli)|packages/mcp/tests/fixtures/doctor/|.*(?:^|/)\\.generated/|.*(?:^|/)node_modules/)\" (cached, inputs unchanged)\n [check:streams-types] Task check:streams-types deno check --no-lock --config ./tests/type-fixtures/streamdb-consumer-deno.json --unstable-kv ./tests/type-fixtures/streamdb-wrapper_type.ts\nTask fmt:check deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-fmt.ts --root packages --root plugins --ext ts,tsx --exclude \"^(packages/(cli)|packages/mcp/tests/fixtures/doctor/|.*(?:^|/)\\.generated/|.*(?:^|/)node_modules/)\" --ignore-line-endings (cached, inputs unchanged)\nTask deps:check deno run --allow-read .llm/tools/deps/scan-jsr-centralization.ts --fail-on-violation && deno run --allow-read .llm/tools/deps/audit-file-link.ts --fail-on-violation && deno run --allow-read .llm/tools/deps/scan-npm-catalog-compliance.ts && deno task deps:check:zod\nTask check:netscript-jsr-specifiers deno run --allow-read .llm/tools/validation/check-netscript-jsr-specifiers.ts --pretty\nTask check:aspire-host-ports deno run --allow-read .llm/tools/validation/check-aspire-host-ports.ts --pretty\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/ai/agents/assistant.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/ai/ai.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/ai/mcp/registry.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/ai/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/ai/models.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/ai/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/ai/routes/chat-stream.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/ai/routes/chat.tsx\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/ai/thread-store.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/ai/tools/echo.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/auth/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/auth/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/islands/InvoicesStream.tsx\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/routes/api/streams/invoices/seed.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/sagas/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/sagas/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/sagas/runtime.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/sagas/user-registration-saga.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/sagas/user-registration.config.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/streams/invoices-db.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/streams/invoices-producer.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/streams/invoices-schema.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/streams/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/streams/notifications-stream.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/streams/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/triggers/daily-maintenance.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/triggers/generic-inbound-webhook.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/triggers/incoming-file-watch.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/triggers/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/triggers/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/triggers/runtime.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/workers/jobs/health-check.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/workers/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/workers/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/workers/runtime.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/workers/tasks/validate-payload.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-2ccf689f5cd5b507/workers/workflows/daily-maintenance.ts\n [deps:check] Task deps:check:zod deno run --allow-read .llm/tools/deps/check-zod-alignment.ts\nTask ci:quality (no command)\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/test-attempt2.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/test-attempt2.json new file mode 100644 index 0000000000..2415f027f2 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/test-attempt2.json @@ -0,0 +1,36 @@ +{ + "gateId": "test", + "invocationId": "reference-export-fix1-test-attempt2", + "argv": [ + "deno", + "task", + "test" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "4238670173271bca4281eba7db6c2030d046bc73", + "actualGitHead": "4238670173271bca4281eba7db6c2030d046bc73", + "timeoutMs": 1800000, + "runnerIdentity": "worker:598029", + "attempt": 2, + "schemaVersion": 1, + "requestHash": "4e083802372de2749ec3af25fc3007212854edde07df61c987bbe22bb7ade6b0", + "lifecycleId": "worker:598029:reference-export-fix1-test-attempt2:2", + "outcome": "PASS", + "claimedAt": "2026-08-15T18:52:37.532Z", + "startedAt": "2026-08-15T18:52:37.536Z", + "finishedAt": "2026-08-15T18:56:53.674Z", + "durationMs": 240065, + "exitCode": 0, + "stdout": { + "bytes": 270, + "sha256": "3a41d9eee03a931d5093ea30820788a442bb899a21cbd14b00ee45de333bd9aa", + "tail": "{\"schemaVersion\":1,\"command\":[\"deno\",\"test\",\"--reporter=tap\",\"--allow-all\"],\"cwd\":\"/home/codex/repos/netscript-007-reference-export\",\"exitCode\":0,\"durationMs\":239919,\"summary\":{\"passed\":4203,\"failed\":0,\"ignored\":19,\"totalResults\":4222,\"uniqueFailures\":0},\"failures\":[]}\n", + "truncated": false + }, + "stderr": { + "bytes": 101, + "sha256": "5ae7e9d1dade1dc447e471529cd4f870e6b8391091eb2b26d56244ed895c3917", + "tail": "Task test deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-test.ts -- --allow-all\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/test.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/test.json new file mode 100644 index 0000000000..fa0561b131 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/fix1/test.json @@ -0,0 +1,36 @@ +{ + "gateId": "test", + "invocationId": "reference-export-fix1-test", + "argv": [ + "deno", + "task", + "test" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "4238670173271bca4281eba7db6c2030d046bc73", + "actualGitHead": "4238670173271bca4281eba7db6c2030d046bc73", + "timeoutMs": 1800000, + "runnerIdentity": "worker:568045", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "449bfca08072fe31c6f41e99b365827f1fc731cffa68ec95ee826fbd958ffa11", + "lifecycleId": "worker:568045:reference-export-fix1-test:1", + "outcome": "FAIL", + "claimedAt": "2026-08-15T18:44:01.456Z", + "startedAt": "2026-08-15T18:44:01.466Z", + "finishedAt": "2026-08-15T18:52:02.359Z", + "durationMs": 455980, + "exitCode": 1, + "stdout": { + "bytes": 1218, + "sha256": "2f25b1707f8698691e130fc4e1b5593585f749376696a9fdab1001f711f72d2a", + "tail": "{\"schemaVersion\":1,\"command\":[\"deno\",\"test\",\"--reporter=tap\",\"--allow-all\"],\"cwd\":\"/home/codex/repos/netscript-007-reference-export\",\"exitCode\":1,\"durationMs\":455516,\"summary\":{\"passed\":4202,\"failed\":1,\"ignored\":19,\"totalResults\":4222,\"uniqueFailures\":1},\"failures\":[{\"message\":\"AssertionError: Values are not equal.\\n\\n\\n [Diff] Actual / Expected\\n\\n\\n- [\\n- \\\".llm/tmp/refusal-mutants-full-423867017/source.tar: docker ps -aq\\\",\\n- \\\".llm/tmp/refusal-mutants-full-423867017/source.tar: docker rm -f $(\\\",\\n- \\\".llm/tmp/refusal-mutants-full-423867017/source.tar: docker container prune\\\",\\n- \\\".llm/tmp/refusal-mutants-full-423867017/source.tar: docker system prune\\\",\\n- \\\".llm/tmp/refusal-mutants-full-423867017/source.tar: aspire stop --all\\\",\\n- \\\".llm/tmp/refusal-mutants-full-423867017/source.tar: xargs docker removal\\\",\\n- ]\\n+ []\\n\\n at assertEquals (https://jsr.io/@std/assert/1.0.19/equals.ts::)\\n at file:///.llm/tools/agentic/teardown/forbidden-commands_test.ts::\",\"count\":1,\"tests\":[{\"name\":\"repository contains no shared-host bulk teardown command\",\"file\":\"./.llm/tools/agentic/teardown/forbidden-commands_test.ts\",\"line\":14}]}]}\n", + "truncated": false + }, + "stderr": { + "bytes": 101, + "sha256": "5ae7e9d1dade1dc447e471529cd4f870e6b8391091eb2b26d56244ed895c3917", + "tail": "Task test deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-test.ts -- --allow-all\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/arch-check.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/arch-check.json new file mode 100644 index 0000000000..bfe60f670f --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/arch-check.json @@ -0,0 +1,36 @@ +{ + "gateId": "arch-check", + "invocationId": "reference-export-s3-arch-check", + "argv": [ + "deno", + "task", + "arch:check" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "47ca22abe94b9d2e54d3778edc8944094b227886", + "actualGitHead": "47ca22abe94b9d2e54d3778edc8944094b227886", + "timeoutMs": 1800000, + "runnerIdentity": "worker:490107", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "c23cb5f90ddeebd693d0dd3435d348f459021688f94efc894db2f74977c2fded", + "lifecycleId": "worker:490107:reference-export-s3-arch-check:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T18:12:59.962Z", + "startedAt": "2026-08-15T18:12:59.966Z", + "finishedAt": "2026-08-15T18:13:07.140Z", + "durationMs": 7173, + "exitCode": 0, + "stdout": { + "bytes": 39909, + "sha256": "d77dafaa286327a322f3f2086c602375ed79ec21ba740af7071b1a5ab9a5d607", + "tail": " instead (e2e/suites/quickstart/quickstart-walk-suite.ts)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/kernel/adapters/database/scaffolder.ts:44)\n# Doctrine readiness — config\n FAIL=0 WARN=2 INFO=1\n WARN A8/AP-1/F-1: file is 635 lines (cap 300) — split into smaller single-reason files (src/domain/config-section-types.ts)\n WARN A8/AP-1/F-1: file is 317 lines (cap 300) — split into smaller single-reason files (src/domain/schemas/deploy-schema.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — contracts\n FAIL=0 WARN=2 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A1/A2/A7: exports Result/Either/Option-style contract — keep it package-specific, documented, and inline unless multiple real consumers justify a shared contract (src/domain/result.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — cron\n FAIL=0 WARN=1 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — database\n FAIL=0 WARN=7 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 529 lines (cap 500) — split into smaller single-reason files (adapters/mssql.adapter.ts)\n WARN A8/AP-1/F-1: file is 640 lines (cap 500) — split into smaller single-reason files (extensions/sql-json.extension.ts)\n WARN A8/AP-1/F-1: file is 555 lines (cap 500) — split into smaller single-reason files (scripts/fix-zod-imports.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (scripts/migrate.ts)\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (scripts/generate-zod.ts)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (extensions/sql-json.extension.ts:639)\n# Doctrine readiness — fresh\n FAIL=0 WARN=3 INFO=1\n WARN A8/AP-1/F-1: file is 609 lines (cap 500) — split into smaller single-reason files (src/runtime/ai/create-chat-connection.ts)\n WARN A8/AP-1/F-1: file is 604 lines (cap 500) — split into smaller single-reason files (src/application/route/manifest.ts)\n WARN F-16: directory has 13 immediate children; doctrine cap is 12 (src/runtime/ai)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — fresh-ui\n FAIL=0 WARN=5 INFO=1\n WARN AP-16/F-11: forbidden folder name 'lib' — split into domain/, application/, or adapters/ aligned to a real concern (registry/lib)\n WARN A8/AP-1/F-1: file is 669 lines (cap 500) — split into smaller single-reason files (src/chat/parse-blocks.ts)\n WARN A8/AP-1/F-1: file is 1512 lines (cap 500) — split into smaller single-reason files (registry.manifest.ts)\n WARN F-16: directory has 16 immediate children; doctrine cap is 12\n WARN F-16: directory has 99 immediate children; doctrine cap is 12 (registry/components/ui)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — kv\n FAIL=0 WARN=5 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 827 lines (cap 500) — split into smaller single-reason files (adapters/redis.adapter.ts)\n WARN A8/AP-1/F-1: file is 674 lines (cap 500) — split into smaller single-reason files (adapters/denokv-bridge.ts)\n WARN A8/AP-1/F-1: file is 541 lines (cap 500) — split into smaller single-reason files (adapters/memory.adapter.ts)\n WARN A8/AP-1/F-1: file is 592 lines (cap 500) — split into smaller single-reason files (adapters/deno-kv.adapter.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — logger\n FAIL=0 WARN=1 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — mcp\n FAIL=0 WARN=3 INFO=1\n WARN A8/AP-1/F-1: file is 367 lines (cap 300) — split into smaller single-reason files (src/domain/tool-contracts.ts)\n WARN F-16: directory has 14 immediate children; doctrine cap is 12 (src/domain)\n WARN F-16: directory has 16 immediate children; doctrine cap is 12 (src/application/flows)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — plugin\n FAIL=0 WARN=3 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN F-16: directory has 17 immediate children; doctrine cap is 12 (src)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12 (src/config/domain)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — plugin-ai-core\n FAIL=0 WARN=1 INFO=0\n WARN A8/AP-1/F-1: file is 310 lines (cap 300) — split into smaller single-reason files (src/contracts/v1/ai.contract-schemas.ts)\n# Doctrine readiness — plugin-auth-core\n FAIL=0 WARN=2 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 519 lines (cap 500) — split into smaller single-reason files (src/contracts/v1/auth.contract.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — plugin-sagas-core\n FAIL=0 WARN=2 INFO=2\n WARN A8/AP-1/F-1: file is 739 lines (cap 500) — split into smaller single-reason files (src/contracts/v1/sagas.contract.ts)\n WARN F-16: directory has 19 immediate children; doctrine cap is 12 (src)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n# Doctrine readiness — plugin-streams-core\n FAIL=0 WARN=1 INFO=1\n WARN A8/AP-1/F-1: file is 515 lines (cap 500) — split into smaller single-reason files (src/application/durable-stream-producer-supervisor.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — plugin-triggers-core\n FAIL=0 WARN=3 INFO=2\n WARN A8/AP-1/F-1: file is 722 lines (cap 500) — split into smaller single-reason files (src/contracts/v1/triggers.contract.ts)\n WARN F-16: directory has 13 immediate children; doctrine cap is 12 (src/ports)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12 (src/runtime)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n# Doctrine readiness — plugin-workers-core\n FAIL=0 WARN=5 INFO=2\n WARN A8/AP-1/F-1: file is 305 lines (cap 300) — split into smaller single-reason files (src/domain/job-spec.ts)\n WARN A8/AP-1/F-1: file is 426 lines (cap 300) — split into smaller single-reason files (src/domain/task.ts)\n WARN A8/AP-1/F-1: file is 574 lines (cap 500) — split into smaller single-reason files (src/contracts/v1/workers.contract-definition.ts)\n WARN F-16: directory has 18 immediate children; doctrine cap is 12 (src)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12 (src/executor/adapters)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n# Doctrine readiness — prisma-adapter-mysql\n FAIL=0 WARN=2 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 809 lines (cap 500) — split into smaller single-reason files (src/adapter.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — queue\n FAIL=0 WARN=2 INFO=1\n WARN A8/AP-1/F-1: file is 785 lines (cap 500) — split into smaller single-reason files (adapters/kv-polling.adapter.ts)\n WARN A8/AP-1/F-1: file is 582 lines (cap 500) — split into smaller single-reason files (adapters/postgres.adapter.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — runtime-config\n FAIL=0 WARN=1 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — sdk\n FAIL=0 WARN=1 INFO=1\n WARN F-16: directory has 13 immediate children; doctrine cap is 12 (src)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — service\n FAIL=0 WARN=3 INFO=1\n WARN A5/AP-5/F-4: class Gq sits 3+ levels deep in inheritance chain — prefer composition\n WARN A5/AP-5/F-4: class dW sits 3+ levels deep in inheritance chain — prefer composition\n WARN A8/AP-1/F-1: file is 531 lines (cap 500) — split into smaller single-reason files (src/builder/service-builder-impl.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — telemetry\n FAIL=0 WARN=5 INFO=1\n WARN A8/AP-1/F-1: file is 539 lines (cap 500) — split into smaller single-reason files (src/instrumentation/scheduler.ts)\n WARN A8/AP-1/F-1: file is 670 lines (cap 500) — split into smaller single-reason files (src/instrumentation/worker.ts)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12\n WARN F-16: directory has 14 immediate children; doctrine cap is 12 (src/attributes)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (src/adapters/otel/otel-sdk.ts)\n# Doctrine readiness — watchers\n FAIL=0 WARN=1 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — ai\n FAIL=0 WARN=5 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (cli.ts)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/chat-route/chat-route.stub.ts:41)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:40)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:25)\n# Doctrine readiness — auth\n FAIL=0 WARN=5 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN F-16: directory has 13 immediate children; doctrine cap is 12\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (services/src/main.ts:54)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n# Doctrine readiness — sagas\n FAIL=0 WARN=8 INFO=2\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 374 lines (cap 300) — split into smaller single-reason files (services/src/routers/v1-types.ts)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (services/src/main.ts:46)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/saga/saga.stub.ts:60)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/saga/saga.stub.ts:95)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n# Doctrine readiness — streams\n FAIL=0 WARN=5 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/stream/stream.stub.ts:84)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/consumer/consumer.stub.ts:78)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n# Doctrine readiness — triggers\n FAIL=0 WARN=13 INFO=2\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN F-16: directory has 18 immediate children; doctrine cap is 12\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/scheduled/scheduled.stub.ts:43)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/file-watch/file-watch.stub.ts:43)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/webhook/webhook.stub.ts:46)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/webhook/webhook.stub.ts:109)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (jobs/file-relay.ts:167)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (jobs/staged-cleanup.ts:72)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (jobs/file-import.ts:177)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (generic-webhook.ts:44)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (webhook-validate-data.ts:35)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n# Doctrine readiness — workers\n FAIL=0 WARN=9 INFO=2\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN F-16: directory has 19 immediate children; doctrine cap is 12\n WARN F-16: directory has 19 immediate children; doctrine cap is 12 (worker)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (test-api.ts)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (services/src/main.ts:45)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/cli/official-sample-configuration.ts:409)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (jobs/health-check.ts:246)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n", + "truncated": true + }, + "stderr": { + "bytes": 485, + "sha256": "d383a582d1a3ab53409417a624b04062624331ae3ada6bd36a8fb15ed8e33cc6", + "tail": "Task arch:check deno task deps:check && deno run --allow-read --allow-run .llm/tools/fitness/check-doctrine.ts --all-roots\nTask deps:check deno run --allow-read .llm/tools/deps/scan-jsr-centralization.ts --fail-on-violation && deno run --allow-read .llm/tools/deps/audit-file-link.ts --fail-on-violation && deno run --allow-read .llm/tools/deps/scan-npm-catalog-compliance.ts && deno task deps:check:zod\nTask deps:check:zod deno run --allow-read .llm/tools/deps/check-zod-alignment.ts\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/check.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/check.json new file mode 100644 index 0000000000..91688912a1 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/check.json @@ -0,0 +1,36 @@ +{ + "gateId": "check", + "invocationId": "reference-export-s3-check", + "argv": [ + "deno", + "task", + "check" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "47ca22abe94b9d2e54d3778edc8944094b227886", + "actualGitHead": "47ca22abe94b9d2e54d3778edc8944094b227886", + "timeoutMs": 1800000, + "runnerIdentity": "worker:467415", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "4d047f094f79368dc9665d43561bfb73db3e73dc13a4afdd4bd6e4407c01316f", + "lifecycleId": "worker:467415:reference-export-s3-check:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T18:03:42.134Z", + "startedAt": "2026-08-15T18:03:42.137Z", + "finishedAt": "2026-08-15T18:06:36.994Z", + "durationMs": 166639, + "exitCode": 0, + "stdout": { + "bytes": 299, + "sha256": "09feb3c08a0efdef3b0eb29887a2490ebbf99f4bf645dcf8aecc68c6d2275059", + "tail": "{\"source\":{\"mode\":\"selection\",\"cwd\":\"/home/codex/repos/netscript-007-reference-export\"},\"command\":\"deno check --unstable-kv \",\"selection\":{\"filesSelected\":2924,\"batches\":25,\"failedBatches\":0},\"summary\":{\"totalOccurrences\":0,\"uniqueOccurrences\":0,\"uniqueCodes\":0,\"uniquePaths\":0},\"groups\":[]}\n", + "truncated": false + }, + "stderr": { + "bytes": 192, + "sha256": "8e7cb67a36cfafde9a120b0109ba1f06cbe2c185d7d3fac8967000ed6e61dfec", + "tail": "Task check deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-check.ts --root packages --root plugins --ext ts,tsx --exclude \"^(.*(?:^|/)\\.generated/|.*(?:^|/)node_modules/)\"\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/docs-accuracy.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/docs-accuracy.json new file mode 100644 index 0000000000..eba2537b5e --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/docs-accuracy.json @@ -0,0 +1,36 @@ +{ + "gateId": "docs-accuracy", + "invocationId": "reference-export-s3-docs-accuracy", + "argv": [ + "deno", + "task", + "docs:accuracy" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "47ca22abe94b9d2e54d3778edc8944094b227886", + "actualGitHead": "47ca22abe94b9d2e54d3778edc8944094b227886", + "timeoutMs": 1800000, + "runnerIdentity": "worker:491025", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "ba9d5b814181de897d3ba2d574c94c2c3760b9bd6237dd89084952de4fe31e85", + "lifecycleId": "worker:491025:reference-export-s3-docs-accuracy:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T18:13:22.485Z", + "startedAt": "2026-08-15T18:13:22.488Z", + "finishedAt": "2026-08-15T18:13:27.668Z", + "durationMs": 4096, + "exitCode": 0, + "stdout": { + "bytes": 277, + "sha256": "6d4a8061a0df4e25f6d2d66706a6495fe27a5f68f3dfea33e1be8d6128c75ab3", + "tail": "docs accuracy: PASS (4 saga pages checked for stale claims, 199 published source pages, 181 shipped corpus files, one query dialect exception page, mutation-map columns, 91/91 root/direct public commands from 149 recursive paths, 3 valid @netscript/fresh root imports checked)\n", + "truncated": false + }, + "stderr": { + "bytes": 577, + "sha256": "5c84eae8ac33adda151be9910882a4f787efee99e29cab10e4cee274d63cf192", + "tail": "Task docs:accuracy deno run --no-lock --allow-read --allow-env --allow-run=deno .llm/tools/docs/check-accuracy-and-discoverability.ts\nWarning The following peer dependency issues were found:\n└─┬ @tanstack/ai-preact@0.10.4\n └── peer @tanstack/ai@^0.41.0: resolved to 0.39.1\n\nThese packages were resolved to a version that does not satisfy a peer dependency constraint, which can cause runtime errors. To silence this warning, install a compatible version or add an \"overrides\" entry to your package.json or deno.json.\nLearn more: https://docs.deno.com/go/peer-deps\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/docs-source-format.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/docs-source-format.json new file mode 100644 index 0000000000..33e86ec4a4 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/docs-source-format.json @@ -0,0 +1,36 @@ +{ + "gateId": "docs-source-format", + "invocationId": "reference-export-s3-docs-source-format", + "argv": [ + "deno", + "task", + "check:source-format" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export/docs/site", + "gitHead": "47ca22abe94b9d2e54d3778edc8944094b227886", + "actualGitHead": "47ca22abe94b9d2e54d3778edc8944094b227886", + "timeoutMs": 1800000, + "runnerIdentity": "worker:490832", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "2c948a585b5ba6298637db1f21dff246f3a99f5b2cd037cf7f8e80adc990f0e1", + "lifecycleId": "worker:490832:reference-export-s3-docs-source-format:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T18:13:16.579Z", + "startedAt": "2026-08-15T18:13:16.581Z", + "finishedAt": "2026-08-15T18:13:16.654Z", + "durationMs": 73, + "exitCode": 0, + "stdout": { + "bytes": 23, + "sha256": "a91dbfc7ba015ebd64902c27740032f3798207dc0ebae57d2526342b219899c5", + "tail": "Docs source format: OK\n", + "truncated": false + }, + "stderr": { + "bytes": 549, + "sha256": "e213b85f487a989efad13e7a5fc9ed5254f41a214e443e9ea8132796901dd6e1", + "tail": "Warning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\nTask check:source-format deno run --no-lock --allow-read _plugins/check-source-format.ts .\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/publish-dry-run.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/publish-dry-run.json new file mode 100644 index 0000000000..ade429ce9b --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/publish-dry-run.json @@ -0,0 +1,36 @@ +{ + "gateId": "publish-dry-run", + "invocationId": "reference-export-s3-publish-dry-run", + "argv": [ + "deno", + "task", + "publish:dry-run" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "47ca22abe94b9d2e54d3778edc8944094b227886", + "actualGitHead": "47ca22abe94b9d2e54d3778edc8944094b227886", + "timeoutMs": 1800000, + "runnerIdentity": "worker:491659", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "74b1c01905dd0db4746de64ef1ebeb77835c11b85b7a17770c3828f6138c2d35", + "lifecycleId": "worker:491659:reference-export-s3-publish-dry-run:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T18:13:34.517Z", + "startedAt": "2026-08-15T18:13:34.519Z", + "finishedAt": "2026-08-15T18:14:25.014Z", + "durationMs": 49317, + "exitCode": 0, + "stdout": { + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "tail": "", + "truncated": false + }, + "stderr": { + "bytes": 318629, + "sha256": "5c8c2e5a39684666e09162fabaaf08d1efccf79947ebbf98e6b61342e0d25060", + "tail": "src/diagnostics/database-connectivity.ts (14.94KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/service/src/presets/define-service.ts (8.25KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/service/src/primitives/handlers.ts (5.81KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/service/src/primitives/health.ts (7.09KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/service/src/primitives/openapi.ts (4.05KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/service/src/primitives/orpc-router.ts (393B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/service/src/primitives/rpc-path.ts (1.62KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/service/src/primitives/scalar.generated.ts (3.31MB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/service/src/runtime/runtime-host.ts (6.64KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/service/src/types.ts (7.53KB)\nSimulating publish of @netscript/watchers@0.0.6 with files:\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/watchers/README.md (5.61KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/watchers/deno.json (1.11KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/watchers/mod.ts (941B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/watchers/src/file-watcher.ts (12.71KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/watchers/src/filters/debounce.ts (3.94KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/watchers/src/filters/dedup.ts (3.23KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/watchers/src/filters/glob.ts (1.71KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/watchers/src/filters/stability.ts (3.38KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/watchers/src/fs.ts (3.36KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/watchers/src/public/mod.ts (963B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/watchers/src/strategies/hybrid.ts (2.83KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/watchers/src/strategies/native.ts (3.32KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/watchers/src/strategies/polling.ts (7.03KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/watchers/src/types.ts (5.93KB)\nSimulating publish of @netscript/plugin-auth@0.0.6 with files:\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/README.md (6.12KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/cli.ts (480B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/contracts/v1/mod.ts (304B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/database/auth.prisma (2.49KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/deno.json (2.54KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/mod.ts (236B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/package.json (200B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/scaffold.plugin.json (1.67KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/scaffold.ts (635B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/services/src/backend-registry.ts (10.42KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/services/src/init.ts (2.17KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/services/src/main.ts (4.96KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/services/src/request-context.ts (1005B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/services/src/router.ts (624B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/services/src/routers/router-context.ts (1.48KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/services/src/routers/v1-handlers.ts (14.26KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/services/src/routers/v1-helpers.ts (4.24KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/services/src/routers/v1-types.ts (4.56KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/services/src/routers/v1.ts (328B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/src/adapter/plugin.ts (1.96KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/src/adapter/resources/barrel/barrel.stub.ts (1.73KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/src/adapter/resources/barrel/barrel.ts (906B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/src/adapter/resources/input.ts (294B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/src/adapter/resources/mod.ts (184B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/src/constants.ts (925B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/src/package-metadata.generated.ts (219B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/src/public/mod.ts (2.1KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/streams/factory.ts (1.92KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/streams/mod.ts (551B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/streams/producer.ts (8.66KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/streams/schema.ts (3.25KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/streams/server.ts (842B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/auth/verify-plugin.ts (1.08KB)\nSimulating publish of @netscript/plugin-workers@0.0.6 with files:\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/README.md (6.89KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/bin/combined.ts (432B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/bin/runtime.ts (6.37KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/bin/scheduler.ts (86B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/bin/worker.ts (80B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/cli.ts (492B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/contracts/v1/mod.ts (556B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/database/workers.prisma (8.11KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/deno.json (2.86KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/doctor.ts (117B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/jobs/health-check.ts (8.05KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/jobs/job-tools.ts (231B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/mod.ts (162B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/package.json (272B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/scaffold.plugin.json (1.93KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/scaffold.runtime.json (1.7KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/scaffold.ts (647B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/services/src/generated-jobs.ts (868B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/services/src/init.ts (4.42KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/services/src/main.ts (3.18KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/services/src/router.ts (701B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/services/src/routers/admin.ts (2.02KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/services/src/routers/describe.ts (1.66KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/services/src/routers/jobs.ts (4.48KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/services/src/routers/router-context.ts (3.41KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/services/src/routers/runs.ts (5.23KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/services/src/routers/subscribe.ts (4.97KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/services/src/routers/tasks.ts (3.7KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/services/src/routers/v1.ts (1.33KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/services/src/service-runtime.ts (2.51KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/adapter/plugin.ts (5.04KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/adapter/resources/barrel/barrel.stub.ts (537B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/adapter/resources/barrel/barrel.ts (1.89KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/adapter/resources/glue/glue.ts (759B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/adapter/resources/glue/runtime.stub.ts (994B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/adapter/resources/input.ts (4.6KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/adapter/resources/job/job.stub.ts (984B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/adapter/resources/job/job.ts (1.51KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/adapter/resources/mod.ts (1.06KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/adapter/resources/resource-metadata.ts (3.01KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/adapter/resources/task/task.stub.ts (1.77KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/adapter/resources/task/task.ts (3.1KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/adapter/resources/workflow/workflow.stub.ts (653B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/adapter/resources/workflow/workflow.ts (1.07KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/aspire/mod.ts (526B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/aspire/workers-contribution.ts (2.51KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/cli/adapters/runtime-api-client.ts (2.02KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/cli/command-types.ts (2KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/cli/commands.ts (15.03KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/cli/composition/main.ts (4KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/cli/generate-runtime-registries.ts (2.16KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/cli/local-runtime-backend.ts (17.25KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/cli/mod.ts (1.48KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/cli/official-sample-configuration.ts (11.15KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/cli/registry-compiler.ts (4.17KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/cli/runtime-registry-generator.ts (12.25KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/cli/workers-cli.ts (2.24KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/e2e/mod.ts (231B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/e2e/probes/health.ts (318B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/e2e/probes/probe-context.ts (283B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/e2e/workers-gates.ts (942B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/package-metadata.generated.ts (219B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/public/mod.ts (4.65KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/src/runtime/generated-jobs.ts (7.75KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/streams/factory.ts (2.05KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/streams/mod.ts (608B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/streams/producer.ts (1.88KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/streams/schema.ts (253B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/streams/server.ts (762B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/worker/job-dispatcher.ts (10.67KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/worker/job-execution.ts (7.63KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/worker/job-runner-pool.ts (1.96KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/worker/listener-supervisor.ts (4.37KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/worker/mod.ts (1.35KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/worker/queue-consumer.ts (4.03KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/worker/scheduler-dispatch.ts (2.41KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/worker/scheduler-events.ts (1003B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/worker/scheduler-info.ts (549B)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/worker/scheduler-options.ts (3.35KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/worker/scheduler-scheduling.ts (1.98KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/worker/scheduler-tracing.ts (2.36KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/worker/scheduler.ts (9.2KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/worker/worker-idempotency-events.ts (1.14KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/worker/worker-options.ts (7.52KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/plugins/workers/worker/worker.ts (12.42KB)\nSimulating publish of @netscript/auth-kv-oauth@0.0.6 with files:\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/auth-kv-oauth/README.md (6.04KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/auth-kv-oauth/deno.json (1.01KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/auth-kv-oauth/mod.ts (2.68KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/auth-kv-oauth/src/backend.ts (12.22KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/auth-kv-oauth/src/cookies.ts (3.54KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/auth-kv-oauth/src/crypto.ts (4.08KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/auth-kv-oauth/src/errors.ts (1.08KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/auth-kv-oauth/src/flow.ts (13.63KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/auth-kv-oauth/src/providers.ts (12.46KB)\n file:///tmp/netscript-publish-dry-run-90ab52d3c1904ec8/packages/auth-kv-oauth/src/store.ts (8.64KB)\nSuccess Dry run complete\n", + "truncated": true + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/quality-job.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/quality-job.json new file mode 100644 index 0000000000..cd173a5318 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/quality-job.json @@ -0,0 +1,36 @@ +{ + "gateId": "quality-job", + "invocationId": "reference-export-s3-quality-job", + "argv": [ + "deno", + "task", + "ci:quality" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "47ca22abe94b9d2e54d3778edc8944094b227886", + "actualGitHead": "47ca22abe94b9d2e54d3778edc8944094b227886", + "timeoutMs": 1800000, + "runnerIdentity": "worker:488820", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "43aad7f122ded332f32b4bede2fb861a69a63ce009ada5f370dd0eaba4e92a51", + "lifecycleId": "worker:488820:reference-export-s3-quality-job:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T18:12:42.624Z", + "startedAt": "2026-08-15T18:12:42.627Z", + "finishedAt": "2026-08-15T18:12:53.528Z", + "durationMs": 9692, + "exitCode": 0, + "stdout": { + "bytes": 26032, + "sha256": "e106cf4157faf260ed36c09740eb9014939c3fb62db1e2250621ee636de0698f", + "tail": "telemetry/api@^1.9.0 outside package.json catalog: (catalog has ^1.9.1, inline use has ^1.9.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/consume-flow-b-stream.ts:11 packages/cli uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/consume-flow-b-stream.ts:11 packages/cli/e2e uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/ui-ai-gates.ts:140 packages/cli uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/ui-ai-gates.ts:140 packages/cli/e2e uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/ui-ai-gates.ts:174 packages/cli uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/ui-ai-gates.ts:174 packages/cli/e2e uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/contracts/deno.json:13 packages/contracts uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/deno.json:19 packages/fresh-ui uses npm:preact@^10.29.2 outside package.json catalog: (catalog has ^10.29.2)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/scripts/build-tokens.ts:1 packages/fresh-ui uses npm:style-dictionary@5.4.4 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/tests/registry/components/ui/desktop.test.tsx:2 packages/fresh-ui uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/tests/registry/islands/desktop-only.test.tsx:3 packages/fresh-ui uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/tests/runtime/accordion/accordion-render.test.tsx:2 packages/fresh-ui uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:42 packages/fresh uses npm:preact@^10.29.2 outside package.json catalog: (catalog has ^10.29.2)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:43 packages/fresh uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:45 packages/fresh uses npm:@durable-streams/state@^0.3.1 outside package.json catalog: (catalog has ^0.3.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:46 packages/fresh uses npm:@durable-streams/tanstack-ai-transport@^0.0.8 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:52 packages/fresh uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:53 packages/fresh uses npm:@preact/signals@2.9.2 outside package.json catalog: (catalog has 2.9.2)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:54 packages/fresh uses npm:@tanstack/ai@^0.39.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:55 packages/fresh uses npm:@tanstack/ai-preact@^0.10.1 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:56 packages/fresh uses npm:@tanstack/preact-query@^5.101.0 outside package.json catalog: (catalog has ^5.101.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:57 packages/fresh uses npm:@tanstack/query-core@^5.101.0 outside package.json catalog: (catalog has ^5.101.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:58 packages/fresh uses npm:@tanstack/react-db@^0.1.95 outside package.json catalog: (catalog has ^0.1.95)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:59 packages/fresh uses npm:vite@7.2.2 outside package.json catalog: (catalog has 7.2.2)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/src/application/vite/vite.test.ts:367 packages/fresh uses npm:/preact@10.29.7/hooks outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/logger/deno.json:20 packages/logger uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-ai-core/deno.json:11 packages/plugin-ai-core uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-ai-core/deno.json:12 packages/plugin-ai-core uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-auth-core/deno.json:18 packages/plugin-auth-core uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-auth-core/deno.json:19 packages/plugin-auth-core uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-sagas-core/src/stores/prisma-saga-store_integration_test.ts:2 packages/plugin-sagas-core uses npm:@prisma/adapter-pg@7.8.0 outside package.json catalog: (catalog has ^7.8.0, inline use has 7.8.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/deno.json:34 packages/plugin-workers-core uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/deno.json:35 packages/plugin-workers-core uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/executor/multi-runtime-task-executor_test.ts:1 packages/plugin-workers-core uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/executor/multi-runtime-task-executor_test.ts:2 packages/plugin-workers-core uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/streams/workers-streams_test.ts:1 packages/plugin-workers-core uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/streams/workers-streams_test.ts:2 packages/plugin-workers-core uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/streams/workers-streams_test.ts:3 packages/plugin-workers-core uses npm:@opentelemetry/core@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/streams/workers-streams_test.ts:4 packages/plugin-workers-core uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin/deno.json:28 packages/plugin uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin/deno.json:29 packages/plugin uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/queue/adapters/amqp.adapter.ts:10 packages/queue uses npm:amqplib@^0.10.3 outside package.json catalog: (catalog has ^2.0.1, inline use has ^0.10.3)\n [deps:check] WARN DEPS-NPM-CATALOG packages/queue/adapters/amqp.adapter.ts:11 packages/queue uses npm:amqplib@^0.10.3 outside package.json catalog: (catalog has ^2.0.1, inline use has ^0.10.3)\n [deps:check] WARN DEPS-NPM-CATALOG packages/queue/adapters/postgres.adapter.ts:9 packages/queue uses npm:pg@^8.21.0 outside package.json catalog: (catalog has ^8.21.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:31 packages/sdk uses npm:@orpc/client@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:32 packages/sdk uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:33 packages/sdk uses npm:@orpc/openapi@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:34 packages/sdk uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:35 packages/sdk uses npm:@orpc/tanstack-query@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:36 packages/sdk uses npm:@orpc/zod@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:37 packages/sdk uses npm:@tanstack/db@^0.6.8 outside package.json catalog: (catalog has ^0.6.8)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:38 packages/sdk uses npm:@tanstack/query-core@^5.101.0 outside package.json catalog: (catalog has ^5.101.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:39 packages/sdk uses npm:@tanstack/query-db-collection@^1.2.1 outside package.json catalog: (catalog has ^1.2.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/cache/cache-telemetry_test.ts:15 packages/sdk uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/cache/cache-telemetry_test.ts:16 packages/sdk uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/cache/cache-telemetry_test.ts:17 packages/sdk uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/type-fixtures/service-query-utils-upstream_type.ts:1 packages/sdk uses npm:@orpc/client@1.14.6 outside package.json catalog: (catalog has ^1.14.6, inline use has 1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/type-fixtures/service-query-utils-upstream_type.ts:2 packages/sdk uses npm:@orpc/tanstack-query@1.14.6 outside package.json catalog: (catalog has ^1.14.6, inline use has 1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/deno.json:22 packages/service uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/deno.json:23 packages/service uses npm:@orpc/openapi@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/deno.json:24 packages/service uses npm:@orpc/client@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/deno.json:25 packages/service uses npm:@orpc/zod@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/tests/hono-tracing_test.ts:2 packages/service uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/tests/hono-tracing_test.ts:3 packages/service uses npm:@opentelemetry/core@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/tests/hono-tracing_test.ts:4 packages/service uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/tests/hono-tracing_test.ts:5 packages/service uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/deno.json:28 packages/telemetry uses npm:@opentelemetry/semantic-conventions@1.41.1 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/adapters/otel_ai_telemetry_test.ts:2 packages/telemetry uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/adapters/otel_ai_telemetry_test.ts:6 packages/telemetry uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/hono/otel_middleware_test.ts:4 packages/telemetry uses npm:@opentelemetry/core@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/hono/otel_middleware_test.ts:5 packages/telemetry uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/hono/otel_middleware_test.ts:6 packages/telemetry uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG plugins/workers/jobs/job-tools_test.ts:2 plugins/workers uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG plugins/workers/jobs/job-tools_test.ts:3 plugins/workers uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG plugins/workers/jobs/job-tools_test.ts:4 plugins/workers uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] zod-alignment PASS instances=zod@3.25.76,zod@4.4.3 residual-v3=@ag-ui/core@0.0.52,@olli/kvdex@3.6.7\n [lint] {\"source\":{\"mode\":\"command\",\"cwd\":\"/home/codex/repos/netscript-007-reference-export\",\"exitCode\":0},\"selection\":{\"filesSelected\":2036,\"batches\":11},\"summary\":{\"totalOccurrences\":0,\"uniqueOccurrences\":0,\"uniqueRules\":0,\"uniquePaths\":0},\"groups\":[]}\n [check:emitted-samples] Checked 47 emitted TypeScript samples from 37 artifact paths.\n", + "truncated": true + }, + "stderr": { + "bytes": 6162, + "sha256": "7070385b716f9895dcfffe2a7bdb1cf00bef7f065c76aa071f00fe1bbdb07ca1", + "tail": "Task check deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-check.ts --root packages --root plugins --ext ts,tsx --exclude \"^(.*(?:^|/)\\.generated/|.*(?:^|/)node_modules/)\" (cached, inputs unchanged)\nTask check:emitted-samples deno run --allow-read --allow-write --allow-run .llm/tools/validation/check-emitted-samples.ts\nTask check:streams-types deno task --cwd packages/fresh check:streams-types\n [check:streams-types] Task check:streams-types deno check --no-lock --config ./tests/type-fixtures/streamdb-consumer-deno.json --unstable-kv ./tests/type-fixtures/streamdb-wrapper_type.ts\nTask lint deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-lint.ts --root packages --root plugins --ext ts,tsx --exclude \"^(packages/(cli)|packages/mcp/tests/fixtures/doctor/|.*(?:^|/)\\.generated/|.*(?:^|/)node_modules/)\"\n [check:streams-types] Check tests/type-fixtures/streamdb-wrapper_type.ts\nTask fmt:check deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-fmt.ts --root packages --root plugins --ext ts,tsx --exclude \"^(packages/(cli)|packages/mcp/tests/fixtures/doctor/|.*(?:^|/)\\.generated/|.*(?:^|/)node_modules/)\" --ignore-line-endings\nTask deps:check deno run --allow-read .llm/tools/deps/scan-jsr-centralization.ts --fail-on-violation && deno run --allow-read .llm/tools/deps/audit-file-link.ts --fail-on-violation && deno run --allow-read .llm/tools/deps/scan-npm-catalog-compliance.ts && deno task deps:check:zod\nTask check:netscript-jsr-specifiers deno run --allow-read .llm/tools/validation/check-netscript-jsr-specifiers.ts --pretty\nTask check:aspire-host-ports deno run --allow-read .llm/tools/validation/check-aspire-host-ports.ts --pretty\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/ai/agents/assistant.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/ai/ai.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/ai/mcp/registry.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/ai/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/ai/models.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/ai/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/ai/routes/chat-stream.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/ai/routes/chat.tsx\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/ai/thread-store.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/ai/tools/echo.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/auth/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/auth/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/islands/InvoicesStream.tsx\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/routes/api/streams/invoices/seed.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/sagas/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/sagas/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/sagas/runtime.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/sagas/user-registration-saga.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/sagas/user-registration.config.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/streams/invoices-db.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/streams/invoices-producer.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/streams/invoices-schema.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/streams/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/streams/notifications-stream.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/streams/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/triggers/daily-maintenance.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/triggers/generic-inbound-webhook.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/triggers/incoming-file-watch.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/triggers/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/triggers/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/triggers/runtime.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/workers/jobs/health-check.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/workers/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/workers/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/workers/runtime.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/workers/tasks/validate-payload.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-ba9c3d4b2f2f07a5/workers/workflows/daily-maintenance.ts\n [deps:check] Task deps:check:zod deno run --allow-read .llm/tools/deps/check-zod-alignment.ts\nTask ci:quality (no command)\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/test.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/test.json new file mode 100644 index 0000000000..42917f2173 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/s3/test.json @@ -0,0 +1,36 @@ +{ + "gateId": "test", + "invocationId": "reference-export-s3-test", + "argv": [ + "deno", + "task", + "test" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "47ca22abe94b9d2e54d3778edc8944094b227886", + "actualGitHead": "47ca22abe94b9d2e54d3778edc8944094b227886", + "timeoutMs": 1800000, + "runnerIdentity": "worker:471749", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "d71546d79832049b7e8a4d79fc51b5c2e42b8e1b9e3836e77968df87fde755a6", + "lifecycleId": "worker:471749:reference-export-s3-test:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T18:06:44.647Z", + "startedAt": "2026-08-15T18:06:44.649Z", + "finishedAt": "2026-08-15T18:12:35.256Z", + "durationMs": 337345, + "exitCode": 0, + "stdout": { + "bytes": 270, + "sha256": "b914642e678d347013d3ba8c0033fc555deb769582b9f652a59d2e16a84ba150", + "tail": "{\"schemaVersion\":1,\"command\":[\"deno\",\"test\",\"--reporter=tap\",\"--allow-all\"],\"cwd\":\"/home/codex/repos/netscript-007-reference-export\",\"exitCode\":0,\"durationMs\":337237,\"summary\":{\"passed\":4203,\"failed\":0,\"ignored\":19,\"totalResults\":4222,\"uniqueFailures\":0},\"failures\":[]}\n", + "truncated": false + }, + "stderr": { + "bytes": 101, + "sha256": "5ae7e9d1dade1dc447e471529cd4f870e6b8391091eb2b26d56244ed895c3917", + "tail": "Task test deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-test.ts -- --allow-all\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/agent-docs-prose.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/agent-docs-prose.json new file mode 100644 index 0000000000..d23f8a2dcc --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/agent-docs-prose.json @@ -0,0 +1,36 @@ +{ + "gateId": "agent-docs-prose", + "invocationId": "reference-export-sa4-agent-docs-prose", + "argv": [ + "deno", + "task", + "check:agent-docs-prose" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "actualGitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "timeoutMs": 1800000, + "runnerIdentity": "worker:765747", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "b2d11c78182ae6ad7dd010b0c0b64ebd0e763a497fcefc00dfc4a44b0d4a6582", + "lifecycleId": "worker:765747:reference-export-sa4-agent-docs-prose:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T19:57:42.676Z", + "startedAt": "2026-08-15T19:57:42.678Z", + "finishedAt": "2026-08-15T19:57:56.567Z", + "durationMs": 11679, + "exitCode": 0, + "stdout": { + "bytes": 47934, + "sha256": "fa0b2b617c0da331c596a631ba3dc06815080c837d45bdacbb8ee12e88f35761", + "tail": "d21b.pf_index <- (generated)\n🔥 /pagefind/index/en_de494bb.pf_index <- (generated)\n🔥 /pagefind/index/en_d4e2318.pf_index <- (generated)\n🔥 /pagefind/index/en_23407a8.pf_index <- (generated)\n🔥 /pagefind/index/en_6f3e75d.pf_index <- (generated)\n🔥 /pagefind/index/en_cadfd84.pf_index <- (generated)\n🔥 /pagefind/index/en_e28f932.pf_index <- (generated)\n🔥 /pagefind/index/en_751583d.pf_index <- (generated)\n🔥 /pagefind/index/en_49c1bc6.pf_index <- (generated)\n🔥 /pagefind/index/en_5492aa7.pf_index <- (generated)\n🔥 /pagefind/index/en_dab6f4f.pf_index <- (generated)\n🔥 /pagefind/index/en_2d455b4.pf_index <- (generated)\n🔥 /pagefind/index/en_73193f7.pf_index <- (generated)\n🔥 /pagefind/index/en_5dc2179.pf_index <- (generated)\n🔥 /pagefind/index/en_6e71505.pf_index <- (generated)\n🔥 /pagefind/index/en_40ed562.pf_index <- (generated)\n🔥 /pagefind/index/en_3d2199e.pf_index <- (generated)\n🔥 /pagefind/index/en_9f31a8e.pf_index <- (generated)\n🔥 /pagefind/index/en_d64bcb2.pf_index <- (generated)\n🔥 /pagefind/index/en_cf98ea2.pf_index <- (generated)\n🔥 /pagefind/index/en_66ca5bb.pf_index <- (generated)\n🔥 /pagefind/index/en_ce264da.pf_index <- (generated)\n🔥 /pagefind/index/en_9073e09.pf_index <- (generated)\n🔥 /pagefind/index/en_88aafaf.pf_index <- (generated)\n🔥 /pagefind/pagefind.js <- (generated)\n🔥 /pagefind/pagefind-highlight.js <- (generated)\n🔥 /pagefind/pagefind-ui.js <- (generated)\n🔥 /pagefind/pagefind-ui.css <- (generated)\n🔥 /pagefind/pagefind-modular-ui.js <- (generated)\n🔥 /pagefind/pagefind-modular-ui.css <- (generated)\n🔥 /pagefind/wasm.unknown.pagefind <- (generated)\n🔥 /pagefind/pagefind-entry.json <- (generated)\n🔥 /glossary/index.md <- (generated)\n🔥 /how-to/ <- /how-to/index.md\n🔥 /tutorials/ <- /tutorials/index.md\n🔥 /tutorials/workspace/ <- /tutorials/workspace/index.md\n🔥 /tutorials/workspace/04-provision-job/ <- /tutorials/workspace/04-provision-job.md\n🔥 /tutorials/workspace/05-route-authz/ <- /tutorials/workspace/05-route-authz.md\n🔥 /tutorials/workspace/06-deploy/ <- /tutorials/workspace/06-deploy.md\n🔥 /tutorials/workspace/01-scaffold/ <- /tutorials/workspace/01-scaffold.md\n🔥 /tutorials/workspace/02-auth/ <- /tutorials/workspace/02-auth.md\n🔥 /tutorials/workspace/03-workspace-data/ <- /tutorials/workspace/03-workspace-data.md\n🔥 /tutorials/chat/ <- /tutorials/chat/index.md\n🔥 /tutorials/chat/04-tool-call/ <- /tutorials/chat/04-tool-call.md\n🔥 /tutorials/chat/03-chat-ui/ <- /tutorials/chat/03-chat-ui.md\n🔥 /tutorials/chat/05-mcp/ <- /tutorials/chat/05-mcp.md\n🔥 /tutorials/chat/01-scaffold/ <- /tutorials/chat/01-scaffold.md\n🔥 /tutorials/chat/06-live-streaming/ <- /tutorials/chat/06-live-streaming.md\n🔥 /tutorials/chat/02-durable-chat-route/ <- /tutorials/chat/02-durable-chat-route.md\n🔥 /tutorials/live-dashboard/04-definePage-QueryIsland/ <- /tutorials/live-dashboard/04-definePage-QueryIsland.md\n🔥 /tutorials/live-dashboard/ <- /tutorials/live-dashboard/index.md\n🔥 /tutorials/live-dashboard/06-deploy/ <- /tutorials/live-dashboard/06-deploy.md\n🔥 /tutorials/live-dashboard/01-scaffold/ <- /tutorials/live-dashboard/01-scaffold.md\n🔥 /tutorials/live-dashboard/02-contract-to-service/ <- /tutorials/live-dashboard/02-contract-to-service.md\n🔥 /tutorials/live-dashboard/03-sdk-cache-first-query/ <- /tutorials/live-dashboard/03-sdk-cache-first-query.md\n🔥 /tutorials/live-dashboard/05-live-stream/ <- /tutorials/live-dashboard/05-live-stream.md\n🔥 /tutorials/eis-chat/ <- /tutorials/eis-chat/index.md\n🔥 /tutorials/eis-chat/01-scaffold/ <- /tutorials/eis-chat/01-scaffold.md\n🔥 /tutorials/eis-chat/03-deliver-worker/ <- /tutorials/eis-chat/03-deliver-worker.md\n🔥 /tutorials/eis-chat/02-message-contract/ <- /tutorials/eis-chat/02-message-contract.md\n🔥 /tutorials/eis-chat/04-live-stream/ <- /tutorials/eis-chat/04-live-stream.md\n🔥 /tutorials/erp-sync/ <- /tutorials/erp-sync/index.md\n🔥 /tutorials/erp-sync/02-import-job/ <- /tutorials/erp-sync/02-import-job.md\n🔥 /tutorials/erp-sync/01-scaffold/ <- /tutorials/erp-sync/01-scaffold.md\n🔥 /tutorials/erp-sync/03-polyglot-transform/ <- /tutorials/erp-sync/03-polyglot-transform.md\n🔥 /tutorials/erp-sync/05-deploy/ <- /tutorials/erp-sync/05-deploy.md\n🔥 /tutorials/erp-sync/04-queue-and-cron/ <- /tutorials/erp-sync/04-queue-and-cron.md\n🔥 /tutorials/storefront/04-checkout-saga/ <- /tutorials/storefront/04-checkout-saga.md\n🔥 /tutorials/storefront/ <- /tutorials/storefront/index.md\n🔥 /tutorials/storefront/06-storefront-ui/ <- /tutorials/storefront/06-storefront-ui.md\n🔥 /tutorials/storefront/01-scaffold/ <- /tutorials/storefront/01-scaffold.md\n🔥 /tutorials/storefront/07-deploy/ <- /tutorials/storefront/07-deploy.md\n🔥 /tutorials/storefront/02-catalog-service/ <- /tutorials/storefront/02-catalog-service.md\n🔥 /tutorials/storefront/05-shipping-webhook/ <- /tutorials/storefront/05-shipping-webhook.md\n🔥 /tutorials/storefront/03-cart-contracts/ <- /tutorials/storefront/03-cart-contracts.md\n🔥 /why/ <- /why.vto\n🔥 /quickstart/aspire/ <- /quickstart/aspire.md\n🔥 /ai/how-to/ <- /ai/how-to/index.md\n🔥 /ai/how-to/build-a-durable-chat/ <- /ai/how-to/build-a-durable-chat.md\n🔥 /ai/agent-tooling/ <- /ai/agent-tooling.md\n🔥 /ai/ <- /ai/index.md\n🔥 /ai/durable-chat/ <- /ai/durable-chat.md\n🔥 /ai/mcp/ <- /ai/mcp.md\n🔥 /ai/engine/ <- /ai/engine.md\n🔥 /ai/chat-ui/ <- /ai/chat-ui.md\n🔥 /quickstart/ <- /quickstart.vto\n🔥 /comparisons/ <- /comparisons/index.md\n🔥 /comparisons/backend/ <- /comparisons/backend.md\n🔥 /comparisons/frontend/ <- /comparisons/frontend.md\n🔥 /cli-reference/ <- /cli-reference.md\n🔥 /durable-workflows/how-to/ <- /durable-workflows/how-to/index.md\n🔥 /durable-workflows/how-to/publish-a-durable-stream/ <- /durable-workflows/how-to/publish-a-durable-stream.md\n🔥 /durable-workflows/how-to/build-a-validated-ingestion-queue/ <- /durable-workflows/how-to/build-a-validated-ingestion-queue.md\n🔥 /durable-workflows/streams/ <- /durable-workflows/streams.md\n🔥 /durable-workflows/ <- /durable-workflows/index.md\n🔥 /durable-workflows/sagas/ <- /durable-workflows/sagas.md\n🔥 /durable-workflows/triggers/ <- /durable-workflows/triggers.md\n🔥 / <- /index.vto\n🔥 /concepts/ <- /concepts.vto\n🔥 /reference/queue/ <- /reference/queue/index.md\n🔥 /reference/auth-workos/ <- /reference/auth-workos/index.md\n🔥 /reference/mcp/ <- /reference/mcp/index.md\n🔥 /reference/ai/skills/ <- /reference/ai/skills.md\n🔥 /reference/ai/ <- /reference/ai/index.md\n🔥 /assets/diagrams/saga-state-machine.svg <- /assets/diagrams/saga-state-machine.svg\n🔥 /assets/diagrams/polyglot-task-execution.svg <- /assets/diagrams/polyglot-task-execution.svg\n🔥 /styles/tokens.css <- /styles/tokens.css\n🔥 /assets/diagrams/sdk-data-flow.svg <- /assets/diagrams/sdk-data-flow.svg\n🔥 /assets/diagrams/aspire-resource-graph.svg <- /assets/diagrams/aspire-resource-graph.svg\n🔥 /assets/diagrams/otel-traceparent.svg <- /assets/diagrams/otel-traceparent.svg\n🔥 /assets/diagrams/contract-flow.svg <- /assets/diagrams/contract-flow.svg\n🔥 /assets/diagrams/runtime-config-resolution.svg <- /assets/diagrams/runtime-config-resolution.svg\n🔥 /assets/diagrams/queue-worker-scheduler.svg <- /assets/diagrams/queue-worker-scheduler.svg\n🔥 /assets/diagrams/request-lifecycle.svg <- /assets/diagrams/request-lifecycle.svg\n🔥 /assets/diagrams/fresh-page-model.svg <- /assets/diagrams/fresh-page-model.svg\n🔥 /assets/diagrams/architecture-overview.svg <- /assets/diagrams/architecture-overview.svg\n🔥 /assets/diagrams/trigger-ingress-flow.svg <- /assets/diagrams/trigger-ingress-flow.svg\n🔥 /favicon.svg <- /favicon.svg\n🔥 /assets/diagrams/streams-pipeline.svg <- /assets/diagrams/streams-pipeline.svg\n🔥 /assets/diagrams/auth-flow.svg <- /assets/diagrams/auth-flow.svg\n🔥 /styles/docs.css <- /styles/docs.css\n🔥 /assets/diagrams/database-schema-aggregation.svg <- /assets/diagrams/database-schema-aggregation.svg\n🔥 /assets/diagrams/plugin-thread-isolation.svg <- /assets/diagrams/plugin-thread-isolation.svg\n🍾 Site built into _site\n 638 files generated in 10.61 seconds\nRendered output: OK (homepage semantics; 227 HTML files; 4 documented-syntax allowances)\n{\"fresh\":true,\"stalePaths\":[],\"provenance\":{\"schemaVersion\":1,\"version\":\"0.0.6\",\"sourceCommit\":\"f98cfabac\",\"extractionTimestamp\":\"2026-08-15T19:47:49.434Z\",\"files\":[\"context/01-how-the-web-became-the-default.mdx\",\"context/02-how-the-web-stack-grew-up.mdx\",\"llms-full.txt\",\"llms.txt\",\"pages/ai/agent-tooling/index.md\",\"pages/ai/chat-ui/index.md\",\"pages/ai/durable-chat/index.md\",\"pages/ai/engine/index.md\",\"pages/ai/how-to/build-a-durable-chat/index.md\",\"pages/ai/how-to/index.md\",\"pages/ai/index.md\",\"pages/ai/mcp/index.md\",\"pages/background-processing/how-to/add-a-task-runtime-adapter/index.md\",\"pages/background-processing/how-to/index.md\",\"pages/background-processing/how-to/restrict-worker-task-permissions/index.md\",\"pages/background-processing/how-to/run-a-polyglot-task/index.md\",\"pages/background-processing/how-to/tune-worker-runtime/index.md\",\"pages/background-processing/index.md\",\"pages/background-processing/polyglot-tasks/index.md\",\"pages/background-processing/workers/index.md\",\"pages/cli-reference/index.md\",\"pages/comparisons/backend/index.md\",\"pages/comparisons/frontend/index.md\",\"pages/comparisons/index.md\",\"pages/concepts/index.md\",\"pages/data-persistence/database/index.md\",\"pages/data-persistence/how-to/choose-a-queue-provider/index.md\",\"pages/data-persistence/how-to/database-migration/index.md\",\"pages/data-persistence/how-to/index.md\",\"pages/data-persistence/how-to/queue-kv-cron/index.md\",\"pages/data-persistence/how-to/use-a-second-database/index.md\",\"pages/data-persistence/index.md\",\"pages/data-persistence/kv-queues-cron/index.md\",\"pages/durable-workflows/how-to/build-a-validated-ingestion-queue/index.md\",\"pages/durable-workflows/how-to/index.md\",\"pages/durable-workflows/how-to/publish-a-durable-stream/index.md\",\"pages/durable-workflows/index.md\",\"pages/durable-workflows/sagas/index.md\",\"pages/durable-workflows/streams/index.md\",\"pages/durable-workflows/triggers/index.md\",\"pages/explanation/architecture/index.md\",\"pages/explanation/aspire/index.md\",\"pages/explanation/auth-model/index.md\",\"pages/explanation/compared/index.md\",\"pages/explanation/contracts/index.md\",\"pages/explanation/durability-model/index.md\",\"pages/explanation/index.md\",\"pages/explanation/observability/index.md\",\"pages/explanation/plugin-system/index.md\",\"pages/glossary/index.md\",\"pages/how-to/index.md\",\"pages/identity-access/auth/index.md\",\"pages/identity-access/better-auth-plugins/index.md\",\"pages/identity-access/how-to/add-authentication/index.md\",\"pages/identity-access/how-to/index.md\",\"pages/identity-access/index.md\",\"pages/identity-access/session-lifecycles/index.md\",\"pages/index.md\",\"pages/observability/how-to/add-opentelemetry/index.md\",\"pages/observability/how-to/index.md\",\"pages/observability/index.md\",\"pages/observability/telemetry/index.md\",\"pages/orchestration-runtime/cli-scaffold/index.md\",\"pages/orchestration-runtime/how-to/add-a-plugin/index.md\",\"pages/orchestration-runtime/how-to/author-a-plugin/index.md\",\"pages/orchestration-runtime/how-to/deno-lsp-code-intelligence/index.md\",\"pages/orchestration-runtime/how-to/deploy-deno-deploy/index.md\",\"pages/orchestration-runtime/how-to/deploy-local-aspire/index.md\",\"pages/orchestration-runtime/how-to/deploy/index.md\",\"pages/orchestration-runtime/how-to/graceful-shutdown/index.md\",\"pages/orchestration-runtime/how-to/index.md\",\"pages/orchestration-runtime/how-to/roll-out-runtime-overrides/index.md\",\"pages/orchestration-runtime/index.md\",\"pages/orchestration-runtime/runtime-config/index.md\",\"pages/quickstart/aspire/index.md\",\"pages/quickstart/index.md\",\"pages/reference/ai/index.md\",\"pages/reference/ai/skills/index.md\",\"pages/reference/aspire/index.md\",\"pages/reference/auth-better-auth/index.md\",\"pages/reference/auth-kv-oauth/index.md\",\"pages/reference/auth-workos/index.md\",\"pages/reference/auth/index.md\",\"pages/reference/cli/commands/index.md\",\"pages/reference/cli/index.md\",\"pages/reference/config/index.md\",\"pages/reference/contracts/index.md\",\"pages/reference/cron/index.md\",\"pages/reference/database/index.md\",\"pages/reference/fresh-ui/index.md\",\"pages/reference/fresh/index.md\",\"pages/reference/index.md\",\"pages/reference/kv/index.md\",\"pages/reference/logger/index.md\",\"pages/reference/mcp/index.md\",\"pages/reference/plugin-ai-core/index.md\",\"pages/reference/plugin-ai/index.md\",\"pages/reference/plugin-auth-core/index.md\",\"pages/reference/plugin-auth/index.md\",\"pages/reference/plugin-sagas-core/index.md\",\"pages/reference/plugin-streams-core/index.md\",\"pages/reference/plugin-triggers-core/index.md\",\"pages/reference/plugin-workers-core/index.md\",\"pages/reference/plugin/index.md\",\"pages/reference/prisma-adapter-mysql/index.md\",\"pages/reference/queue/index.md\",\"pages/reference/runtime-config/index.md\",\"pages/reference/sagas/index.md\",\"pages/reference/sdk/index.md\",\"pages/reference/service/index.md\",\"pages/reference/streams/index.md\",\"pages/reference/telemetry/index.md\",\"pages/reference/triggers/index.md\",\"pages/reference/watchers/index.md\",\"pages/reference/workers/index.md\",\"pages/services-sdk/how-to/add-a-service/index.md\",\"pages/services-sdk/how-to/discover-services/index.md\",\"pages/services-sdk/how-to/expose-openapi-scalar/index.md\",\"pages/services-sdk/how-to/index.md\",\"pages/services-sdk/index.md\",\"pages/services-sdk/sdk/index.md\",\"pages/services-sdk/services/index.md\",\"pages/tutorials/chat/01-scaffold/index.md\",\"pages/tutorials/chat/02-durable-chat-route/index.md\",\"pages/tutorials/chat/03-chat-ui/index.md\",\"pages/tutorials/chat/04-tool-call/index.md\",\"pages/tutorials/chat/05-mcp/index.md\",\"pages/tutorials/chat/06-live-streaming/index.md\",\"pages/tutorials/chat/index.md\",\"pages/tutorials/erp-sync/01-scaffold/index.md\",\"pages/tutorials/erp-sync/02-import-job/index.md\",\"pages/tutorials/erp-sync/03-polyglot-transform/index.md\",\"pages/tutorials/erp-sync/04-queue-and-cron/index.md\",\"pages/tutorials/erp-sync/05-deploy/index.md\",\"pages/tutorials/erp-sync/index.md\",\"pages/tutorials/index.md\",\"pages/tutorials/live-dashboard/01-scaffold/index.md\",\"pages/tutorials/live-dashboard/02-contract-to-service/index.md\",\"pages/tutorials/live-dashboard/03-sdk-cache-first-query/index.md\",\"pages/tutorials/live-dashboard/04-definePage-QueryIsland/index.md\",\"pages/tutorials/live-dashboard/05-live-stream/index.md\",\"pages/tutorials/live-dashboard/06-deploy/index.md\",\"pages/tutorials/live-dashboard/index.md\",\"pages/tutorials/storefront/01-scaffold/index.md\",\"pages/tutorials/storefront/02-catalog-service/index.md\",\"pages/tutorials/storefront/03-cart-contracts/index.md\",\"pages/tutorials/storefront/04-checkout-saga/index.md\",\"pages/tutorials/storefront/05-shipping-webhook/index.md\",\"pages/tutorials/storefront/06-storefront-ui/index.md\",\"pages/tutorials/storefront/07-deploy/index.md\",\"pages/tutorials/storefront/index.md\",\"pages/tutorials/workspace/01-scaffold/index.md\",\"pages/tutorials/workspace/02-auth/index.md\",\"pages/tutorials/workspace/03-workspace-data/index.md\",\"pages/tutorials/workspace/04-provision-job/index.md\",\"pages/tutorials/workspace/05-route-authz/index.md\",\"pages/tutorials/workspace/06-deploy/index.md\",\"pages/tutorials/workspace/index.md\",\"pages/web-layer/builders/index.md\",\"pages/web-layer/defer-streaming-ui/index.md\",\"pages/web-layer/error/index.md\",\"pages/web-layer/examples/index.md\",\"pages/web-layer/form/index.md\",\"pages/web-layer/fresh-ui/index.md\",\"pages/web-layer/how-to/build-a-desktop-frontend/index.md\",\"pages/web-layer/how-to/build-a-server-validated-form/index.md\",\"pages/web-layer/how-to/customize-fresh-ui/index.md\",\"pages/web-layer/how-to/index.md\",\"pages/web-layer/index.md\",\"pages/web-layer/interactive/index.md\",\"pages/web-layer/layers/index.md\",\"pages/web-layer/partials/index.md\",\"pages/web-layer/query-bridge/index.md\",\"pages/web-layer/query/index.md\",\"pages/web-layer/resources/index.md\",\"pages/web-layer/response/index.md\",\"pages/web-layer/route/index.md\",\"pages/web-layer/server/index.md\",\"pages/web-layer/testing/index.md\",\"pages/web-layer/vite/index.md\",\"pages/why/index.md\"],\"uncompressedBytes\":4768211,\"compressedBytes\":1367454,\"sha256\":\"78d5fed4792e34b8592dbf2fd5b87ae879e71dac54a4cca99cad700a58030114\"}}\n", + "truncated": true + }, + "stderr": { + "bytes": 2242, + "sha256": "8cfffaebeb6dfcc670e1a943cc09dee80cf7aceef5be0c871eeb7e1877842833", + "tail": "Task check:agent-docs-prose deno task gen:agent-docs-prose --check\nTask gen:agent-docs-prose deno task --cwd docs/site build && deno run --no-lock --allow-read --allow-write --allow-run=git .llm/tools/docs/build-agent-docs-bundle.ts --site-dir docs/site/_site '--check'\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\nTask build deno task check:source-format && deno task lume && deno task check:rendered-output\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\nTask check:source-format deno run --no-lock --allow-read _plugins/check-source-format.ts .\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\nTask lume echo \"import 'lume/cli.ts'\" | deno run --unstable-temporal -A -\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\nTask check:rendered-output deno run --no-lock --allow-read _plugins/check-rendered-output.ts _site/index.html\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/arch-check.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/arch-check.json new file mode 100644 index 0000000000..4c9511d068 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/arch-check.json @@ -0,0 +1,36 @@ +{ + "gateId": "arch-check", + "invocationId": "reference-export-sa4-arch-check", + "argv": [ + "deno", + "task", + "arch:check" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "actualGitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "timeoutMs": 1800000, + "runnerIdentity": "worker:764039", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "f84bad68597eeca8df94e769deb94e05fa8bc2925cd34dada831a6116514fb2e", + "lifecycleId": "worker:764039:reference-export-sa4-arch-check:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T19:56:57.376Z", + "startedAt": "2026-08-15T19:56:57.379Z", + "finishedAt": "2026-08-15T19:57:04.072Z", + "durationMs": 6693, + "exitCode": 0, + "stdout": { + "bytes": 39909, + "sha256": "d77dafaa286327a322f3f2086c602375ed79ec21ba740af7071b1a5ab9a5d607", + "tail": " instead (e2e/suites/quickstart/quickstart-walk-suite.ts)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/kernel/adapters/database/scaffolder.ts:44)\n# Doctrine readiness — config\n FAIL=0 WARN=2 INFO=1\n WARN A8/AP-1/F-1: file is 635 lines (cap 300) — split into smaller single-reason files (src/domain/config-section-types.ts)\n WARN A8/AP-1/F-1: file is 317 lines (cap 300) — split into smaller single-reason files (src/domain/schemas/deploy-schema.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — contracts\n FAIL=0 WARN=2 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A1/A2/A7: exports Result/Either/Option-style contract — keep it package-specific, documented, and inline unless multiple real consumers justify a shared contract (src/domain/result.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — cron\n FAIL=0 WARN=1 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — database\n FAIL=0 WARN=7 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 529 lines (cap 500) — split into smaller single-reason files (adapters/mssql.adapter.ts)\n WARN A8/AP-1/F-1: file is 640 lines (cap 500) — split into smaller single-reason files (extensions/sql-json.extension.ts)\n WARN A8/AP-1/F-1: file is 555 lines (cap 500) — split into smaller single-reason files (scripts/fix-zod-imports.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (scripts/migrate.ts)\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (scripts/generate-zod.ts)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (extensions/sql-json.extension.ts:639)\n# Doctrine readiness — fresh\n FAIL=0 WARN=3 INFO=1\n WARN A8/AP-1/F-1: file is 609 lines (cap 500) — split into smaller single-reason files (src/runtime/ai/create-chat-connection.ts)\n WARN A8/AP-1/F-1: file is 604 lines (cap 500) — split into smaller single-reason files (src/application/route/manifest.ts)\n WARN F-16: directory has 13 immediate children; doctrine cap is 12 (src/runtime/ai)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — fresh-ui\n FAIL=0 WARN=5 INFO=1\n WARN AP-16/F-11: forbidden folder name 'lib' — split into domain/, application/, or adapters/ aligned to a real concern (registry/lib)\n WARN A8/AP-1/F-1: file is 669 lines (cap 500) — split into smaller single-reason files (src/chat/parse-blocks.ts)\n WARN A8/AP-1/F-1: file is 1512 lines (cap 500) — split into smaller single-reason files (registry.manifest.ts)\n WARN F-16: directory has 16 immediate children; doctrine cap is 12\n WARN F-16: directory has 99 immediate children; doctrine cap is 12 (registry/components/ui)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — kv\n FAIL=0 WARN=5 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 827 lines (cap 500) — split into smaller single-reason files (adapters/redis.adapter.ts)\n WARN A8/AP-1/F-1: file is 674 lines (cap 500) — split into smaller single-reason files (adapters/denokv-bridge.ts)\n WARN A8/AP-1/F-1: file is 541 lines (cap 500) — split into smaller single-reason files (adapters/memory.adapter.ts)\n WARN A8/AP-1/F-1: file is 592 lines (cap 500) — split into smaller single-reason files (adapters/deno-kv.adapter.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — logger\n FAIL=0 WARN=1 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — mcp\n FAIL=0 WARN=3 INFO=1\n WARN A8/AP-1/F-1: file is 367 lines (cap 300) — split into smaller single-reason files (src/domain/tool-contracts.ts)\n WARN F-16: directory has 14 immediate children; doctrine cap is 12 (src/domain)\n WARN F-16: directory has 16 immediate children; doctrine cap is 12 (src/application/flows)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — plugin\n FAIL=0 WARN=3 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN F-16: directory has 17 immediate children; doctrine cap is 12 (src)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12 (src/config/domain)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — plugin-ai-core\n FAIL=0 WARN=1 INFO=0\n WARN A8/AP-1/F-1: file is 310 lines (cap 300) — split into smaller single-reason files (src/contracts/v1/ai.contract-schemas.ts)\n# Doctrine readiness — plugin-auth-core\n FAIL=0 WARN=2 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 519 lines (cap 500) — split into smaller single-reason files (src/contracts/v1/auth.contract.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — plugin-sagas-core\n FAIL=0 WARN=2 INFO=2\n WARN A8/AP-1/F-1: file is 739 lines (cap 500) — split into smaller single-reason files (src/contracts/v1/sagas.contract.ts)\n WARN F-16: directory has 19 immediate children; doctrine cap is 12 (src)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n# Doctrine readiness — plugin-streams-core\n FAIL=0 WARN=1 INFO=1\n WARN A8/AP-1/F-1: file is 515 lines (cap 500) — split into smaller single-reason files (src/application/durable-stream-producer-supervisor.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — plugin-triggers-core\n FAIL=0 WARN=3 INFO=2\n WARN A8/AP-1/F-1: file is 722 lines (cap 500) — split into smaller single-reason files (src/contracts/v1/triggers.contract.ts)\n WARN F-16: directory has 13 immediate children; doctrine cap is 12 (src/ports)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12 (src/runtime)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n# Doctrine readiness — plugin-workers-core\n FAIL=0 WARN=5 INFO=2\n WARN A8/AP-1/F-1: file is 305 lines (cap 300) — split into smaller single-reason files (src/domain/job-spec.ts)\n WARN A8/AP-1/F-1: file is 426 lines (cap 300) — split into smaller single-reason files (src/domain/task.ts)\n WARN A8/AP-1/F-1: file is 574 lines (cap 500) — split into smaller single-reason files (src/contracts/v1/workers.contract-definition.ts)\n WARN F-16: directory has 18 immediate children; doctrine cap is 12 (src)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12 (src/executor/adapters)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n# Doctrine readiness — prisma-adapter-mysql\n FAIL=0 WARN=2 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 809 lines (cap 500) — split into smaller single-reason files (src/adapter.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — queue\n FAIL=0 WARN=2 INFO=1\n WARN A8/AP-1/F-1: file is 785 lines (cap 500) — split into smaller single-reason files (adapters/kv-polling.adapter.ts)\n WARN A8/AP-1/F-1: file is 582 lines (cap 500) — split into smaller single-reason files (adapters/postgres.adapter.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — runtime-config\n FAIL=0 WARN=1 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — sdk\n FAIL=0 WARN=1 INFO=1\n WARN F-16: directory has 13 immediate children; doctrine cap is 12 (src)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — service\n FAIL=0 WARN=3 INFO=1\n WARN A5/AP-5/F-4: class Gq sits 3+ levels deep in inheritance chain — prefer composition\n WARN A5/AP-5/F-4: class dW sits 3+ levels deep in inheritance chain — prefer composition\n WARN A8/AP-1/F-1: file is 531 lines (cap 500) — split into smaller single-reason files (src/builder/service-builder-impl.ts)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — telemetry\n FAIL=0 WARN=5 INFO=1\n WARN A8/AP-1/F-1: file is 539 lines (cap 500) — split into smaller single-reason files (src/instrumentation/scheduler.ts)\n WARN A8/AP-1/F-1: file is 670 lines (cap 500) — split into smaller single-reason files (src/instrumentation/worker.ts)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12\n WARN F-16: directory has 14 immediate children; doctrine cap is 12 (src/attributes)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (src/adapters/otel/otel-sdk.ts)\n# Doctrine readiness — watchers\n FAIL=0 WARN=1 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n# Doctrine readiness — ai\n FAIL=0 WARN=5 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (cli.ts)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/chat-route/chat-route.stub.ts:41)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:40)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:25)\n# Doctrine readiness — auth\n FAIL=0 WARN=5 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN F-16: directory has 13 immediate children; doctrine cap is 12\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (services/src/main.ts:54)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n# Doctrine readiness — sagas\n FAIL=0 WARN=8 INFO=2\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN A8/AP-1/F-1: file is 374 lines (cap 300) — split into smaller single-reason files (services/src/routers/v1-types.ts)\n WARN F-16: directory has 15 immediate children; doctrine cap is 12\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (services/src/main.ts:46)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/saga/saga.stub.ts:60)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/saga/saga.stub.ts:95)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n# Doctrine readiness — streams\n FAIL=0 WARN=5 INFO=1\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/stream/stream.stub.ts:84)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/consumer/consumer.stub.ts:78)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n# Doctrine readiness — triggers\n FAIL=0 WARN=13 INFO=2\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN F-16: directory has 18 immediate children; doctrine cap is 12\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/scheduled/scheduled.stub.ts:43)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/file-watch/file-watch.stub.ts:43)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/webhook/webhook.stub.ts:46)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/adapter/resources/webhook/webhook.stub.ts:109)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (jobs/file-relay.ts:167)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (jobs/staged-cleanup.ts:72)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (jobs/file-import.ts:177)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (generic-webhook.ts:44)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (webhook-validate-data.ts:35)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n# Doctrine readiness — workers\n FAIL=0 WARN=9 INFO=2\n WARN A3: README has only 1 TS code fences — needs ≥ 2 (basic + advanced) for the 80% path\n WARN F-16: directory has 19 immediate children; doctrine cap is 12\n WARN F-16: directory has 19 immediate children; doctrine cap is 12 (worker)\n INFO A9: docs/architecture.md missing — required when public symbols > 25\n INFO A12: package implements durable workflow concepts — verify state machine model is documented in docs/architecture.md\n WARN A13: Deno.exit/process.exit outside bin/ — crash boundaries must be explicit, throw a typed error instead (test-api.ts)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (services/src/main.ts:45)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (src/cli/official-sample-configuration.ts:409)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (jobs/health-check.ts:246)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (scaffold.ts:23)\n WARN F-5/F-6: `export default` — JSR penalises (no auto-doc); use named exports (cli.ts:18)\n", + "truncated": true + }, + "stderr": { + "bytes": 485, + "sha256": "d383a582d1a3ab53409417a624b04062624331ae3ada6bd36a8fb15ed8e33cc6", + "tail": "Task arch:check deno task deps:check && deno run --allow-read --allow-run .llm/tools/fitness/check-doctrine.ts --all-roots\nTask deps:check deno run --allow-read .llm/tools/deps/scan-jsr-centralization.ts --fail-on-violation && deno run --allow-read .llm/tools/deps/audit-file-link.ts --fail-on-violation && deno run --allow-read .llm/tools/deps/scan-npm-catalog-compliance.ts && deno task deps:check:zod\nTask deps:check:zod deno run --allow-read .llm/tools/deps/check-zod-alignment.ts\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/assets-barrel.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/assets-barrel.json new file mode 100644 index 0000000000..b35f9dd998 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/assets-barrel.json @@ -0,0 +1,36 @@ +{ + "gateId": "assets-barrel", + "invocationId": "reference-export-sa4-assets-barrel", + "argv": [ + "deno", + "task", + "check:assets-barrel" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "actualGitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "timeoutMs": 1800000, + "runnerIdentity": "worker:766095", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "f6c3f1ab9e8e380eb9b3a9b8cd87534fff19956ad1e4feefe39e73064d0f73f6", + "lifecycleId": "worker:766095:reference-export-sa4-assets-barrel:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T19:57:57.073Z", + "startedAt": "2026-08-15T19:57:57.077Z", + "finishedAt": "2026-08-15T19:57:57.679Z", + "durationMs": 602, + "exitCode": 0, + "stdout": { + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "tail": "", + "truncated": false + }, + "stderr": { + "bytes": 570, + "sha256": "6fc77d278be69f0dc20503a5435f98da17262e66cfb99a0b1b4cf25f75a8802d", + "tail": "Task check:assets-barrel deno task gen:assets-barrel && git diff --exit-code -- packages/cli/src/kernel/assets/embedded.generated.ts packages/cli/src/kernel/assets/skills.generated.ts packages/cli/src/kernel/assets/agent-tools.generated.ts packages/cli/src/kernel/assets/agent-docs.generated.ts packages/plugin/src/kernel/assets/embedded.generated.ts packages/fresh-ui/registry.generated.ts packages/service/src/primitives/scalar.generated.ts\nTask gen:assets-barrel deno run --no-lock --allow-read --allow-write --allow-run=deno .llm/tools/generate-cli-assets-barrel.ts\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/check.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/check.json new file mode 100644 index 0000000000..85d4530f1c --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/check.json @@ -0,0 +1,36 @@ +{ + "gateId": "check", + "invocationId": "reference-export-sa4-check", + "argv": [ + "deno", + "task", + "check" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "actualGitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "timeoutMs": 1800000, + "runnerIdentity": "worker:751506", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "2cd15f4f1ef89ac4912d3c4974f65d6e086adfdff81f1eeeec6ed964723d966d", + "lifecycleId": "worker:751506:reference-export-sa4-check:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T19:51:10.203Z", + "startedAt": "2026-08-15T19:51:10.206Z", + "finishedAt": "2026-08-15T19:51:39.570Z", + "durationMs": 27370, + "exitCode": 0, + "stdout": { + "bytes": 299, + "sha256": "09feb3c08a0efdef3b0eb29887a2490ebbf99f4bf645dcf8aecc68c6d2275059", + "tail": "{\"source\":{\"mode\":\"selection\",\"cwd\":\"/home/codex/repos/netscript-007-reference-export\"},\"command\":\"deno check --unstable-kv \",\"selection\":{\"filesSelected\":2924,\"batches\":25,\"failedBatches\":0},\"summary\":{\"totalOccurrences\":0,\"uniqueOccurrences\":0,\"uniqueCodes\":0,\"uniquePaths\":0},\"groups\":[]}\n", + "truncated": false + }, + "stderr": { + "bytes": 192, + "sha256": "8e7cb67a36cfafde9a120b0109ba1f06cbe2c185d7d3fac8967000ed6e61dfec", + "tail": "Task check deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-check.ts --root packages --root plugins --ext ts,tsx --exclude \"^(.*(?:^|/)\\.generated/|.*(?:^|/)node_modules/)\"\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/docs-accuracy.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/docs-accuracy.json new file mode 100644 index 0000000000..02b1459e6b --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/docs-accuracy.json @@ -0,0 +1,36 @@ +{ + "gateId": "docs-accuracy", + "invocationId": "reference-export-sa4-docs-accuracy", + "argv": [ + "deno", + "task", + "docs:accuracy" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "actualGitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "timeoutMs": 1800000, + "runnerIdentity": "worker:765144", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "e10c26100676b30cd3089401ba27e44430fb422fa37595b03e85e85d22a2d9b3", + "lifecycleId": "worker:765144:reference-export-sa4-docs-accuracy:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T19:57:30.035Z", + "startedAt": "2026-08-15T19:57:30.038Z", + "finishedAt": "2026-08-15T19:57:33.448Z", + "durationMs": 3410, + "exitCode": 0, + "stdout": { + "bytes": 277, + "sha256": "6697c7628277ab19e6aa705cf3f4a7a93f39cfa0c660c34726cac5de505cf043", + "tail": "docs accuracy: PASS (4 saga pages checked for stale claims, 199 published source pages, 181 shipped corpus files, one query dialect exception page, mutation-map columns, 91/91 root/direct public commands from 149 recursive paths, 6 valid @netscript/fresh root imports checked)\n", + "truncated": false + }, + "stderr": { + "bytes": 577, + "sha256": "5c84eae8ac33adda151be9910882a4f787efee99e29cab10e4cee274d63cf192", + "tail": "Task docs:accuracy deno run --no-lock --allow-read --allow-env --allow-run=deno .llm/tools/docs/check-accuracy-and-discoverability.ts\nWarning The following peer dependency issues were found:\n└─┬ @tanstack/ai-preact@0.10.4\n └── peer @tanstack/ai@^0.41.0: resolved to 0.39.1\n\nThese packages were resolved to a version that does not satisfy a peer dependency constraint, which can cause runtime errors. To silence this warning, install a compatible version or add an \"overrides\" entry to your package.json or deno.json.\nLearn more: https://docs.deno.com/go/peer-deps\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/docs-source-format-test.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/docs-source-format-test.json new file mode 100644 index 0000000000..f64dbdc60d --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/docs-source-format-test.json @@ -0,0 +1,36 @@ +{ + "gateId": "docs-source-format-test", + "invocationId": "reference-export-sa4-docs-source-format-test", + "argv": [ + "deno", + "task", + "test:source-format" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export/docs/site", + "gitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "actualGitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "timeoutMs": 1800000, + "runnerIdentity": "worker:764910", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "cde20262c5c1469274841056df662dfcbc3a9e1d0ca30eb9e844a10f44dff7b2", + "lifecycleId": "worker:764910:reference-export-sa4-docs-source-format-test:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T19:57:21.961Z", + "startedAt": "2026-08-15T19:57:21.965Z", + "finishedAt": "2026-08-15T19:57:23.966Z", + "durationMs": 2001, + "exitCode": 0, + "stdout": { + "bytes": 557, + "sha256": "9ad46945ab580005a0fa137999ce54d9787c89d46edc867e1622dbcc4b2989fc", + "tail": "running 6 tests from ./_plugins/check-source-format_test.ts\nrejects raw newlines inside quoted Vento component arguments ... ok (8ms)\nrejects Markdown headings in Vento pages without Markdown rendering ... ok (12ms)\naccepts multiline component objects whose individual strings stay valid ... ok (1ms)\nrejects literal Vento placeholders in any rendered page ... ok (2ms)\nallows only the bounded CLI string-template documentation tokens ... ok (1ms)\nrejects CLI documentation tokens beyond the bounded allowance ... ok (2ms)\n\nok | 6 passed | 0 failed (34ms)\n\n", + "truncated": false + }, + "stderr": { + "bytes": 609, + "sha256": "761809dc35c641b528185e92496f37730c52a6955ad56f92266afbb4c4dfe9b9", + "tail": "Warning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\nTask test:source-format deno test --no-lock --allow-read --allow-write _plugins/check-source-format_test.ts\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\nCheck _plugins/check-source-format_test.ts\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/docs-source-format.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/docs-source-format.json new file mode 100644 index 0000000000..de9d511300 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/docs-source-format.json @@ -0,0 +1,36 @@ +{ + "gateId": "docs-source-format", + "invocationId": "reference-export-sa4-docs-source-format", + "argv": [ + "deno", + "task", + "check:source-format" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export/docs/site", + "gitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "actualGitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "timeoutMs": 1800000, + "runnerIdentity": "worker:764828", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "af9215c1c6f96e7af5f7943d530cda428109e2b23be8a608d6042a11b15712f5", + "lifecycleId": "worker:764828:reference-export-sa4-docs-source-format:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T19:57:21.644Z", + "startedAt": "2026-08-15T19:57:21.648Z", + "finishedAt": "2026-08-15T19:57:21.797Z", + "durationMs": 149, + "exitCode": 0, + "stdout": { + "bytes": 23, + "sha256": "a91dbfc7ba015ebd64902c27740032f3798207dc0ebae57d2526342b219899c5", + "tail": "Docs source format: OK\n", + "truncated": false + }, + "stderr": { + "bytes": 549, + "sha256": "e213b85f487a989efad13e7a5fc9ed5254f41a214e443e9ea8132796901dd6e1", + "tail": "Warning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\nTask check:source-format deno run --no-lock --allow-read _plugins/check-source-format.ts .\nWarning: config file file:///home/codex/repos/netscript-007-reference-export/docs/site/deno.json is not a member of the workspace at file:///home/codex/repos/netscript-007-reference-export/. Ignoring the parent workspace config.\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/docs-tagline.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/docs-tagline.json new file mode 100644 index 0000000000..b619eba052 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/docs-tagline.json @@ -0,0 +1,36 @@ +{ + "gateId": "docs-tagline", + "invocationId": "reference-export-sa4-docs-tagline", + "argv": [ + "deno", + "task", + "docs:tagline:check" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "actualGitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "timeoutMs": 1800000, + "runnerIdentity": "worker:765097", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "e99006daab8f9bce4aaedc2bfd3d97961319c07a361361f63528b3ddec45a9c6", + "lifecycleId": "worker:765097:reference-export-sa4-docs-tagline:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T19:57:29.828Z", + "startedAt": "2026-08-15T19:57:29.833Z", + "finishedAt": "2026-08-15T19:57:29.966Z", + "durationMs": 133, + "exitCode": 0, + "stdout": { + "bytes": 105, + "sha256": "a1d59212ae3a7b1d83d1120f6c2db1508896116ba56e5803fbb2be04f3a35f09", + "tail": "JSR tagline length gate — cap 250 bytes\n checked=36 over=0\n OK — every tagline lands whole on JSR.\n", + "truncated": false + }, + "stderr": { + "bytes": 115, + "sha256": "44b5df6596dfb4e9ead6020e23a6641ce5b5b9c98c73b34d9818108cfd959a86", + "tail": "Task docs:tagline:check deno run --no-lock --allow-read .llm/tools/validation/check-jsr-tagline-length.ts --pretty\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/publish-assets.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/publish-assets.json new file mode 100644 index 0000000000..e5a51376e1 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/publish-assets.json @@ -0,0 +1,36 @@ +{ + "gateId": "publish-assets", + "invocationId": "reference-export-sa4-publish-assets", + "argv": [ + "deno", + "task", + "check:publish-assets" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "actualGitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "timeoutMs": 1800000, + "runnerIdentity": "worker:766007", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "6691a7fc45973f11ed9b9d5aaeb99102ab08a21413e606a9538b0c26ab6f46dd", + "lifecycleId": "worker:766007:reference-export-sa4-publish-assets:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T19:57:56.662Z", + "startedAt": "2026-08-15T19:57:56.664Z", + "finishedAt": "2026-08-15T19:57:56.993Z", + "durationMs": 329, + "exitCode": 0, + "stdout": { + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "tail": "", + "truncated": false + }, + "stderr": { + "bytes": 198, + "sha256": "70bc4b06374ff6f561f02b223ee735b7bf25bb21e4a9811a8183d6279a83735b", + "tail": "Task check:publish-assets deno task gen:publish-assets --check\nTask gen:publish-assets deno run --no-lock --allow-read --allow-write --allow-run=deno .llm/tools/generate-publish-assets.ts '--check'\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/publish-dry-run.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/publish-dry-run.json new file mode 100644 index 0000000000..bf2b3855fd --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/publish-dry-run.json @@ -0,0 +1,36 @@ +{ + "gateId": "publish-dry-run", + "invocationId": "reference-export-sa4-publish-dry-run", + "argv": [ + "deno", + "task", + "publish:dry-run" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "actualGitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "timeoutMs": 1800000, + "runnerIdentity": "worker:766342", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "e1f9f207ccb24e52e7e4b874274bad181a06e5ff286036e4dd4447243c066f83", + "lifecycleId": "worker:766342:reference-export-sa4-publish-dry-run:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T19:58:06.006Z", + "startedAt": "2026-08-15T19:58:06.008Z", + "finishedAt": "2026-08-15T19:59:01.586Z", + "durationMs": 51300, + "exitCode": 0, + "stdout": { + "bytes": 0, + "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", + "tail": "", + "truncated": false + }, + "stderr": { + "bytes": 318629, + "sha256": "4563e7653b68d18791ee038b33601b99f53e9e204a9b3ab81d8b9b098acbc605", + "tail": "///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/adapters/mod.ts (519B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/adapters/postgres-dead-letter-store.ts (6.82KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/adapters/postgres.adapter.ts (17.12KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/adapters/redis-dead-letter-store.ts (3.12KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/adapters/redis.adapter.ts (11.64KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/deno.json (1.94KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/factory/create-parallel-queue.ts (2.65KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/factory/create-queue.ts (9.85KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/factory/create-typed-queue.ts (5.9KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/factory/mod.ts (336B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/internal/parallel-queue.ts (7.1KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/mod.ts (2.67KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/ports/dead-letter.ts (2.43KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/ports/errors.ts (4.11KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/ports/message-queue.ts (5.33KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/ports/mod.ts (733B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/ports/options.ts (5.22KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/testing/memory-queue.ts (9.09KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/testing/mod.ts (211B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/validation/mod.ts (241B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/queue/validation/validation.ts (3.52KB)\nSimulating publish of @netscript/plugin-ai-core@0.0.6 with files:\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/plugin-ai-core/README.md (7.06KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/plugin-ai-core/deno.json (1.12KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/plugin-ai-core/mod.ts (1.42KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/plugin-ai-core/src/contracts/v1/ai.contract-schemas.ts (10.67KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/plugin-ai-core/src/contracts/v1/ai.contract.ts (17.68KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/plugin-ai-core/src/contracts/v1/base-error-adapter.ts (1.12KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/plugin-ai-core/src/contracts/v1/mod.ts (1.67KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/plugin-ai-core/src/public/mod.ts (1.01KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/plugin-ai-core/src/router/ai-router.ts (3.96KB)\nSimulating publish of @netscript/service@0.0.6 with files:\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/README.md (8.13KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/deno.json (1.15KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/mod.ts (4.4KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/adapters/runtime-host-budget-timer.ts (1.04KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/auth/auth-middleware.ts (6.94KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/auth/hono-context.ts (1.07KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/auth/mod.ts (1.49KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/auth/options.ts (1.11KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/auth/scope-authorizer.ts (2.36KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/auth/static-credential-authenticator.ts (3.69KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/auth/trusted-header-authenticator.ts (2.54KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/auth/types.ts (3.29KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/builder/service-builder-impl.ts (15.31KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/builder/service-builder.ts (5.5KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/builder/service-listener.ts (8.82KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/builder/service-rpc.ts (4.02KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/builder/service-shutdown.ts (4.98KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/diagnostics/database-connectivity.ts (14.94KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/presets/define-service.ts (8.25KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/primitives/handlers.ts (5.81KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/primitives/health.ts (7.09KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/primitives/openapi.ts (4.05KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/primitives/orpc-router.ts (393B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/primitives/rpc-path.ts (1.62KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/primitives/scalar.generated.ts (3.31MB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/runtime/runtime-host.ts (6.64KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/service/src/types.ts (7.53KB)\nSimulating publish of @netscript/kv@0.0.6 with files:\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/README.md (5.49KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/adapters/deno-kv.adapter.ts (15KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/adapters/denokv-bridge.ts (22.08KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/adapters/kvdex.ts (4.8KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/adapters/memory.adapter.ts (13.6KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/adapters/redis.adapter.ts (24.81KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/adapters/redis/connection.ts (8.59KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/adapters/redis/serialization.ts (3.32KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/adapters/redis/types.ts (4.42KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/application/auto-detect.ts (4.42KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/application/errors.ts (315B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/application/keys.ts (4.1KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/application/mod.ts (654B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/application/shared.ts (7.36KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/deno.json (1.03KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/kvdex.ts (902B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/mod.ts (900B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/redis.ts (1.76KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/src/testing/memory-kv.ts (1.77KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/src/testing/mod.ts (688B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/types/common.ts (2.72KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/types/kv-store.ts (5.25KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/types/mod.ts (398B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/kv/types/watchable-kv.ts (3.59KB)\nSimulating publish of @netscript/logger@0.0.6 with files:\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/logger/README.md (4.57KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/logger/config.ts (3.35KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/logger/constants.ts (475B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/logger/creators.ts (3.85KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/logger/deno.json (998B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/logger/middleware.ts (6.7KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/logger/mod.ts (1.25KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/logger/orpc-plugin.ts (12.47KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/logger/orpc.ts (528B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/logger/types.ts (1.21KB)\nSimulating publish of @netscript/plugin-auth@0.0.6 with files:\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/README.md (6.12KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/cli.ts (480B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/contracts/v1/mod.ts (304B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/database/auth.prisma (2.49KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/deno.json (2.54KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/mod.ts (236B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/package.json (200B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/scaffold.plugin.json (1.67KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/scaffold.ts (635B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/services/src/backend-registry.ts (10.42KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/services/src/init.ts (2.17KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/services/src/main.ts (4.96KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/services/src/request-context.ts (1005B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/services/src/router.ts (624B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/services/src/routers/router-context.ts (1.48KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/services/src/routers/v1-handlers.ts (14.26KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/services/src/routers/v1-helpers.ts (4.24KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/services/src/routers/v1-types.ts (4.56KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/services/src/routers/v1.ts (328B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/src/adapter/plugin.ts (1.96KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/src/adapter/resources/barrel/barrel.stub.ts (1.73KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/src/adapter/resources/barrel/barrel.ts (906B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/src/adapter/resources/input.ts (294B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/src/adapter/resources/mod.ts (184B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/src/constants.ts (925B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/src/package-metadata.generated.ts (219B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/src/public/mod.ts (2.1KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/streams/factory.ts (1.92KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/streams/mod.ts (551B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/streams/producer.ts (8.66KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/streams/schema.ts (3.25KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/streams/server.ts (842B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/plugins/auth/verify-plugin.ts (1.08KB)\nSimulating publish of @netscript/config@0.0.6 with files:\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/README.md (4.87KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/define-config.ts (2.23KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/deno.json (1.11KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/env.ts (3.88KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/loader.ts (4.96KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/mod.ts (3.38KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/diagnostics/inspect-config.ts (1.59KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/domain/config-root-types.ts (3.61KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/domain/config-section-types.ts (20.78KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/domain/mod.ts (718B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/domain/saga-inputs.ts (2.15KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/domain/schemas/app-schema.ts (686B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/domain/schemas/aspire-schema.ts (476B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/domain/schemas/database-schema.ts (853B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/domain/schemas/deploy-schema.ts (13.98KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/domain/schemas/gateway-schema.ts (388B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/domain/schemas/logging-schema.ts (600B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/domain/schemas/netscript-config-schema.ts (5.1KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/domain/schemas/paths-schema.ts (1.23KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/domain/schemas/permissions-schema.ts (1.27KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/domain/schemas/runtime-config-schema.ts (792B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/domain/schemas/sdk-schema.ts (820B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/domain/schemas/service-schema.ts (711B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/merge/mod.ts (5.97KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/paths/mod.ts (4.61KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/public/mod.ts (2.27KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/src/schema/plugins/mod.ts (6.6KB)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/types.ts (279B)\n file:///tmp/netscript-publish-dry-run-25de3adb2af01255/packages/config/workspace.ts (5.67KB)\nSuccess Dry run complete\n", + "truncated": true + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/quality-job.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/quality-job.json new file mode 100644 index 0000000000..b98eac4147 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/quality-job.json @@ -0,0 +1,36 @@ +{ + "gateId": "quality-job", + "invocationId": "reference-export-sa4-quality-job", + "argv": [ + "deno", + "task", + "ci:quality" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "actualGitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "timeoutMs": 1800000, + "runnerIdentity": "worker:762717", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "3454da1ff5c005b86ce5f9680993f163f0d9218fc7ec77284741c5243877ff02", + "lifecycleId": "worker:762717:reference-export-sa4-quality-job:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T19:56:42.245Z", + "startedAt": "2026-08-15T19:56:42.249Z", + "finishedAt": "2026-08-15T19:56:51.975Z", + "durationMs": 9726, + "exitCode": 0, + "stdout": { + "bytes": 26032, + "sha256": "e106cf4157faf260ed36c09740eb9014939c3fb62db1e2250621ee636de0698f", + "tail": "telemetry/api@^1.9.0 outside package.json catalog: (catalog has ^1.9.1, inline use has ^1.9.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/consume-flow-b-stream.ts:11 packages/cli uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/consume-flow-b-stream.ts:11 packages/cli/e2e uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/ui-ai-gates.ts:140 packages/cli uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/ui-ai-gates.ts:140 packages/cli/e2e uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/ui-ai-gates.ts:174 packages/cli uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/cli/e2e/src/application/gates/scaffold/ui-ai-gates.ts:174 packages/cli/e2e uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/contracts/deno.json:13 packages/contracts uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/deno.json:19 packages/fresh-ui uses npm:preact@^10.29.2 outside package.json catalog: (catalog has ^10.29.2)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/scripts/build-tokens.ts:1 packages/fresh-ui uses npm:style-dictionary@5.4.4 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/tests/registry/components/ui/desktop.test.tsx:2 packages/fresh-ui uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/tests/registry/islands/desktop-only.test.tsx:3 packages/fresh-ui uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh-ui/tests/runtime/accordion/accordion-render.test.tsx:2 packages/fresh-ui uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:42 packages/fresh uses npm:preact@^10.29.2 outside package.json catalog: (catalog has ^10.29.2)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:43 packages/fresh uses npm:preact-render-to-string@^6.7.0 outside package.json catalog: (catalog has ^6.7.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:45 packages/fresh uses npm:@durable-streams/state@^0.3.1 outside package.json catalog: (catalog has ^0.3.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:46 packages/fresh uses npm:@durable-streams/tanstack-ai-transport@^0.0.8 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:52 packages/fresh uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:53 packages/fresh uses npm:@preact/signals@2.9.2 outside package.json catalog: (catalog has 2.9.2)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:54 packages/fresh uses npm:@tanstack/ai@^0.39.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:55 packages/fresh uses npm:@tanstack/ai-preact@^0.10.1 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:56 packages/fresh uses npm:@tanstack/preact-query@^5.101.0 outside package.json catalog: (catalog has ^5.101.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:57 packages/fresh uses npm:@tanstack/query-core@^5.101.0 outside package.json catalog: (catalog has ^5.101.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:58 packages/fresh uses npm:@tanstack/react-db@^0.1.95 outside package.json catalog: (catalog has ^0.1.95)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/deno.json:59 packages/fresh uses npm:vite@7.2.2 outside package.json catalog: (catalog has 7.2.2)\n [deps:check] WARN DEPS-NPM-CATALOG packages/fresh/src/application/vite/vite.test.ts:367 packages/fresh uses npm:/preact@10.29.7/hooks outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/logger/deno.json:20 packages/logger uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-ai-core/deno.json:11 packages/plugin-ai-core uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-ai-core/deno.json:12 packages/plugin-ai-core uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-auth-core/deno.json:18 packages/plugin-auth-core uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-auth-core/deno.json:19 packages/plugin-auth-core uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-sagas-core/src/stores/prisma-saga-store_integration_test.ts:2 packages/plugin-sagas-core uses npm:@prisma/adapter-pg@7.8.0 outside package.json catalog: (catalog has ^7.8.0, inline use has 7.8.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/deno.json:34 packages/plugin-workers-core uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/deno.json:35 packages/plugin-workers-core uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/executor/multi-runtime-task-executor_test.ts:1 packages/plugin-workers-core uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/executor/multi-runtime-task-executor_test.ts:2 packages/plugin-workers-core uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/streams/workers-streams_test.ts:1 packages/plugin-workers-core uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/streams/workers-streams_test.ts:2 packages/plugin-workers-core uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/streams/workers-streams_test.ts:3 packages/plugin-workers-core uses npm:@opentelemetry/core@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin-workers-core/tests/streams/workers-streams_test.ts:4 packages/plugin-workers-core uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin/deno.json:28 packages/plugin uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/plugin/deno.json:29 packages/plugin uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/queue/adapters/amqp.adapter.ts:10 packages/queue uses npm:amqplib@^0.10.3 outside package.json catalog: (catalog has ^2.0.1, inline use has ^0.10.3)\n [deps:check] WARN DEPS-NPM-CATALOG packages/queue/adapters/amqp.adapter.ts:11 packages/queue uses npm:amqplib@^0.10.3 outside package.json catalog: (catalog has ^2.0.1, inline use has ^0.10.3)\n [deps:check] WARN DEPS-NPM-CATALOG packages/queue/adapters/postgres.adapter.ts:9 packages/queue uses npm:pg@^8.21.0 outside package.json catalog: (catalog has ^8.21.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:31 packages/sdk uses npm:@orpc/client@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:32 packages/sdk uses npm:@orpc/contract@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:33 packages/sdk uses npm:@orpc/openapi@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:34 packages/sdk uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:35 packages/sdk uses npm:@orpc/tanstack-query@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:36 packages/sdk uses npm:@orpc/zod@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:37 packages/sdk uses npm:@tanstack/db@^0.6.8 outside package.json catalog: (catalog has ^0.6.8)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:38 packages/sdk uses npm:@tanstack/query-core@^5.101.0 outside package.json catalog: (catalog has ^5.101.0)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/deno.json:39 packages/sdk uses npm:@tanstack/query-db-collection@^1.2.1 outside package.json catalog: (catalog has ^1.2.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/cache/cache-telemetry_test.ts:15 packages/sdk uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/cache/cache-telemetry_test.ts:16 packages/sdk uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/cache/cache-telemetry_test.ts:17 packages/sdk uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/type-fixtures/service-query-utils-upstream_type.ts:1 packages/sdk uses npm:@orpc/client@1.14.6 outside package.json catalog: (catalog has ^1.14.6, inline use has 1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/sdk/tests/type-fixtures/service-query-utils-upstream_type.ts:2 packages/sdk uses npm:@orpc/tanstack-query@1.14.6 outside package.json catalog: (catalog has ^1.14.6, inline use has 1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/deno.json:22 packages/service uses npm:@orpc/server@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/deno.json:23 packages/service uses npm:@orpc/openapi@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/deno.json:24 packages/service uses npm:@orpc/client@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/deno.json:25 packages/service uses npm:@orpc/zod@^1.14.6 outside package.json catalog: (catalog has ^1.14.6)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/tests/hono-tracing_test.ts:2 packages/service uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/tests/hono-tracing_test.ts:3 packages/service uses npm:@opentelemetry/core@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/tests/hono-tracing_test.ts:4 packages/service uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/service/tests/hono-tracing_test.ts:5 packages/service uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/deno.json:28 packages/telemetry uses npm:@opentelemetry/semantic-conventions@1.41.1 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/adapters/otel_ai_telemetry_test.ts:2 packages/telemetry uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/adapters/otel_ai_telemetry_test.ts:6 packages/telemetry uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/hono/otel_middleware_test.ts:4 packages/telemetry uses npm:@opentelemetry/core@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/hono/otel_middleware_test.ts:5 packages/telemetry uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG packages/telemetry/tests/hono/otel_middleware_test.ts:6 packages/telemetry uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG plugins/workers/jobs/job-tools_test.ts:2 plugins/workers uses npm:@opentelemetry/api@^1.9.1 outside package.json catalog: (catalog has ^1.9.1)\n [deps:check] WARN DEPS-NPM-CATALOG plugins/workers/jobs/job-tools_test.ts:3 plugins/workers uses npm:@opentelemetry/context-async-hooks@^2.9.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] WARN DEPS-NPM-CATALOG plugins/workers/jobs/job-tools_test.ts:4 plugins/workers uses npm:@opentelemetry/sdk-trace-base@^2.5.0 outside package.json catalog: (no root catalog entry exists)\n [deps:check] zod-alignment PASS instances=zod@3.25.76,zod@4.4.3 residual-v3=@ag-ui/core@0.0.52,@olli/kvdex@3.6.7\n [lint] {\"source\":{\"mode\":\"command\",\"cwd\":\"/home/codex/repos/netscript-007-reference-export\",\"exitCode\":0},\"selection\":{\"filesSelected\":2036,\"batches\":11},\"summary\":{\"totalOccurrences\":0,\"uniqueOccurrences\":0,\"uniqueRules\":0,\"uniquePaths\":0},\"groups\":[]}\n [check:emitted-samples] Checked 47 emitted TypeScript samples from 37 artifact paths.\n", + "truncated": true + }, + "stderr": { + "bytes": 6078, + "sha256": "ccbcf89e58a839739aa6f360f27edcbae80eba71ee1b4fa602e9a284fd3264a0", + "tail": "Task check deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-check.ts --root packages --root plugins --ext ts,tsx --exclude \"^(.*(?:^|/)\\.generated/|.*(?:^|/)node_modules/)\" (cached, inputs unchanged)\nTask check:emitted-samples deno run --allow-read --allow-write --allow-run .llm/tools/validation/check-emitted-samples.ts\nTask check:streams-types deno task --cwd packages/fresh check:streams-types\n [check:streams-types] Task check:streams-types deno check --no-lock --config ./tests/type-fixtures/streamdb-consumer-deno.json --unstable-kv ./tests/type-fixtures/streamdb-wrapper_type.ts\nTask lint deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-lint.ts --root packages --root plugins --ext ts,tsx --exclude \"^(packages/(cli)|packages/mcp/tests/fixtures/doctor/|.*(?:^|/)\\.generated/|.*(?:^|/)node_modules/)\"\nTask fmt:check deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-fmt.ts --root packages --root plugins --ext ts,tsx --exclude \"^(packages/(cli)|packages/mcp/tests/fixtures/doctor/|.*(?:^|/)\\.generated/|.*(?:^|/)node_modules/)\" --ignore-line-endings\nTask deps:check deno run --allow-read .llm/tools/deps/scan-jsr-centralization.ts --fail-on-violation && deno run --allow-read .llm/tools/deps/audit-file-link.ts --fail-on-violation && deno run --allow-read .llm/tools/deps/scan-npm-catalog-compliance.ts && deno task deps:check:zod\nTask check:netscript-jsr-specifiers deno run --allow-read .llm/tools/validation/check-netscript-jsr-specifiers.ts --pretty\nTask check:aspire-host-ports deno run --allow-read .llm/tools/validation/check-aspire-host-ports.ts --pretty\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/ai/agents/assistant.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/ai/ai.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/ai/mcp/registry.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/ai/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/ai/models.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/ai/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/ai/routes/chat-stream.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/ai/routes/chat.tsx\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/ai/thread-store.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/ai/tools/echo.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/auth/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/auth/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/islands/InvoicesStream.tsx\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/routes/api/streams/invoices/seed.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/sagas/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/sagas/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/sagas/runtime.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/sagas/user-registration-saga.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/sagas/user-registration.config.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/streams/invoices-db.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/streams/invoices-producer.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/streams/invoices-schema.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/streams/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/streams/notifications-stream.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/streams/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/triggers/daily-maintenance.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/triggers/generic-inbound-webhook.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/triggers/incoming-file-watch.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/triggers/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/triggers/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/triggers/runtime.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/workers/jobs/health-check.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/workers/mod.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/workers/plugin.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/workers/runtime.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/workers/tasks/validate-payload.ts\n [check:emitted-samples] Check file:///tmp/netscript-emitted-samples-e697eb6cbc40c018/workers/workflows/daily-maintenance.ts\n [deps:check] Task deps:check:zod deno run --allow-read .llm/tools/deps/check-zod-alignment.ts\nTask ci:quality (no command)\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/test-attempt2.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/test-attempt2.json new file mode 100644 index 0000000000..7b23ddfa59 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/test-attempt2.json @@ -0,0 +1,36 @@ +{ + "gateId": "test", + "invocationId": "reference-export-sa4-test-attempt2", + "argv": [ + "deno", + "task", + "test" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "actualGitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "timeoutMs": 1800000, + "runnerIdentity": "worker:783804", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "d8638cffe001e3f7fef6b5c51013a79ca71c5f834362756569030470493183ad", + "lifecycleId": "worker:783804:reference-export-sa4-test-attempt2:1", + "outcome": "PASS", + "claimedAt": "2026-08-15T20:08:28.701Z", + "startedAt": "2026-08-15T20:08:28.704Z", + "finishedAt": "2026-08-15T20:12:50.222Z", + "durationMs": 244980, + "exitCode": 0, + "stdout": { + "bytes": 270, + "sha256": "533bc0f57d98519b2b9bc94fc487b9d71124589b51a5ea358ae4cc1fd93026a9", + "tail": "{\"schemaVersion\":1,\"command\":[\"deno\",\"test\",\"--reporter=tap\",\"--allow-all\"],\"cwd\":\"/home/codex/repos/netscript-007-reference-export\",\"exitCode\":0,\"durationMs\":244868,\"summary\":{\"passed\":4203,\"failed\":0,\"ignored\":19,\"totalResults\":4222,\"uniqueFailures\":0},\"failures\":[]}\n", + "truncated": false + }, + "stderr": { + "bytes": 101, + "sha256": "5ae7e9d1dade1dc447e471529cd4f870e6b8391091eb2b26d56244ed895c3917", + "tail": "Task test deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-test.ts -- --allow-all\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/test.json b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/test.json new file mode 100644 index 0000000000..8f28f57982 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/receipts/sa4/test.json @@ -0,0 +1,36 @@ +{ + "gateId": "test", + "invocationId": "reference-export-sa4-test", + "argv": [ + "deno", + "task", + "test" + ], + "cwd": "/home/codex/repos/netscript-007-reference-export", + "gitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "actualGitHead": "46528ae4c71b3744f0af64bd749d01d831f70c89", + "timeoutMs": 1800000, + "runnerIdentity": "worker:752463", + "attempt": 1, + "schemaVersion": 1, + "requestHash": "02c7cd3593992340874016cb25227de04ae2925530697557f7c1adeefb90aed0", + "lifecycleId": "worker:752463:reference-export-sa4-test:1", + "outcome": "FAIL", + "claimedAt": "2026-08-15T19:51:43.825Z", + "startedAt": "2026-08-15T19:51:43.828Z", + "finishedAt": "2026-08-15T19:56:28.919Z", + "durationMs": 267742, + "exitCode": 1, + "stdout": { + "bytes": 797, + "sha256": "11a8692157885d8eca5b4597f4a1f5a9384cf67cc209cc058190a7d41bceb30b", + "tail": "{\"schemaVersion\":1,\"command\":[\"deno\",\"test\",\"--reporter=tap\",\"--allow-all\"],\"cwd\":\"/home/codex/repos/netscript-007-reference-export\",\"exitCode\":1,\"durationMs\":267636,\"summary\":{\"passed\":4202,\"failed\":1,\"ignored\":19,\"totalResults\":4222,\"uniqueFailures\":1},\"failures\":[{\"message\":\"AssertionError: Values are not equal.\\n\\n\\n [Diff] Actual / Expected\\n\\n\\n- [\\n- \\\".llm/tmp/claude/hooks/unscoped/events.jsonl: aspire stop --all\\\",\\n- ]\\n+ []\\n\\n at assertEquals (https://jsr.io/@std/assert/1.0.19/equals.ts::)\\n at file:///.llm/tools/agentic/teardown/forbidden-commands_test.ts::\",\"count\":1,\"tests\":[{\"name\":\"repository contains no shared-host bulk teardown command\",\"file\":\"./.llm/tools/agentic/teardown/forbidden-commands_test.ts\",\"line\":14}]}]}\n", + "truncated": false + }, + "stderr": { + "bytes": 101, + "sha256": "5ae7e9d1dade1dc447e471529cd4f870e6b8391091eb2b26d56244ed895c3917", + "tail": "Task test deno run --allow-read --allow-write --allow-run .llm/tools/run-deno-test.ts -- --allow-all\n", + "truncated": false + } +} diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/research.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/research.md new file mode 100644 index 0000000000..d63df8af7f --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/research.md @@ -0,0 +1,296 @@ +# Research — reference-export-drift-gate + +## Re-baseline + +- Carried-in sources: issue [#1296](https://github.com/rickylabs/netscript/issues/1296), its one + milestone-rollover comment, issues #1110/#1108/#1293, PR #1292, and the coordinator's frozen leaf + contract. +- Re-derived on 2026-08-15 from branch bootstrap head `1b6d6d5c289a7b3065ce75e985db5179f89a9b99`, + whose merge-base with `origin/main` is the frozen baseline + `baf1cdf67a4e931af17b4772ddf6101f36152184`. +- The branch contains only the coordinator's bootstrap commit beyond baseline. The runtime-created + untracked `codex-thread-ids.md` is not author-owned and will not be staged. +- Issue #1296 is open on milestone 27, now titled `0.0.7`. Issue #1293 remains open at + `status:impl`; its MySQL paths are outside this leaf. + +The carried-in measurements are partly stale. A1's narrow name search is reproducible, but it missed +a gate-catalog indirection and a `Deno.Command` child edge: the checker is already enforced +fail-closed in non-draft CI. This was an error in the coordinator's dispatch premise, not an author +finding. A3's four named root exports are correct, but the full shipped-example inventory contains +four other source imports from entrypoints that do not export their symbols. + +## Live acceptance contract + +Issue #1296 has five close-gated boxes. Independent re-baselining classifies them as follows: + +| Issue row | Baseline state | Leaf treatment | +| ------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Contracts examples import from the real exporting path | **partially satisfied**: five of the nine implementation-example lines are correct (two CRUD, three root); all four specifically briefed root symbols also resolve, but four implementation examples import six symbols from a root that does not export them | Preserve the baseline-earned examples and repair only the four incorrect `@example` import lines under the coordinator's JSDoc-only rescope. | +| Contracts reference inventory advertises no non-exports | manual reference page/checker pass, but the same four shipped examples advertise six symbols from non-exporting entrypoints | Correct `paginated-query.ts`, `transform-helpers.ts`, `schemas/filters.ts`, and `schemas/pagination.ts`; do not edit the already-green reference page. | +| Fresh UI reference matches published exports | not satisfied | Repair against all six entrypoints and enable an explicit symbol-coverage policy. | +| Intentional omissions are machine-readable | not satisfied | Replace boolean/silent symbol coverage with a discriminated, reason-bearing policy consumed by the checker. | +| Maintainer regeneration runbook and verification wiring | enforcement is already satisfied fail-closed in non-draft CI; direct discoverability and the runbook are absent | Preserve the enforced `docs:accuracy` chain, add a named task and explicit Pages step, and document the update procedure without claiming new enforcement. | + +The four live rows in the frozen brief therefore remain meaningful. Contracts reconciliation is +partly baseline-earned and partly live; the last row is a discoverability/runbook repair over an +already-enforced gate, not new enforcement. + +## Findings + +### F1 — the checker is already enforced fail-closed; its direct identity is undiscoverable + +The exact unpiped baseline checks were: + +```text +deno run --no-lock --allow-read --allow-env --allow-run .llm/tools/docs/check-exports-drift.ts +Exports & Symbols drift check: PASS +EXPORT_DRIFT_RAW_EXIT=0 + +grep -rnE 'check-exports-drift|exports-drift' deno.json .github/workflows/ +WIRING_SEARCH_RAW_EXIT=1 +``` + +That search cannot establish enforcement because the workflow calls a gate id and the checker is a +child spawned from source. The independently followed baseline chain is: + +```text +.github/workflows/ci.yml:362-367 Docs accuracy check + -> run-gate.ts --gate docs-accuracy --id quality-docs-accuracy + (quality job at :282; non-draft PR guard at :287; step guard env.RUN == 'true') + -> .llm/tools/gates/catalog.ts:59 + 'docs-accuracy' -> ['deno', 'task', 'docs:accuracy'] + -> deno.json:85 + docs:accuracy -> check-accuracy-and-discoverability.ts + -> check-accuracy-and-discoverability.ts:291-301 + spawns check-exports-drift.ts; prints child stdout/stderr and throws on nonzero +``` + +`deno task docs:accuracy` completed with raw exit 0 and printed its terminal PASS after the awaited +child edge. `docs:maintenance` also invokes `docs:accuracy`. The gate is therefore already enforced +fail-closed for qualifying non-draft CI and through the local accuracy/maintenance aggregates. What +is missing is discoverability: + +1. a named `docs:exports-drift` task that maintainers and automation can discover and invoke; +2. an explicitly named Pages step — Pages currently runs snippets/build/links/caveats, while CI + quality reaches export drift only as the unnamed child of `docs:accuracy`; +3. a runbook that tells maintainers how to derive and reconcile the surface. + +### F2 — `docs/exports` is a stale frozen-contract entry, not a generated target + +- `test -e docs/exports` returned exit 1. +- `git ls-tree -r --name-only baf1cdf67 -- docs/exports` returned no paths. +- Repository and all-history searches find no producer, consumer, task, checker, or historical + commit for `docs/exports`; only the frozen briefing names it. +- The live authority already has the correct dependency direction: package `deno.json.exports` plus + `deno doc --json` are derived in memory and compared directly with + `docs/site/reference//index.md`. + +Creating `docs/exports` would introduce a third inventory that can itself drift and would violate +the issue requirement not to maintain a second handwritten entrypoint list. The path will remain +absent and will be named as a deliberate non-touch in the plan. + +### F3 — full nine-line Contracts implementation-example inventory is only partly correct + +The inventory below enumerates every `from '@netscript/contracts…'` line in the shipped +implementation sources under `crud/`, `src/`, and `schemas/` (entrypoint self-documentation in +`mod.ts`, `crud.ts`, `query.ts`, and `transform.ts` is separately correct and is not one of these +nine implementation examples): + +| # | Source line | Imported symbols / entrypoint | Baseline verdict | +| -: | -------------------------------------------- | ---------------------------------------------------------- | --------------------------------- | +| 1 | `crud/create-crud-contract.ts:6` | `createCrudContract` from `/crud` | correct; `/crud` `EXIT=0` | +| 2 | `crud/create-crud-contract.ts:250` | `createCrudContract` from `/crud` | correct; `/crud` `EXIT=0` | +| 3 | `src/application/contract-primitives.ts:72` | `baseContract` from root | correct; root `EXIT=0` | +| 4 | `src/application/contract-primitives.ts:112` | `baseContract`, `BaseContractRoute` from root | correct; root `EXIT=0` per symbol | +| 5 | `src/application/contract-primitives.ts:144` | `baseContract`, `BaseContractOutputRoute` from root | correct; root `EXIT=0` per symbol | +| 6 | `src/application/paginated-query.ts:6` | `paginatedQuery` from root | **wrong**; use `/query` | +| 7 | `src/application/transform-helpers.ts:6` | `createTransformer` from root | **wrong**; use `/transform` | +| 8 | `schemas/filters.ts:6` | `FilterConditionSchema`, `buildPrismaWhere` from root | **wrong**; use `/query` | +| 9 | `schemas/pagination.ts:6` | `PaginationInputSchema`, `createPaginatedOutput` from root | **wrong**; use `/query` | + +Independent unpiped `deno doc --no-lock --filter` commands also confirmed the specifically briefed +`OffsetPaginationQuerySchema` root example: `baseContract`, `BaseContractRoute`, +`BaseContractOutputRoute`, and `OffsetPaginationQuerySchema` each returned root `EXIT=0`. +`createCrudContract` returned `/crud` `EXIT=0`. These are baseline-earned and remain untouched. + +### F4 — six symbols across four shipped examples use the wrong entrypoint + +The raw per-symbol exit evidence is: + +| Symbol | `packages/contracts/mod.ts` | Correct entrypoint | +| ----------------------- | --------------------------: | ----------------------- | +| `paginatedQuery` | `EXIT=1` | `query.ts` `EXIT=0` | +| `createTransformer` | `EXIT=1` | `transform.ts` `EXIT=0` | +| `FilterConditionSchema` | `EXIT=1` | `query.ts` `EXIT=0` | +| `buildPrismaWhere` | `EXIT=1` | `query.ts` `EXIT=0` | +| `PaginationInputSchema` | `EXIT=1` | `query.ts` `EXIT=0` | +| `createPaginatedOutput` | `EXIT=1` | `query.ts` `EXIT=0` | + +All four files are included by the Contracts publish set (`src/**/*.ts` or `schemas/**/*.ts`), so +their JSDoc ships. The coordinator granted a JSDoc-only rescope for exactly those four import-line +repairs (the original `paginated-query.ts` plus three additions). No runtime, type, export, or +schema change is planned. This makes `Closes #1296` honest only because the rescope covers the +entire residual inventory; the already-correct reference page, `contract-primitives.ts`, and public +root remain untouched. + +### F5 — Fresh UI entrypoints are complete, but symbol coverage is disabled + +`packages/fresh-ui/deno.json` publishes exactly six entrypoints: + +| Entrypoint | Target | Symbols reported by the checker's current `deno doc` rule | +| --------------------- | ------------------------ | --------------------------------------------------------: | +| `@netscript/fresh-ui` | `./mod.ts` | 28 | +| `/ai/render-ui` | `./src/ai/render-ui.tsx` | 11 | +| `/desktop` | `./desktop.ts` | 35 | +| `/interactive` | `./interactive.ts` | 82 | +| `/primitives` | `./primitives.tsx` | 16 | +| `/registry` | `./registry.ts` | 7 | + +There are 168 unique symbols after cross-entrypoint de-duplication. All six `deno doc --json` +commands returned raw exit 0. The Fresh UI page now lists all six entrypoints, so the original "3 of +6" entrypoint defect has already been repaired by later work. The remaining defect is symbol truth: +its mapping still says `checkSymbols: false`. + +Current prose meaningfully documents root helpers, icons, DataGrid, toast helpers, seven older +interactive namespaces, primitives, and render UI. It omits or contradicts newer public surface: + +- `ActionMenu` and `Combobox` plus their public namespace/contracts; +- the complete `/desktop` capability/result/menu/window surface; +- the `/registry` manifest/content types; +- several render-UI node/category types and root DataGrid context types; +- the page says interactive `*Namespace` types are package-internal, but they are exported now. + +The page also intentionally documents `Dropzone` as a copy-source registry component and explicitly +says it is not a package export. That is valid documentation, but a symbol parser must not confuse +copy-source tables or prop/field tables with a claimed published-symbol inventory. + +### F6 — enabling the current symbol checker directly is a false-red trap + +An in-memory run using the checker's current algorithms, but forcing Fresh UI symbol checking, +produced: + +```text +EXPECTED=168 DOCUMENTED_PARSE=78 ERRORS=162 +``` + +The 162 errors mix real omissions with parser artifacts. `parseDocContent()` currently treats the +first backticked cell of every Markdown table as a symbol, so `columns`, `label`, `class`, +`[attribute: string]`, `layout`, and `viz` become invented exports. Generic display names such as +`DataGridColumn` do not normalize to the real `DataGridColumn`. Copy-source Dropzone types become +invented package exports even though the prose labels them as non-exports. + +The checker must first distinguish symbol tables from prop/field/example tables and normalize +display-only generic suffixes. Tuning exclusions until the current 162-error output is quiet would +hide checker defects and is forbidden by the evidence contract. + +### F7 — boolean coverage is the silent-incompleteness defect + +`PackageMapping` currently exposes independent `checkSymbols?: boolean` and +`excludedSymbols?: string[]` fields. `false` carries no reason and makes every omission invisible. +The checker only builds an exclusion `Set` when the boolean is true. This is precisely the state +that leaves Fresh UI, Plugin, Queue, SDK, and Service silently entrypoint-only. + +A discriminated coverage object fits the existing consumer: + +- `mode: 'complete'` — carry a nonempty coverage reason, run `deno doc` for every derived + entrypoint, and flatten explicit reason-bearing omission groups into the exclusion set; +- `mode: 'entrypoints-only'` — skip symbol comparison only when a nonempty reason is present; +- a reason-bearing allow-list for doc-only copy-source symbols where a page explicitly labels them + as non-package exports. + +This retains the current `Set`-based comparison, makes invalid/empty policy a hard refusal, supports +an every-run mode/reason/omission-count report, and avoids a new inventory directory or handwritten +export map. + +### F8 — workflow trigger coverage already fits the leaf + +`.github/workflows/pages.yml` already triggers on `docs/site/**`, `packages/**`, `plugins/**`, +`.llm/tools/docs/**`, and `deno.json` for pull requests and main pushes. Adding a named export-drift +step to its existing build job therefore covers every implementation path that can change either the +reference or its live authority. No trigger expansion, new workflow, browser, service, Docker, or +Aspire resource is necessary. + +### F9 — MySQL is independently owned and must not block this leaf + +Issue #1293 is open with `status:impl` and owns the Prisma MySQL exported adapter and remaining +executable-example work. Neither the frozen nine paths nor SA-1/SA-2's four added paths contain a +MySQL package or reference path. This leaf neither reads that work as a prerequisite nor changes it. + +### F10 — SA-3 generator cascade is exactly four paths; the MCP export corpus is baseline drift + +CI's `Agent docs corpus freshness` red is reproduced in an isolated clone at leaf head `ee67d12b4`: +`check:agent-docs-prose` returns raw exit 1, while the same command at exact base `baf1cdf67` +returns raw exit 0. Source tracing and serial scratch generation establish ownership: + +| Generator/check | Raw result before regeneration | Paths added to the cumulative scratch diff | Finding | +| ----------------------- | -------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `gen:agent-docs-prose` | generation raw exit 0 | `.llm/assets/agent-docs/prose.json.gz`; `.llm/assets/agent-docs/provenance.json` | The builder collects every rendered `pages/**/index.md`. The Fresh UI reference payload changes from 18,895 bytes / SHA-256 `86450e…4425` to 26,411 bytes / `d9d2fa…febe`. | +| `gen:publish-assets` | pre-regeneration check raw exit 0; generation raw exit 0 | `packages/mcp/src/publish-assets.generated.ts` only | Fresh UI is absent from `MCP_EMBEDDED_DOC_PATHS`; only published `sourceCommit` changes, from `504de3f67` to `ee67d12b4`. Other publish outputs remain byte-identical. | +| `gen:assets-barrel` | pre-regeneration check raw exit 0; generation raw exit 0 | `packages/cli/src/kernel/assets/agent-docs.generated.ts` only | Reads the canonical gzip/provenance and embeds both. Sizes, digest, source commit, and base64 payload change. | +| `gen:mcp-export-corpus` | check raw exit 1 at base and leaf | Would change `packages/mcp/src/infrastructure/export-surfaces/export-surface-corpus.generated.ts` | Excluded: base and leaf regeneration produce byte-identical SHA-256 `314c9946…71f6`, proving the red predates and is independent of this leaf. | + +The canonical affected cascade is therefore the four expected candidates and no additional path. The +generator manifest is deliberately not treated as an edit allowlist. A scratch second pass of the +three applicable generators returned raw exit 0 for each and left the complete diff checksum +unchanged (`2a44d9d8…2995f`); the next implementation pass will repeat that proof on the authorized +checkout and then again at the clean committed content head. + +Publication is consumer-visible. `@netscript/cli` includes `src/**/*.ts` and imports the generated +agent-docs asset from its public Deno agent-docs adapter. `@netscript/mcp` includes `**/*.ts` and +its runtime infrastructure imports `publish-assets.generated.ts`. CLI has six exact internal pins +(Aspire, Config, Fresh UI, MCP, Plugin, SDK) at `0.0.6`; MCP has exact Aspire and Telemetry +attribute/query pins at `0.0.6`. Both members require a fresh JSR audit and isolated-declaration +publish dry-run at the future content head. + +## JSR/publication surface scan + +JSR audit is applicable because four shipped JSDoc files inside published `@netscript/contracts` +will change and the Fresh UI reference is derived from a published member. + +| Member | Planned publish delta | Export map | Exact `@netscript/*` pins | Baseline evidence / risk | +| ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `@netscript/contracts@0.0.6` | Yes: JSDoc import text changes in `src/application/paginated-query.ts`, `src/application/transform-helpers.ts`, `schemas/filters.ts`, and `schemas/pagination.ts`; no runtime/type/export/schema change. | Four entrypoints: `.`, `./crud`, `./query`, `./transform`; unchanged. | None in member imports. `@orpc/contract@^1.14.6` and root-catalog `zod` are non-NetScript dependencies. | `audit-jsr-package` raw exit 0; dry-run OK with one sanctioned oRPC slow-type INFO. Full-export `doc:lint` raw exit 1 with nine pre-existing private-type-ref diagnostics (eight contract primitives, one CRUD), not caused or fixed by these prose-only source edits. | +| `@netscript/fresh-ui@0.0.6` | No Fresh UI member file changes, but SA-3 proves its reference change propagates into published CLI/MCP generated assets; the earlier leaf-wide no-publish-delta inference is superseded. | Six entrypoints listed in F5; unchanged. | `@netscript/sdk/auto-update` and `@netscript/sdk/desktop` are both exact `jsr:@netscript/sdk@0.0.6/...`; `deps:why @netscript/sdk` raw exit 0 confirms live source use. | `audit-jsr-package` raw exit 0 and dry-run OK, while reporting existing folder/cardinality and slow-type warnings. Full-export `doc:lint` raw exit 1 with 123 existing `/interactive` diagnostics. Source repair is outside the frozen surface. | + +Root `compilerOptions.isolatedDeclarations` is `true`. The final canonical workspace +`publish:dry-run` remains required because the Contracts JSDoc is part of the publish set. A green +dry-run will prove static packaging/isolated-declaration compatibility, not resolve the separately +reported baseline doc-lint debt or prove a real publish. + +## Doctrine and debt state + +- Frozen leaf archetype: `6 — CLI / Tooling`, because the changed executable surface is a + repository-run checker/task/workflow with structured failure semantics. +- Overlays: `frontend` because the reference subject is `@netscript/fresh-ui`, and `docs` because + the shipped artifact is a manual reference/runbook. +- Package doctrine remains explicit: Contracts is Archetype 1 / Keep; Fresh UI is Archetype 4 / + Keep. This leaf does not re-archetype either member. +- Axioms: A1/A2 (published truth first), A7 (reuse `deno doc`, `Deno.Command`, and the existing + checker), A8 (one checker concern), A14 (a green must prove coverage as well as compliance). +- Fitness focus: F-5 public surface, F-6 publishability, F-7 documentation, F-19 scoped verdict + sources. The relevant existing Contracts root-layout debt is preserved; no debt entry is opened or + closed by a JSDoc/docs/tooling repair. +- The existing Fresh UI doc-lint and structural findings are baseline observations, not authority to + enter package source. An honest red remains red in the JSR table. + +## Open questions resolved for planning + +- **Must resolve now:** Create `docs/exports`? No. It is stale contract scope and duplicative. +- **Must resolve now:** Is export drift enforced? Yes. Non-draft CI already reaches it fail-closed + through `quality` -> gate catalog -> `docs:accuracy` -> the spawned checker. The plan improves + direct discoverability and adds an explicit Pages identity without claiming new enforcement. +- **Must resolve now:** How are omissions represented? A reason-bearing discriminated policy in + `AUTHORITATIVE_MAPPING`, consumed directly by the existing checker. +- **Resolved by SA-1:** Fresh UI browser execution is N/A/waived for this surface. It remains + `NOT_RUN`; the implementation lane must not request a runtime lease or fire it. +- **Must resolve now:** Are the three additional Contracts examples deferred? No. The coordinator + granted import-line-only scope for all three and made closure of #1296 honest once all four + residual lines were repaired. SA-3 subsequently brings the authorized surface to seventeen paths + for exactly four generated mirrors. +- **Safe to defer:** Existing Fresh UI public-source doc-lint/slow-type remediation and Contracts + oRPC private-type-ref debt; neither is part of the seventeen authorized paths. +- **Must exclude:** The baseline-red MCP export-surface corpus. Base/head canonical generation is + byte-identical, so regenerating it would launder unrelated drift into this leaf. +- **Safe to defer:** Broadening symbol-complete coverage for every reference page. This leaf makes + entrypoints-only policy explicit rather than silently claiming completeness; later leaves can + promote packages one at a time. diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/s3-evidence.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/s3-evidence.md new file mode 100644 index 0000000000..842d720322 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/s3-evidence.md @@ -0,0 +1,89 @@ +# S3 evidence — reference-export-drift-gate + +> Historical receipt set for pre-repair head `47ca22abe`. Current-head receipt claims are superseded +> by `fix1-evidence.md` and `receipts/fix1/`; this file remains as the original S3 record. + +## Attestation + +- Immutable implementation head: `47ca22abe94b9d2e54d3778edc8944094b227886` +- Frozen base: `baf1cdf67a4e931af17b4772ddf6101f36152184` +- Receipt directory: `receipts/s3/` +- Evidence-set result: `SUFFICIENT`; seven expected gate IDs, seven unique receipts, no missing, + duplicate, nonterminal, non-PASS, or Git-head mismatch reasons. +- S3 changes run artifacts only. No implementation path was edited after the attested head. + +## Durable receipts + +| Gate | Outcome | Raw exit | Selection / notable result | +| -------------------- | ------- | -------: | ----------------------------------------------------------------------------------- | +| `check` | PASS | 0 | 2,924 files, 25 batches, 0 findings | +| `test` | PASS | 0 | 4,203 passed, 0 failed, 19 ignored; 4,222 total results | +| `quality-job` | PASS | 0 | Composite completed; existing dependency-catalog warnings retained in receipt | +| `arch-check` | PASS | 0 | Doctrine failures 0; existing WARN/INFO findings retained | +| `docs-source-format` | PASS | 0 | Ran from `docs/site`; `Docs source format: OK` | +| `docs-accuracy` | PASS | 0 | Named drift task reached through aggregate; existing TanStack peer warning retained | +| `publish-dry-run` | PASS | 0 | Workspace static simulation completed; 318,629 bytes of member/file output reviewed | + +The publish dry-run is only static packaging and isolated-declaration evidence. It does not prove a +real publish, remote registry graph, install, or production behavior, and no publish was attempted. + +## Focused drift evidence + +- `deno task docs:exports-drift`: raw exit 0; all eight packages printed mode, reason, omitted-group + count, and documented-non-export-group count; terminal PASS. +- Focused checker test: raw exit 0; 6 passed, 0 failed. Empty/malformed reason, unknown mode, + invented symbol, and omitted symbol all exercised the injectable fail-closed seam. + +## JSR audit + +| Concern | Contracts | Fresh UI reference subject | +| -------------------- | ------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | +| Audit command | raw exit 0 | raw exit 0 | +| Member/version | `@netscript/contracts@0.0.6` | `@netscript/fresh-ui@0.0.6` | +| Export map | `.`, `/crud`, `/query`, `/transform` | `.`, `/ai/render-ui`, `/desktop`, `/interactive`, `/primitives`, `/registry` | +| Exact internal pins | Exactly zero `@netscript/*` imports | Exactly two: `sdk/auto-update` and `sdk/desktop`, both `jsr:@netscript/sdk@0.0.6/...` | +| Publish delta | Four shipped JSDoc files; no runtime/type/export/schema delta | No package-member delta; reference/checker only | +| Dry-run finding | One sanctioned oRPC slow-type INFO; member dry-run OK | Existing `registry/lib`, cardinality, and slow-type WARN findings; member dry-run OK | +| Full-export doc lint | **RED, raw exit 1:** 9 `private-type-ref`, 0 missing JSDoc | **RED, raw exit 1:** 123 total on `/interactive`: 96 `private-type-ref`, 27 `missing-jsdoc` | + +The Contracts publish-file output includes all four edited JSDoc files: + +- `src/application/paginated-query.ts` +- `src/application/transform-helpers.ts` +- `schemas/filters.ts` +- `schemas/pagination.ts` + +Contracts `/query` and `/transform` doc-lint are clean; the combined baseline red remains eight +findings in `contract-primitives.ts` and one in `create-crud-contract.ts`. Fresh UI's other five +entrypoints are clean; all 123 baseline diagnostics are attributed to `/interactive`. These are +pre-existing out-of-scope reds, not passes or waivers. + +`deno task deps:why @netscript/sdk` returned raw exit 0 with `sourceUsed: true`, 60 source hits, +`likelyDeadImport: false`, and `fullyRemovable: false`. + +## Thirteen-path and lock audit + +- Frozen authorized implementation contract: 13 paths. +- Changed implementation paths from base through attested head: 10, all authorized. +- Committed non-implementation changes: run artifacts only. +- Unauthorized paths: none. +- Direct forbidden-surface diff: raw exit 0 for `docs/exports`, `deno.lock`, Contracts/Fresh UI + member configs, Contracts public export barrel, and `packages/prisma-adapter-mysql`. +- `deno.lock` base blob: `a1522e6ecc98dd4232312385b0cea4e52f5fa4b2`. +- `deno.lock` attested-head blob: `a1522e6ecc98dd4232312385b0cea4e52f5fa4b2`. +- `deno.lock` working-tree blob: `a1522e6ecc98dd4232312385b0cea4e52f5fa4b2`. +- Package export maps, versions, dependency pins, and MySQL paths are untouched. + +## Honest non-gate diagnostics and prohibited gates + +- `run-gate.ts --help`: raw exit 1 (`Unknown argument --help`); no gate fired and no receipt was + inferred. The checked-in argument contract and catalog were read before valid invocations. +- `fresh-browser`: `NOT_RUN`, N/A / waived; no runtime lease exists or was requested. +- Aspire, Docker, browser, `e2e:cli`, scaffold/runtime/service smokes, resource cleanup, real + publish, merge, ready transition, relabel, issue closure, milestone mutation, and central-state + mutation: `NOT FIRED`. + +## Handoff + +The implementation author does not self-certify. The coordinator owns final substantive review, +separate-session IMPL-EVAL, readiness, and merge decisions. diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/sa4-evidence.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/sa4-evidence.md new file mode 100644 index 0000000000..2dd07bc7e5 --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/sa4-evidence.md @@ -0,0 +1,130 @@ +# SA-4 evidence — canonical generated publication cascade + +## Attestation and generation + +- Tier-A authorization: PASS on SA-3 head `f98cfabacb6ac362e8fcc8e56b180b55aa69c339`. +- Immutable generated-content head: `46528ae4c71b3744f0af64bd749d01d831f70c89`. +- Frozen base: `baf1cdf67a4e931af17b4772ddf6101f36152184`. +- The content commit changes exactly the four coordinator-approved generated paths. No generated + file was hand-edited and `gen:mcp-export-corpus` was not run. +- One initial `gen:agent-docs-prose` tool cell was lost after it modified the expected two corpus + files. Its exit was unavailable and is not counted. The observed rerun returned raw exit 0 and + left the two-file diff SHA-256 unchanged. +- First fully observed pass: `gen:agent-docs-prose`, `gen:publish-assets`, and `gen:assets-barrel` + each returned raw exit 0. Its four-path binary diff SHA-256 was + `a47278e3c07b2c31358ca2e5d1fbdf9f5539e265e280848b875b9ab6984ae9bc`. +- Second pass: all three generators returned raw exit 0; the same four paths and exact same diff + SHA-256 remained. +- After committing content, all three generators returned raw exit 0 again at the immutable head; + direct Git status and diff were empty. All subsequent freshness gates left the generated tree + unchanged. + +The refreshed prose corpus is 4,768,211 uncompressed bytes / 1,367,454 compressed bytes with SHA-256 +`78d5fed4792e34b8592dbf2fd5b87ae879e71dac54a4cca99cad700a58030114`. The CLI mirror embeds that +corpus and its provenance. MCP's bounded prose bytes remain separate, but its published fallback +provenance now records source commit `f98cfabac`; this is the narrow publish delta established in +SA-3. + +## Head-bound receipts + +Thirteen receipt files in `receipts/sa4/` attest the same immutable content head. The authoritative +twelve-gate evidence set selects `test-attempt2.json` for the `test` gate and retains the original +red `test.json` append-only as diagnostic history. + +| Gate | Outcome | Raw exit | Notable result | +| ------------------------- | -------- | -------: | ------------------------------------------------------------------------- | +| `check` | PASS | 0 | Nonempty selection: 2,924 files, 25 batches, zero findings | +| `test` (original) | **FAIL** | **1** | 4,202 passed, 1 failed, 19 ignored; 4,222 total | +| `test-attempt2` | PASS | 0 | 4,203 passed, 0 failed, 19 ignored; 4,222 total | +| `quality-job` | PASS | 0 | CI quality composite green; existing dependency warnings retained | +| `arch-check` | PASS | 0 | Zero doctrine failures; existing WARN/INFO findings retained | +| `docs-source-format` | PASS | 0 | `Docs source format: OK` from `docs/site` | +| `docs-source-format-test` | PASS | 0 | 6 passed, 0 failed from `docs/site` | +| `docs-tagline` | PASS | 0 | 36 checked, zero over the JSR tagline cap | +| `docs-accuracy` | PASS | 0 | Aggregate and named export-drift child completed fail-closed | +| `agent-docs-prose` | PASS | 0 | Rebuilt site and verified the checked-in corpus/provenance | +| `publish-assets` | PASS | 0 | MCP publish mirror fresh | +| `assets-barrel` | PASS | 0 | CLI asset barrel fresh; generator left no diff | +| `publish-dry-run` | PASS | 0 | Workspace static simulation; 318,629 bytes of member/file output reviewed | + +The checked-in evidence-set evaluation is now `SUFFICIENT` with no reasons after the one +coordinator-authorized distinct attempt. The original red remains byte-unchanged at SHA-256 +`2715babef54414d6b30a89e31487088dec4c446ad9b4efc5ee769e9fc59262f7`; attempt 2 is a separate receipt +with SHA-256 `855a1509c099c9e48adc04f220d5541164f49a5bb243f2cf522ff870046e0984`. The earlier +historical red `receipts/fix1/test.json` is also preserved unchanged. + +### Original red attribution and recoverable quarantine + +- Offending scanned path: `.llm/tmp/claude/hooks/unscoped/events.jsonl`, an ignored temporary hook + transcript covered by `.gitignore`, not generated product or a tracked source. +- Exact event: line 177, timestamp `2026-08-15T19:11:51.339Z`, `sessionId: null`. A corrected JSON + probe returned raw exit 0 and found the single forbidden string at `$.event.tool_input.command`. +- Ownership: the supervisor's unscoped hook capture of a supervisor tool input. Its payload is the + supervisor's own prose documenting the earlier test contamination and quoting the forbidden + command. The generation slice did not create it. +- The supervisor moved the exact subtree intact from `.llm/tmp/claude/hooks/unscoped/` to + `/home/codex/.claude/jobs/f7691917/quarantine/sa4-hooks-unscoped/`. The event was not edited and + the scanner was not weakened, narrowed, or excluded. +- Supervisor-recorded pre-move SHA-256: + `d0251bc2f8c78814724cb2e6c2460102260a39aadb3a21551b81244efbaceab2`. Independently verified + post-move SHA-256: the identical + `d0251bc2f8c78814724cb2e6c2460102260a39aadb3a21551b81244efbaceab2`. +- Destination evidence is recoverable and retains 262,354 bytes, 180 lines, and mtime + `2026-08-15 21:12:52 +0200`. The original scanned subtree is absent. +- No product, source, generated cascade, export map, task, workflow, or lock diff was affected by + the transcript or its quarantine. + +A first narrow attribution probe used the nonexistent `timestamp` field instead of the transcript +schema's `ts` field and returned raw exit 1; it made no attribution claim. The corrected probe used +`ts` and returned raw exit 0 with the exact line/timestamp/session/match path above. + +`publish-dry-run` is static packaging and isolated-declaration evidence only. It does not prove a +real publish, installation, remote dependency graph, or production behavior; no publish ran. + +## Focused and publication evidence + +- `deno task docs:exports-drift`: raw exit 0; eight nonempty package reports, with mode, reason, + omission-group counts, and terminal PASS. +- Focused checker test: raw exit 0; 6 passed, 0 failed. +- Pages structural test: raw exit 0; 1 passed, 0 failed. +- CI classifier/workflow test: raw exit 0; 60 passed, 0 failed. +- `check:mcp-export-corpus`: **RED, raw exit 1**, reporting the known stale corpus. It was run + read-only, not regenerated, waived, or reclassified. +- Contracts full-export doc lint: **RED, raw exit 1**; 9 private-type-ref findings and zero other + findings, unchanged from the accepted baseline. +- Fresh UI full-export doc lint: **RED, raw exit 1**; 123 findings (96 private-type-ref and 27 + missing-jsdoc), unchanged from the accepted baseline. + +| Member | Audit | Existing findings retained | Exact internal member pins | Published generated delta | +| ---------------------------- | ----- | ---------------------------- | -------------------------- | -------------------------------------------------------------------------------- | +| `@netscript/contracts@0.0.6` | raw 0 | 1 sanctioned slow-type INFO | 0 | Four shipped JSDoc lines; no API/export/schema delta | +| `@netscript/fresh-ui@0.0.6` | raw 0 | 4 WARN; 1 slow-type warning | 2, both exact `0.0.6` | Reference is upstream input, not a package-file delta | +| `@netscript/cli@0.0.6` | raw 0 | 19 WARN; 1 slow-type warning | 6, all exact `0.0.6` | `src/kernel/assets/agent-docs.generated.ts` (1.75 MB) selected by member dry-run | +| `@netscript/mcp@0.0.6` | raw 0 | 3 WARN; 1 slow-type warning | 3, all exact `0.0.6` | `src/publish-assets.generated.ts` (281.23 KB) selected by member dry-run | + +The corrected exact-pin selector returned raw exit 0 with counts 0/2/6/3. A preliminary generic +string scan returned raw exit 1 because it incorrectly treated each package's own `name` field as a +dependency pin; it is a rejected measurement, not a package red. Likewise, an initial CLI +file-selection filter failed to retain the filter's `PIPESTATUS`; no filter verdict was claimed. The +corrected CLI and MCP member runs both recorded raw publish exit 0 and raw nonempty-filter exit 0. + +## Scope, lock, and boundaries + +- Direct base-to-content-head Git list: raw exit 0. +- Seventeen-path classifier: raw exit 0; contract size 17, changed implementation paths 14, + unauthorized paths 0. The other committed paths are this leaf's append-only run artifacts. +- Forbidden-surface diff: raw exit 0 for `docs/exports`, `deno.lock`, all four audited member + configs/export maps, the already-correct Contracts barrel/primitive JSDoc, MySQL paths, and the + excluded MCP export corpus. +- `docs/exports` remains absent: raw exit 0. +- Base, content-head, and working-tree `deno.lock` blob IDs are byte-identical: + `a1522e6ecc98dd4232312385b0cea4e52f5fa4b2`. +- Post-gate generated-output and lock diffs both returned raw exit 0. +- No archive/tarball existed under `.llm/tmp/`. The supervisor's attributed transcript was moved + intact to the recoverable quarantine above; the implementation author did not edit or delete it. + +`fresh-browser` remains N/A / waived and `NOT_RUN`; no runtime lease exists. Close-gate is +`NOT_RUN`. Aspire, Docker, browsers, `e2e:cli`, scaffold/runtime/service smokes, real publish, +cleanup, merge, label/issue-box/draft-state changes, readiness, and central-state mutations remain +`NOT FIRED`. The preserved pre-finding IMPL-EVAL PASS was not amended. A fresh delta IMPL-EVAL, +readiness, and merge remain coordinator-owned. diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/scope-amendment.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/scope-amendment.md new file mode 100644 index 0000000000..93050597ef --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/scope-amendment.md @@ -0,0 +1,244 @@ +# Scope amendments SA-1 / SA-1a / SA-2 / SA-3 — `reference-export-drift-gate` (#1666 / closes #1296) + +| Field | Value | +| -------------- | ------------------------------------------------------------------------------------------------------ | +| Amendment IDs | `SA-1`, `SA-1a`, `SA-2`, `SA-3` | +| Recorded (UTC) | SA-1 `2026-08-15T16:40:42Z`; SA-1a `2026-08-15T16:57Z`; SA-2 `2026-08-15`; SA-3 `2026-08-15T19:38:43Z` | +| Authority | coordinator `codex-root-0.0.7`, relayed through the owner | +| Recorded by | `topic-internals-0.0.7`, Claude session `f7691917-0be2-4bcd-8839-43d3fc809c34` | +| Amends | `plan.md`; SA-3 records the post-`ee67d12b4` CI freshness finding | +| Leaf / lane | `reference-export-drift-gate`, wave 2 internals | +| Branch / base | `fix/reference-export-drift-gate` / `baf1cdf67a4e931af17b4772ddf6101f36152184` | +| Status | SA-3 in force; latest ruling governs wherever amendments or `plan.md` conflict | + +This is a **control-plane** record. It changes authorized scope and gate classification. SA-1 left +D1-D11 intact; SA-2 narrows D8's JSDoc-only reconciliation to all four measured residual examples +and binds N1-N5; SA-3 adds D12-D14 and four canonical generated paths. It does **not** grant merge, +publish, ready-flip, relabel, issue-closure, milestone, or release-writer authority. + +## A1 — Tenth implementation path AUTHORIZED (test-only) + +``` +.llm/tools/docs/check-exports-drift_test.ts +``` + +The frozen contract in central `leaf-contracts.json` lists **nine** `fileSurfaces`. SA-1 authorized +this test path in addition to them. SA-2 later added three JSDoc-only paths, so the live total is +**thirteen** under these bounds: + +- **Test assertions only.** No product, config, or generated file may be edited under this path. It + is not a licence to reach any other unfrozen file. +- The **existing** negative export fixture (`drift checker negative fixture validation`) must keep + passing; SA-1 adds cases, it does not license rewriting or weakening what is already there. +- A **fourteenth** implementation path is rescope: stop and request it. + +**Why.** S1 lands fail-closed coverage-policy semantics (D2-D5) whose refusal paths are the +load-bearing part of the change — empty or malformed reasons, unknown coverage modes, invented +symbols, and omitted symbols must each exit nonzero. `plan.md` originally routed those to one-off +negative probes recorded as diagnostic evidence, explicitly "because the frozen surface forbids +editing the test file." A probe run once in an author's terminal leaves no artifact that can fail a +future CI run. This leaf exists to remove exactly that defect — a gate reporting green over code it +never examined — so proving its own refusal paths with non-persistent evidence would reproduce the +defect inside the fix. Persistent test cases are the only durable proof. + +**Minimum coverage this path must carry:** empty/malformed reason, unknown coverage mode, invented +symbol, omitted symbol — each asserted nonzero by the committed test. + +## A2 — `fresh-browser` classified N/A / WAIVED + +The frozen contract lists `fresh-browser` among `provingGates`. It is now classified **N/A / +waived** for this leaf. + +**Why.** The verified plan changes checker logic, documentation prose, shipped JSDoc, task wiring, +and workflow wiring only. No route, component, island, CSS, interaction, loading/error state, or +application workflow changes. The `frontend` overlay is present because Fresh UI is the _documented +package_, not because browser behavior is modified. + +**Obligations that survive the waiver:** + +- `NOT_RUN` evidence is **preserved and reported as `NOT_RUN`**. A waiver is not a pass, and the + gate must never be restated as green. +- **No runtime lease is acquired.** Aspire, Docker, browsers, `e2e:cli`, scaffold runtime, service + runtime, publish, release cut, and resource cleanup remain prohibited in this lane. + +## A3 — PLAN-EVAL cycle 1 GRANTED (one cycle, after fresh Tier-A) + +| Field | Value | +| -------------- | ---------------------------------------------------------------------------------------------------------------------- | +| Cycles | exactly **one** (cycle 1 of 2) | +| Precondition | this amendment passes a **fresh Tier-A** supervisor review | +| Target | the **amended immutable head** produced by the commit carrying SA-1 | +| Session | **fresh and separate** from the author session | +| Route | native **Fable 5**, effort **medium**, Remote Control attached | +| Output | **artifact-only** — writes `plan-eval.md` in this slice directory and nothing else | +| On `PASS` | the **preserved original Codex author** resumes through the plan's serial slices, each followed by a fresh Tier-A gate | +| On `FAIL_PLAN` | reported as `FAIL_PLAN`; not worked around, not re-run without a grant | + +The evaluator does not merge, relabel, flip the PR to ready, close issues, mutate central cluster +state, or edit any implementation path. + +## A4 — Sequencing + +`#1666` sequences **before** `#1533 jsdoc-example-compile-gate`. #1533 introduces an +example-compiler gate that would go red on all four affected files: + +- `packages/contracts/src/application/paginated-query.ts`; +- `packages/contracts/src/application/transform-helpers.ts`; +- `packages/contracts/schemas/filters.ts`; +- `packages/contracts/schemas/pagination.ts`. + +Landing #1666 first clears all four known example-compile failures; landing #1533 first would +knowingly ship a red gate against those already-identified defects. + +## A5 — Central-state reconciliation is owed upstream + +Central `leaf-contracts.json` is **coordinator-owned** and still freezes nine `fileSurfaces` for +this leaf. This lane does not edit it. SA-1 and SA-2 are the leaf-local record of the authorized +test path, three JSDoc-only paths, and gate classification, committed and pushed on the leaf branch +so they form part of the immutable head the evaluator reads. Reconciliation of central state against +the live **thirteen-path** leaf contract remains the coordinator's responsibility. Topic-side +record: `drift.md` in the topic orchestration run directory. + +## What SA-1 does not change + +- Locked decisions D1-D7 and D9-D11 in `plan.md`, including D5 ("exclusions must never compensate + for parser defects") and D11 ("do not tune the checker to baseline green — a real red is reported + red"). D8 is superseded only to include the three coordinator-granted JSDoc lines. +- The nine frozen paths and their per-path actions, plus the SA-1 test path and SA-2's three + JSDoc-only paths. `docs/exports` remains **do not create**; `contract-primitives.ts` and + `src/public/mod.ts` remain **do not edit**. +- The remaining proving gates: `check`, `test`, `publish-dry-run`, `quality-job`, `arch-check`, + `docs-source-format`, `docs-accuracy`, and the JSR audit obligations. +- Evidence discipline: raw exit codes read unpiped, an empty selection is a refusal rather than a + pass, a command that did not fire is `NOT FIRED`, and scratch stays out of measured roots. +- The prohibition on merge, publish, ready flip, relabel beyond the leaf's own `status:`, issue + closure, milestone change, central-state mutation, and touching another lane's worktree. + +## SA-1a — historical correction to SA-1 (2026-08-15T16:57Z; count superseded by SA-2) + +SA-1 authorized the tenth path but left four path-count statements in `plan.md` reading "nine". One +of them was load-bearing: validation row 11 and the S3 evidence line historically bound the audit to +the frozen count, so the audit gate as written would have refused the very path SA-1 authorized — or +pushed the author to drop the test file to make the gate quiet. That is the same +coverage-versus-compliance failure this leaf exists to remove, introduced by the amendment meant to +prevent it. + +At the SA-1a head, the correction bound the audit to the then-current ten paths. SA-2 supersedes +that count everywhere operational: S3, validation row 11, and the risk guard are now bound to +**thirteen**, and a fourteenth implementation path is rescope. The unrelated Contracts `doc:lint` +baseline remains nine private-type-ref diagnostics and is deliberately unchanged. + +Found by an independent Tier-A pass, not by the Tier-A that admitted SA-1 — that pass grepped for +the authorized filename and never grepped for the count. Recorded in the topic drift log. + +## SA-2 — PLAN-EVAL cycle-1 remediation (2026-08-15) + +PLAN-EVAL cycle 1 returned `FAIL_PLAN` at evaluator commit `5d229e0f3`. The coordinator ruled every +open point; this section records those rulings and does not delegate them to implementation +judgement. + +### B1 — three JSDoc-only paths GRANTED + +Exactly these paths are added, and only the `@example` import subpath may change: + +| Path | Symbols | Ruled entrypoint | +| --------------------------------------------------------- | ------------------------------------------------ | -------------------------------- | +| `packages/contracts/src/application/transform-helpers.ts` | `createTransformer` | `@netscript/contracts/transform` | +| `packages/contracts/schemas/filters.ts` | `FilterConditionSchema`, `buildPrismaWhere` | `@netscript/contracts/query` | +| `packages/contracts/schemas/pagination.ts` | `PaginationInputSchema`, `createPaginatedOutput` | `@netscript/contracts/query` | + +No runtime, type, export, or schema change is authorized. Together with the frozen nine and SA-1's +test path, the surface is **thirteen**. `Closes #1296` remains honest because the plan now repairs +all four measured residual examples; without this rescope it would not be honest. + +### Corrected enforcement premise + +The coordinator's original dispatch premise was wrong, and the research inherited that error. The +checker is already enforced fail-closed in qualifying non-draft CI: + +```text +ci.yml:366 run-gate.ts --gate docs-accuracy --id quality-docs-accuracy + (quality job at :282; non-draft guard at :287) + -> catalog.ts:59 docs-accuracy -> deno task docs:accuracy + -> deno.json:85 docs:accuracy -> check-accuracy-and-discoverability.ts + -> :291-301 spawn check-exports-drift.ts; print child output and throw on nonzero +``` + +The remaining acceptance gap is discoverability and maintainer procedure: no named +`docs:exports-drift` task, no explicit Pages step bearing that name, and no runbook. S2 preserves +existing enforcement and makes it visible; it does not claim to create enforcement. + +### N1-N5 — binding implementation details + +- **N1:** S1 commits an honest residual red with its raw exit and findings; green is not its commit + condition and D11 forbids tuning the checker quiet. +- **N2:** every checker run prints each package's coverage mode, reason, and omission-group counts + before its terminal verdict. +- **N3:** export injectable `checkDrift(mapping)` returning a process code; the + `if (import.meta.main)` guard calls `Deno.exit(await checkDrift(AUTHORITATIVE_MAPPING))`. Tests + pass malformed mappings directly without triggering `main` and assert nonzero without trying to + mutate the hardcoded constant in a subprocess. +- **N4:** the Pages step runs `deno task docs:exports-drift` from repository root, has no + `working-directory`, and uses `if: env.RUN == 'true'`. +- **N5:** `docs:accuracy` invokes the named task under its existing `--allow-run=deno` permission + and preserves the current child stdout/stderr surfacing before throwing on nonzero. + +### PLAN-EVAL cycle 2 + +A fresh PLAN-EVAL is **required** because SA-2 materially changes closure scope, the test seam, +coverage reporting, and the CI premise. It is not author-granted. After this run-artifact-only head +is pushed, the coordinator must run fresh Tier-A and then grant/dispatch the final separate-session +cycle. No JSDoc or product edit may begin without both Tier-A PASS and PLAN-EVAL cycle-2 PASS. + +## SA-3 — tracked agent-docs publication cascade (2026-08-15) + +CI at the preserved implementation/evaluation head `ee67d12b4` found the tracked agent-docs corpus +stale after the Fresh UI reference rewrite. The prior IMPL-EVAL PASS remains append-only pre-finding +evidence; readiness is revoked, PR #1666 is draft at `status:impl`, and a fresh delta IMPL-EVAL will +be required at the future generated-content head. + +The coordinator grants rescope beyond the former thirteen-path ceiling for exactly the generator +outputs that a scratch/base-control investigation proves are affected: + +| Path | Canonical owner | Verified propagation | +| -------------------------------------------------------- | ---------------------- | ----------------------------------------------------------------------------------------------------------------- | +| `.llm/assets/agent-docs/prose.json.gz` | `gen:agent-docs-prose` | Contains the rendered `pages/reference/fresh-ui/index.md`; the repaired page changes its bytes and corpus digest. | +| `.llm/assets/agent-docs/provenance.json` | `gen:agent-docs-prose` | Must match the regenerated corpus sizes, digest, files, and source commit. | +| `packages/cli/src/kernel/assets/agent-docs.generated.ts` | `gen:assets-barrel` | Publishes the changed gzip/base64 payload and provenance inside `@netscript/cli`. | +| `packages/mcp/src/publish-assets.generated.ts` | `gen:publish-assets` | Its bounded prose selection excludes Fresh UI, but its published corpus provenance advances `sourceCommit`. | + +These four paths bring the live authorized implementation surface to **seventeen**. SA-3 supersedes +the former fourteenth-path refusal for these paths only. An **eighteenth** path is a hard rescope +refusal. + +### Explicit exclusion proved by the base control + +`gen:mcp-export-corpus` owns +`packages/mcp/src/infrastructure/export-surfaces/export-surface-corpus.generated.ts`, but it is not +in the leaf cascade. `check:mcp-export-corpus` returns raw exit 1 at both base `baf1cdf67` and the +leaf head. Regenerating at both commits produced the same SHA-256 +`314c9946631c8db0e500ed0cf389ddc3dd66badaedb5b6643b3b9ab9453c71f6`. This is pre-existing generator +drift, not an effect of the four Contracts JSDoc import-line corrections or the Fresh UI reference. +The output is excluded and must remain untouched/red; no waiver is invented. + +The broad `PUBLISH_ASSET_OUTPUTS` manifest also does not authorize all listed outputs. Serial +scratch generation found exactly two corpus files after `gen:agent-docs-prose`, added only the MCP +publish asset after `gen:publish-assets`, and added only the CLI agent-docs barrel after +`gen:assets-barrel`. No other manifest path moved. + +### Binding next-pass sequence + +No checkout generator runs in this SA-3 plan-only pass. After fresh coordinator Tier-A PASS only: + +1. Run `gen:agent-docs-prose`, `gen:publish-assets`, and `gen:assets-barrel` in that order; never + hand-edit generated files and do not run `gen:mcp-export-corpus`. +2. Prove first/second regeneration diff identity, prove exactly four new paths, commit the content, + prove the committed tree clean, and rerun all three generators to prove no further diff. +3. Recut the complete binding receipt set at that one clean committed content head, including all + former seven gates plus docs format tests/tagline and the three freshness gates. Re-audit + Contracts, Fresh UI, CLI, and MCP publication surfaces/pins and preserve every baseline red. +4. Push by explicit refspec, post the structured slice comment, and stop for a second fresh Tier-A. + Fresh delta IMPL-EVAL is coordinator-owned and required before readiness. + +SA-3 grants no label, issue-checkbox, draft-state, close-gate, merge, publication, runtime, lock, or +central-state authority. `fresh-browser` remains N/A/waived and `NOT_RUN`; no runtime lease exists. diff --git a/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/worklog.md b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/worklog.md new file mode 100644 index 0000000000..6d14a348fb --- /dev/null +++ b/.llm/runs/release-0.0.7-internals--orchestration/slices/reference-export-drift-gate/worklog.md @@ -0,0 +1,311 @@ +# Worklog — reference-export-drift-gate + +## S1 — explicit coverage and reference reconciliation + +- Authorization: PLAN-EVAL cycle 2 `PASS` at evaluator commit `45c249b9c`, evaluated over SA-2 head + `80046696e`. +- Scope: S1 only. S2 and S3 were not started. +- Commit: the S1 commit containing this artifact; the pushed SHA is recorded in the structured PR + comment. + +### Implementation + +- Replaced boolean `checkSymbols`/`excludedSymbols` state with a discriminated, reason-bearing + `symbolCoverage` policy. +- Added fail-closed runtime policy validation, sorted exact omission groups, stale-omission checks, + and explicit documented-non-export checks. +- Added an exported injectable `checkDrift(mapping): Promise` seam and bound process status + only under `if (import.meta.main)`. +- Restricted symbol parsing to tables whose first trimmed header cell is exactly `Symbol`; prop, + field, shape, and category tables no longer enter the inventory. Display generic suffixes such as + `` normalize to the exported name. +- Promoted Fresh UI to complete coverage across all six entrypoints. Its policy excludes no exported + symbols. The only allowed doc-only names are seven Dropzone copy-source contracts, grouped with + the same reason as the page's explicit non-export label. +- Repaired the Fresh UI reference for ActionMenu, Combobox, all public interactive contracts, + desktop chrome, registry contracts, render-UI types, DataGrid contexts, and the maintainer + derivation/update runbook. +- Corrected exactly the four authorized Contracts `@example` import subpath lines. No runtime, type, + export, or schema line changed. + +### N1 / D11 evidence + +The checker was not tuned quiet: + +1. After policy/parser implementation but before reference reconciliation, the direct checker + returned raw exit 1 with the real Fresh UI omissions plus unsorted policy groups. It reported no + parser-generated inventions. +2. After documenting the live Fresh UI surface, the checker returned raw exit 1 for only the + inherited Telemetry omission group's unsorted order. The group was sorted mechanically without + changing its 154-symbol membership. +3. The final direct checker returned raw exit 0. Fresh UI measured 168 expected exports and 175 + documented inventory names: zero omissions and exactly the seven explicitly classified Dropzone + non-exports. No exported Fresh UI symbol is omitted by policy. + +### Evidence + +| Proof | Result | +| --------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | +| Structured check wrapper on checker + checker test | raw exit 0; 2 files selected, 0 findings | +| Structured focused-test wrapper | raw exit 0; 6 passed, 0 failed | +| Structured lint wrapper | raw exit 0; 6 TypeScript files selected, 0 findings | +| Structured format wrapper | raw exit 0; all 10 changed files selected, 0 findings | +| Four refusal cases | empty/malformed reason, unknown mode, invented symbol, omitted symbol each asserted return code 1 | +| Direct exports/symbol drift | raw exit 0; eight per-package mode/reason/group reports; terminal PASS | +| Fresh UI live inventory diagnostic | raw exit 0; expected 168, documented 175, omissions 0, inventions exactly seven classified Dropzone names | +| Docs source format | raw exit 0; `Docs source format: OK` | +| `deno task docs:accuracy` | raw exit 0; terminal `docs accuracy: PASS` | +| Six affected Contracts symbols on ruled entrypoints | raw exit 0 each via `deno doc --no-lock --filter` | +| Contracts JSDoc diff | exactly one import-subpath line in each of four authorized files | +| Contracts full-export `doc:lint` | raw exit 1; unchanged baseline nine `private-type-ref` diagnostics, zero on `/query` and `/transform` | +| Thirteen-path audit | raw exit 0; seven approved S1 implementation paths plus three slice artifacts, no unauthorized path | +| `fresh-browser` | `NOT_RUN` — N/A / waived; no runtime lease | + +No Aspire, Docker, browser, `e2e:cli`, scaffold/runtime smoke, publish, S2 task/workflow wiring, or +S3 durable gate receipt was fired. + +## S2 — named discoverability paths + +- Authorization: coordinator S1 slice-review `PASS` at `678840603`. +- Scope: S2 only. S3 was not started. +- Commit: the S2 commit containing this amendment; the pushed SHA is recorded in the structured PR + comment. + +### Implementation + +- Added `docs:exports-drift` as a directly invocable task with only `--allow-read` and + `--allow-run=deno`. The checker does not receive environment, write, network, or broad + `--allow-all` permission. +- Replaced the accuracy checker's hidden raw-script argv with one `deno task docs:exports-drift` + child invocation. Existing nonzero handling remains intact: the child's stdout and stderr are + surfaced before the aggregate throws. +- Added one explicitly named Pages build step that runs `deno task docs:exports-drift` from the + repository root, behind `if: env.RUN == 'true'` and without `working-directory`. +- This is a discoverability repair over the pre-existing fail-closed non-draft CI enforcement chain; + it does not claim S2 created enforcement. + +### Evidence + +| Proof | Result | +| ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| Explicit wiring search | raw exit 0; one task definition, one aggregate call, one Pages command | +| Named `docs:exports-drift` task | raw exit 0 before and after the negative diagnostic; terminal PASS | +| `deno task docs:accuracy` | raw exit 0; terminal `docs accuracy: PASS` | +| Single-execution audit | raw exit 0; maintenance reaches drift only through one accuracy call, accuracy calls the task once, and Pages calls the task once without also calling accuracy | +| Permission audit | raw exit 0; task text exactly matches `--allow-read --allow-run=deno` and no broader permission | +| Pages trigger/guard/root audit | raw exit 0; pre-`jobs` workflow prefix byte-identical to S1 HEAD, guard present, no working directory | +| Pages workflow structural test | raw exit 0; 1 passed, 0 failed | +| CI classifier/workflow test | raw exit 0; 60 passed, 0 failed | +| Docs source-format gate | raw exit 0; `Docs source format: OK` | +| Docs source-format tests | raw exit 0; 6 passed, 0 failed | +| Structured check wrapper | raw exit 0; one file selected, no findings | +| Structured format wrapper | raw exit 0; all six changed files selected, no findings | +| Controlled named-task drift | raw child exit 1; surfaced invented and omitted ActionMenu names | +| Controlled aggregate drift | raw child exit 1; surfaced child output and threw fail-closed | +| Controlled-drift restoration | raw diagnostic exit 0; SHA-256 before/after `e822e8503636fd9f99ae816172baab0815d034f3fe745f9c58f10e9293b34db`, byte-exact, scratch removed, target diff raw exit 0 | +| Thirteen-path audit | raw exit 0; three approved S2 implementation paths plus three slice artifacts, no unauthorized or forbidden path | +| `fresh-browser` | `NOT_RUN` — N/A / waived; no runtime lease | + +One extra structured lint probe returned raw exit 2 because Deno excluded the `.llm` file under the +repository lint configuration; the wrapper correctly refused an empty selection instead of claiming +green. A diagnostic `deno lint --no-config` on that exact file returned raw exit 0. The first +single-execution assertion probe also returned raw exit 1 because its shell-embedded YAML quote was +stripped; the corrected character-code assertion returned raw exit 0 with every count, guard, +permission, and trigger check true. Neither diagnostic red is treated as a product verdict. + +No Aspire, Docker, browser, `e2e:cli`, scaffold/runtime smoke, publish, S3 durable gate receipt, +workflow trigger, `deno.lock`, central state, or other lane was touched. + +## Handoff + +S2 stops after commit, explicit-refspec push, and its structured PR comment. The coordinator owns +the required substantive slice review. S3 must not begin until that review authorizes continuation. + +## S3 — history-bound contract and publication evidence + +- Authorization: coordinator S2 slice-review `PASS` at `47ca22abe`. +- Scope: run artifacts only; no implementation-path edit. +- Immutable implementation head: `47ca22abe94b9d2e54d3778edc8944094b227886`. + +### Durable gate set + +Seven `run-gate.ts` receipts under `receipts/s3/` attest the exact immutable head. The generated +evidence-set report is `SUFFICIENT` with no reasons. + +| Gate | Raw exit | Result | +| -------------------- | -------: | --------------------------------------------------- | +| `check` | 0 | PASS; 2,924 selected files, 25 batches, 0 findings | +| `test` | 0 | PASS; 4,203 passed, 0 failed, 19 ignored | +| `quality-job` | 0 | PASS; dependency-catalog warnings retained | +| `arch-check` | 0 | PASS; existing doctrine WARN/INFO findings retained | +| `docs-source-format` | 0 | PASS from `docs/site` cwd | +| `docs-accuracy` | 0 | PASS; existing TanStack peer warning retained | +| `publish-dry-run` | 0 | PASS; static workspace simulation only | + +### Focused and JSR evidence + +- Direct named drift: raw exit 0, all eight coverage reports, terminal PASS. +- Focused checker test: raw exit 0, 6 passed / 0 failed. +- Contracts JSR audit: raw exit 0; all four edited JSDoc files present in the publish set; one + sanctioned oRPC slow-type INFO. +- Fresh UI JSR audit: raw exit 0; all six exports inspected; existing structural/cardinality and + slow-type WARN findings preserved. +- Exact pins: Contracts has zero `@netscript/*` member imports; Fresh UI has exactly two, both fixed + to `jsr:@netscript/sdk@0.0.6/...`. `deps:why @netscript/sdk` raw exit 0 confirms live use. +- Contracts full-export doc lint: **raw exit 1, RED**; unchanged 9 private-type-ref diagnostics, + with `/query` and `/transform` clean. +- Fresh UI full-export doc lint: **raw exit 1, RED**; unchanged 123 `/interactive` diagnostics (96 + private-type-ref, 27 missing-jsdoc), with the other five entrypoints clean. + +### History and boundary evidence + +- Thirteen-path classifier: raw exit 0; 10 changed implementation paths, all authorized; every other + changed/pending path is within this run directory. +- Forbidden-surface direct Git diff: raw exit 0. +- `deno.lock` base, immutable-head, and working-tree blob IDs are identical: + `a1522e6ecc98dd4232312385b0cea4e52f5fa4b2`. +- `run-gate.ts --help` was an unsupported tooling probe (raw exit 1); no gate fired. Valid gates + were launched only after reading the source contract/catalog. +- `fresh-browser` remains `NOT_RUN`, N/A / waived. No runtime lease exists or was requested. +- All prohibited runtime, publish, merge, readiness, label, issue, milestone, cluster, and cleanup + actions remain `NOT FIRED`. + +## Final author handoff + +S3 stops after the run-artifact commit, explicit-refspec push, and structured PR comment. The +coordinator owns final substantive review, IMPL-EVAL, readiness, and merge. The author does not +self-certify. + +## FAIL_FIX repair — discriminating refusal tests + +- Authorization: evaluator F1 at `4c09e9203`; test-quality repair only. +- Immutable repaired implementation head: `4238670173271bca4281eba7db6c2030d046bc73`. +- Repair scope: exactly `.llm/tools/docs/check-exports-drift_test.ts`; checker behavior and every + product/docs/task/workflow path remained unchanged. +- The four refusal tests now use real fixture paths and require the branch-specific captured error. + The invented case documents `actualSymbol` plus `inventedSymbol`, preventing OMITS from masking + INVENTS. +- Full-repository archive mutation tests returned raw exit 1 for each named INVENTS, unknown-mode, + malformed-reason, and OMITS test; the restored six-test suite returned raw exit 0. +- Seven authoritative receipts under `receipts/fix1/` all returned PASS/raw exit 0 and attest the + repaired head. `audit/evidence-set-fix1.json` is `SUFFICIENT` with no reasons. +- The preliminary full-test receipt remains RED/raw exit 1 because the safety test inspected the + run-owned mutation archive; after explicit scratch cleanup, attempt 2 passed 4,203/0/19. +- The five issue boxes map separately to Contracts example imports, Contracts reference inventory, + Fresh UI reference truth, machine-readable omissions, and runbook/discoverable verification. No + box, acceptance-evidence block, or issue state was mutated. +- Design checkpoint: the locked D1-D11 table in `plan.md` plus PLAN-EVAL cycle-2 PASS at `45c249b9c` + is the recorded design checkpoint. +- `fresh-browser` remains `NOT_RUN`, N/A / waived. All prohibited runtime and publication actions + remain `NOT FIRED`. + +The detailed mutation record and receipt/red accounting are in `audit/refusal-mutation-tests.md` and +`fix1-evidence.md`. The author stops after the explicit-refspec push and structured repair comment +for coordinator Tier-A. + +## SA-3 plan-only amendment — agent-docs publication cascade + +- Trigger: quality CI at `ee67d12b4` found `Agent docs corpus freshness` red. The close-gate red is + a coordinator-owned label/mirror race and was not rerun. The preserved IMPL-EVAL PASS remains + append-only pre-finding evidence; readiness is revoked and PR #1666 remains draft/status:impl. +- No generator ran against the author checkout. All causal probes ran in isolated clones under + `.llm/tmp/` at exact leaf head and exact base. +- Leaf/base control: `check:agent-docs-prose` raw exit 1 at `ee67d12b4`, raw exit 0 at `baf1cdf67`. + `check:mcp-export-corpus` raw exit 1 at both commits. +- Serial scratch generation found exactly four affected paths: agent-docs gzip, provenance, CLI + agent-docs generated source, and MCP publish-assets generated source. All applicable generator raw + exits were 0; a second pass left the cumulative diff checksum unchanged. +- Exclusion proof: base and leaf `gen:mcp-export-corpus` outputs are byte-identical SHA-256 + `314c9946631c8db0e500ed0cf389ddc3dd66badaedb5b6643b3b9ab9453c71f6`; its freshness red is baseline + drift and its generated path is not authorized. +- Scope: SA-3 grants only the four verified generated paths, taking the implementation ceiling from + thirteen to seventeen. An eighteenth path is rescope. No generated file is hand-edited. +- Publish correction: the CLI asset contains refreshed offline prose and provenance; MCP's bounded + prose excludes Fresh UI but its published provenance advances. Both are real JSR publish deltas. +- Next action is blocked on fresh Tier-A PASS. Only then may the canonical three-generator sequence, + idempotence proof, coherent content-head receipt recut, explicit-refspec push, and second Tier-A + occur. Fresh delta IMPL-EVAL remains coordinator-owned and required before readiness. +- `fresh-browser` stays N/A/waived and `NOT_RUN`; runtime, close-gate, label, issue-box, + draft-state, merge, publish, lock, and central-state mutations remain `NOT FIRED`. + +## SA-4 canonical generation and coherent content-head evidence + +- Fresh Tier-A passed SA-3 at `f98cfabac`; canonical generation then ran in locked D12 order. +- The first fully observed and second idempotence passes returned raw exit 0 for all three owners. + Both produced exactly the four approved outputs and the same binary diff SHA-256 + `a47278e3c07b2c31358ca2e5d1fbdf9f5539e265e280848b875b9ab6984ae9bc`. +- Generated content was committed alone at `46528ae4c71b3744f0af64bd749d01d831f70c89`. A clean-head + third owner pass returned raw exit 0 for all three generators and left no diff. +- Twelve receipts were recut at that one immutable head. Eleven are PASS/raw 0. Full `test` is + honestly RED/raw 1 because a repository safety test found a forbidden command in foreign + `.llm/tmp/claude/hooks/unscoped/events.jsonl`; 4,202 tests passed, 1 failed, and 19 were ignored. + The evidence-set result is therefore `INSUFFICIENT`, not relabeled green. +- Focused drift/checker/Pages checks are green. `check:mcp-export-corpus` remains the recorded + baseline RED/raw 1 without generation. Contracts and Fresh UI doc-lint remain RED/raw 1 at 9 and + 123 findings respectively. +- Four JSR audits returned raw 0; exact internal pin counts are Contracts 0, Fresh UI 2, CLI 6, MCP + 3, all present pins exact `0.0.6`. CLI and MCP member dry-runs selected their regenerated publish + files explicitly. +- Seventeen-path classifier, forbidden-surface audit, and lock proof returned raw 0. Fourteen + implementation paths changed, all authorized; the lock blob remains + `a1522e6ecc98dd4232312385b0cea4e52f5fa4b2`. +- Close-gate and all runtime/prohibited actions remain `NOT_RUN` / `NOT FIRED`. The author stops + after the run-artifact commit, explicit-refspec push, and structured comment for fresh Tier-A. + +## SA-4 test attempt 2 — supervisor-attributed temp transcript + +- The supervisor attributed the sole original test red to ignored temp hook transcript + `.llm/tmp/claude/hooks/unscoped/events.jsonl`, line 177, timestamp `2026-08-15T19:11:51.339Z`, + `sessionId: null`. It is the supervisor's unscoped capture of supervisor prose quoting the + forbidden string, not generated product or tracked source. +- The supervisor moved the exact subtree recoverably to + `/home/codex/.claude/jobs/f7691917/quarantine/sa4-hooks-unscoped/`. Pre- and post-move SHA-256 are + both `d0251bc2f8c78814724cb2e6c2460102260a39aadb3a21551b81244efbaceab2`; the destination retains + 262,354 bytes, 180 lines, and mtime `2026-08-15 21:12:52 +0200`. +- The original red receipt remains byte-unchanged: raw exit 1, 4,202 passed / 1 failed / 19 ignored + (4,222 total), SHA-256 `2715babef54414d6b30a89e31487088dec4c446ad9b4efc5ee769e9fc59262f7`. +- Exactly one distinct attempt ran at detached immutable content head + `46528ae4c71b3744f0af64bd749d01d831f70c89`, invocation `reference-export-sa4-test-attempt2`. It + returned raw exit 0: 4,203 passed / 0 failed / 19 ignored, 4,222 total. +- The authoritative twelve-gate evidence set now selects attempt 2 and recomputes `SUFFICIENT`; both + test receipts remain in the evidence index with exact totals. No third attempt ran. +- No scanner, product/source/generated path, lock, runtime, close-gate, PR state, label, or issue + state changed. + +## Post-eval base refresh — current main integration + +Merged current main `0ef48c2ec661a7e6d55ec2faf5def6ae7dd2e6eb` without rewriting evaluated history. +The merge commit `8c03d862931b64573df9a4bac76ebf266e0ec175` preserves `0d4c82d6e` as its first +parent and current main as its second parent. Preflight and merge both found exactly the four +generated publication conflicts briefed by the coordinator. + +The first canonical corpus run returned raw exit 1 because the conflict-marked provenance was not +valid JSON. First-parent provenance was used only as a temporary valid metadata seed, after which +the canonical generator overwrote the final corpus and provenance from merged inputs. The complete +generator cascade then returned raw exit 0, and two post-commit full reruns were clean and +idempotent. Decompressed corpus evidence contains both #1665's query-bridge duplicate-module +guidance and #1666's Fresh UI reason-bearing omission workflow. + +Twelve structured receipts under `receipts/base-refresh/` all PASS at the exact integration head. +Root test totals are 4,211 passed / 0 failed / 19 ignored. The seventeen-path classifier, no-fifth +combined-diff proof, history/append-only audit, and lock proof are raw-exit-0. A malformed focused +checker invocation omitted write permission and returned raw exit 1; the corrected command returned +raw exit 0 with 6/0, while the authoritative full-suite receipt was already green. Full details are +in `base-refresh-evidence.md` and `audit/base-refresh/`. + +## CI changed-source quality repair + +Code quality run `31908898023` found this leaf's `exportsObj: any` and conditional-export `as any` +access. The exact nine-file CI scan was reproduced locally at raw exit 1 with those two findings and +no others. The checker now models Deno export targets with a string/object union and uses `unknown` +plus narrowing helpers; no allowance or suppression was introduced. + +Missing/falsy defaults retain the exact `''` fallback. Target-level `null` deliberately changes from +throwing to `''` so one malformed entry does not abort the audit. A malformed top-level `exports` +primitive now throws a typed error rather than silently deriving an empty inventory. Seven focused +derivation cases make those branches independently observable. + +Final evidence: exact changed-source quality raw 0 with nine paths / zero findings / zero +allowances; focused checker 12/0; root test 4,217/0/19; check raw 0; direct drift raw 0 with +unchanged eight-row coverage output. Generated cascade outputs and `deno.lock` are unchanged. See +`ci-quality-repair-evidence.md`. diff --git a/.llm/tools/docs/check-accuracy-and-discoverability.ts b/.llm/tools/docs/check-accuracy-and-discoverability.ts index 0105b8462b..efe1162862 100644 --- a/.llm/tools/docs/check-accuracy-and-discoverability.ts +++ b/.llm/tools/docs/check-accuracy-and-discoverability.ts @@ -288,9 +288,9 @@ export async function runAccuracyCheck(): Promise { const checkedFreshRootImports = await checkFreshRootImports('docs'); - // Run the exports & symbols drift check as part of the accuracy verification + // Run the named exports & symbols drift task as part of the accuracy verification. const checkExportsCmd = new Deno.Command('deno', { - args: ['run', '--allow-all', '.llm/tools/docs/check-exports-drift.ts'], + args: ['task', 'docs:exports-drift'], }); const { code: driftCode, stderr: driftStderr, stdout: driftStdout } = await checkExportsCmd .output(); diff --git a/.llm/tools/docs/check-exports-drift.ts b/.llm/tools/docs/check-exports-drift.ts index b1630dffd4..3abbc9b6cb 100644 --- a/.llm/tools/docs/check-exports-drift.ts +++ b/.llm/tools/docs/check-exports-drift.ts @@ -1,24 +1,63 @@ import { join } from '@std/path'; +export interface SymbolOmissionGroup { + reason: string; + symbols: readonly string[]; +} + +export type SymbolCoverage = + | { + mode: 'complete'; + reason: string; + omittedSymbols?: readonly SymbolOmissionGroup[]; + documentedNonExports?: readonly SymbolOmissionGroup[]; + } + | { + mode: 'entrypoints-only'; + reason: string; + }; + export interface PackageMapping { name: string; packagePath: string; // relative to root, e.g. "packages/plugin" docPath: string; // relative to root, e.g. "docs/site/reference/plugin/index.md" packageName: string; // e.g. "@netscript/plugin" - excludedExports?: string[]; // list of exported keys to ignore, e.g. ["./internal"] - checkSymbols?: boolean; // if true, verifies every exported symbol is listed in the doc - excludedSymbols?: string[]; // list of symbol names to ignore + excludedExports?: readonly string[]; // exported keys intentionally outside the public reference + symbolCoverage: SymbolCoverage; } -export const AUTHORITATIVE_MAPPING: PackageMapping[] = [ +export interface DenoConditionalExportTarget { + readonly default?: string; +} + +export type DenoExportTarget = string | DenoConditionalExportTarget; + +export type DenoExports = string | Readonly>; + +export const AUTHORITATIVE_MAPPING: readonly PackageMapping[] = [ { name: 'fresh-ui', packagePath: 'packages/fresh-ui', docPath: 'docs/site/reference/fresh-ui/index.md', packageName: '@netscript/fresh-ui', excludedExports: [], - checkSymbols: false, - excludedSymbols: [], + symbolCoverage: { + mode: 'complete', + reason: 'All six published entrypoints are maintained as one complete reference surface.', + documentedNonExports: [{ + reason: + 'Dropzone is an explicitly labeled copy-source registry component, not a package export.', + symbols: [ + 'DROPZONE_INGEST_SOURCES', + 'DROPZONE_REJECTED_REASONS', + 'DropzoneIngestDetails', + 'DropzoneIngestSource', + 'DropzoneProps', + 'DropzoneRejectedFile', + 'DropzoneRejectedReason', + ], + }], + }, }, { name: 'plugin', @@ -26,8 +65,11 @@ export const AUTHORITATIVE_MAPPING: PackageMapping[] = [ docPath: 'docs/site/reference/plugin/index.md', packageName: '@netscript/plugin', excludedExports: [], - checkSymbols: false, - excludedSymbols: [], + symbolCoverage: { + mode: 'entrypoints-only', + reason: + 'This page currently guarantees package entrypoint coverage; complete symbol prose is tracked separately.', + }, }, { name: 'config', @@ -35,8 +77,10 @@ export const AUTHORITATIVE_MAPPING: PackageMapping[] = [ docPath: 'docs/site/reference/config/index.md', packageName: '@netscript/config', excludedExports: [], - checkSymbols: true, - excludedSymbols: [], + symbolCoverage: { + mode: 'complete', + reason: 'The config reference is maintained as a complete published-symbol inventory.', + }, }, { name: 'contracts', @@ -44,8 +88,10 @@ export const AUTHORITATIVE_MAPPING: PackageMapping[] = [ docPath: 'docs/site/reference/contracts/index.md', packageName: '@netscript/contracts', excludedExports: [], - checkSymbols: true, - excludedSymbols: [], + symbolCoverage: { + mode: 'complete', + reason: 'The contracts reference is maintained as a complete published-symbol inventory.', + }, }, { name: 'queue', @@ -53,8 +99,11 @@ export const AUTHORITATIVE_MAPPING: PackageMapping[] = [ docPath: 'docs/site/reference/queue/index.md', packageName: '@netscript/queue', excludedExports: [], - checkSymbols: false, - excludedSymbols: [], + symbolCoverage: { + mode: 'entrypoints-only', + reason: + 'This page currently guarantees package entrypoint coverage; complete symbol prose is tracked separately.', + }, }, { name: 'sdk', @@ -62,8 +111,11 @@ export const AUTHORITATIVE_MAPPING: PackageMapping[] = [ docPath: 'docs/site/reference/sdk/index.md', packageName: '@netscript/sdk', excludedExports: [], - checkSymbols: false, - excludedSymbols: [], + symbolCoverage: { + mode: 'entrypoints-only', + reason: + 'This page currently guarantees package entrypoint coverage; complete symbol prose is tracked separately.', + }, }, { name: 'service', @@ -71,8 +123,11 @@ export const AUTHORITATIVE_MAPPING: PackageMapping[] = [ docPath: 'docs/site/reference/service/index.md', packageName: '@netscript/service', excludedExports: [], - checkSymbols: false, - excludedSymbols: [], + symbolCoverage: { + mode: 'entrypoints-only', + reason: + 'This page currently guarantees package entrypoint coverage; complete symbol prose is tracked separately.', + }, }, { name: 'telemetry', @@ -80,163 +135,171 @@ export const AUTHORITATIVE_MAPPING: PackageMapping[] = [ docPath: 'docs/site/reference/telemetry/index.md', packageName: '@netscript/telemetry', excludedExports: [], - checkSymbols: true, - excludedSymbols: [ - 'OtelAiTracer', - 'TelemetryQueryPort', - 'TelemetryQueryOptions', - 'otelDenoDescriptor', - 'OtelDenoTracerProvider', - 'OtelDenoPropagator', - 'OtelDenoMeter', - 'OtelDenoSpanLink', - 'createOtelDenoProvider', - 'createOtelDenoPropagator', - 'createOtelDenoMeter', - 'createOtelDenoSpanLink', - 'SdkTracerProviderHandle', - 'SdkMeterProviderHandle', - 'SdkBinding', - 'SdkLoader', - 'defaultSdkLoader', - 'otelSdkDescriptor', - 'OtelSdkTracerProvider', - 'OtelSdkSpanLink', - 'createOtelSdkProvider', - 'createOtelSdkSpanLink', - 'TelemetryProviderSelection', - 'CreateTelemetryProviderInput', - 'createTelemetryProvider', - 'metricQueryFilterSchema', - 'resourceQueryFilterSchema', - 'TelemetryQueryValidationError', - 'traceQueryFilterSchema', - 'validateMetricQueryFilter', - 'validateResourceQueryFilter', - 'validateTraceQueryFilter', - 'MetricQueryFilter', - 'ResourceQueryFilter', - 'TelemetryAttributeValue', - 'TelemetryLog', - 'TelemetryMetric', - 'TelemetryMetricPoint', - 'TelemetryMetricType', - 'TelemetryOtlpJson', - 'TelemetryResource', - 'TelemetrySpan', - 'TelemetrySpanEvent', - 'TelemetrySpanKind', - 'TelemetrySpanLink', - 'TelemetryTrace', - 'TraceQueryFilter', - 'AspireTelemetryQuery', - 'createAspireTelemetryQuery', - 'AspireTelemetryQueryOptions', - 'createTelemetryQuery', - 'RecordedSpanEvent', - 'RecordedSpanSnapshot', - 'InMemorySpanRecorder', - 'createInMemorySpanRecorder', - 'getTriggerTracer', - 'getTraceContext', - 'parseTraceState', - 'DeprecatedMessagingAttributeAliases', - 'DeprecatedJobAttributeAliases', - 'DeprecatedExecutionAttributeAliases', - 'DeprecatedSagaAttributeAliases', - 'SagaAttributeName', - 'GenAiAttributeName', - 'TelemetryAttributeBuilderValue', - 'TelemetryAttributeBuilderMap', - 'OTEL_SEMCONV_STABILITY_OPT_IN', - 'NETSCRIPT_SEMCONV_STABILITY_OPT_IN', - 'NETSCRIPT_ATTRIBUTE_ROOT', - 'NETSCRIPT_ATTRIBUTE_ALIAS_WINDOW', - 'NETSCRIPT_ATTRIBUTE_ALIAS_MODE', - 'TelemetryConventionId', - 'NetScriptAttributeDomain', - 'MessageContext', - 'EnqueueOptions', - 'ListenOptions', - 'MessageQueue', - 'TracedQueueOptions', - 'TracedMessageContext', - 'TracedQueue', - 'traceQueue', - 'ScheduledJobDefinition', - 'SchedulerTickContext', - 'JobDispatchContext', - 'TracedDispatchOptions', - 'traceSchedulerTick', - 'TracedJobDefinition', - 'TracedJobExecution', - 'JobExecutionOptions', - 'TracedJobResult', - 'TracedWorkerConfig', - 'WorkerMetricValues', - 'WorkerMetricInstruments', - 'createWorkerMetricInstruments', - 'getWorkerMetricInstruments', - 'recordSharedWorkerMetrics', - 'withChildSpan', - 'createProviderRegistration', - 'TELEMETRY_PROVIDER_REGISTRATION_NAME', - 'registerORPCInstrumentation', - 'ErrorClassification', - 'ErrorClassifier', - 'LogLevel', - 'RootInterceptorOptions', - 'RootInterceptor', - 'ClientInterceptorOptions', - 'AnyInterceptor', - 'GenericHandlerOptions', - 'createHonoTracingMiddleware', - 'HonoTracingMiddleware', - 'HonoTracingMiddlewareOptions', - 'AiTelemetryAttributes', - 'AiTelemetryAttributeValue', - 'createOtelAiTelemetryPort', - 'CreateOtelAiTelemetryPortOptions', - 'OtelAiTelemetryPort', - 'OtelAiTelemetrySpan', - 'AttributeValue', - 'Exception', - 'SpanContext', - 'SpanOptions', - 'SpanStatus', - 'TimeInput', - 'TraceState', - 'Counter', - 'Histogram', - 'Meter', - 'MeterPort', - 'MetricInstrumentOptions', - 'ObservableCallback', - 'ObservableGauge', - 'ObservableResult', - 'PropagationExtractCarrier', - 'PropagationInjectCarrier', - 'PropagatorPort', - 'SpanLinkPort', - 'TelemetryProviderDescriptor', - 'TelemetryProviderOptions', - 'TracerProviderPort', - 'createFanInLinks', - 'FanInLinkMessage', - 'getParentContextFromHeaders', - 'PropagationHeaders', - 'NETSCRIPT_TELEMETRY_ENV_VARS', - 'TelemetryProviderId', - 'DEFAULT_TELEMETRY_PROVIDER_ID', - 'OTEL_SEMCONV_STABILITY_OPT_IN_VALUE', - 'markProviderRegistered', - 'clearProviderRegistration', - 'isProviderRegistered', - 'telemetryConfigSchema', - 'TelemetryConfigError', - 'validateTelemetryConfig', - 'TracedResult', - ], + symbolCoverage: { + mode: 'complete', + reason: + 'The telemetry reference curates stable entrypoints and primary APIs while classifying lower-level contracts explicitly.', + omittedSymbols: [{ + reason: + 'Low-level provider, query, instrumentation, compatibility, and framework integration contracts remain API-reference-only.', + symbols: [ + 'AiTelemetryAttributes', + 'AiTelemetryAttributeValue', + 'AnyInterceptor', + 'AspireTelemetryQuery', + 'AspireTelemetryQueryOptions', + 'AttributeValue', + 'clearProviderRegistration', + 'ClientInterceptorOptions', + 'Counter', + 'createAspireTelemetryQuery', + 'createFanInLinks', + 'createHonoTracingMiddleware', + 'createInMemorySpanRecorder', + 'createOtelAiTelemetryPort', + 'CreateOtelAiTelemetryPortOptions', + 'createOtelDenoMeter', + 'createOtelDenoPropagator', + 'createOtelDenoProvider', + 'createOtelDenoSpanLink', + 'createOtelSdkProvider', + 'createOtelSdkSpanLink', + 'createProviderRegistration', + 'createTelemetryProvider', + 'CreateTelemetryProviderInput', + 'createTelemetryQuery', + 'createWorkerMetricInstruments', + 'DEFAULT_TELEMETRY_PROVIDER_ID', + 'defaultSdkLoader', + 'DeprecatedExecutionAttributeAliases', + 'DeprecatedJobAttributeAliases', + 'DeprecatedMessagingAttributeAliases', + 'DeprecatedSagaAttributeAliases', + 'EnqueueOptions', + 'ErrorClassification', + 'ErrorClassifier', + 'Exception', + 'FanInLinkMessage', + 'GenAiAttributeName', + 'GenericHandlerOptions', + 'getParentContextFromHeaders', + 'getTraceContext', + 'getTriggerTracer', + 'getWorkerMetricInstruments', + 'Histogram', + 'HonoTracingMiddleware', + 'HonoTracingMiddlewareOptions', + 'InMemorySpanRecorder', + 'isProviderRegistered', + 'JobDispatchContext', + 'JobExecutionOptions', + 'ListenOptions', + 'LogLevel', + 'markProviderRegistered', + 'MessageContext', + 'MessageQueue', + 'Meter', + 'MeterPort', + 'MetricInstrumentOptions', + 'MetricQueryFilter', + 'metricQueryFilterSchema', + 'NETSCRIPT_ATTRIBUTE_ALIAS_MODE', + 'NETSCRIPT_ATTRIBUTE_ALIAS_WINDOW', + 'NETSCRIPT_ATTRIBUTE_ROOT', + 'NETSCRIPT_SEMCONV_STABILITY_OPT_IN', + 'NETSCRIPT_TELEMETRY_ENV_VARS', + 'NetScriptAttributeDomain', + 'ObservableCallback', + 'ObservableGauge', + 'ObservableResult', + 'OTEL_SEMCONV_STABILITY_OPT_IN', + 'OTEL_SEMCONV_STABILITY_OPT_IN_VALUE', + 'OtelAiTelemetryPort', + 'OtelAiTelemetrySpan', + 'OtelAiTracer', + 'otelDenoDescriptor', + 'OtelDenoMeter', + 'OtelDenoPropagator', + 'OtelDenoSpanLink', + 'OtelDenoTracerProvider', + 'otelSdkDescriptor', + 'OtelSdkSpanLink', + 'OtelSdkTracerProvider', + 'parseTraceState', + 'PropagationExtractCarrier', + 'PropagationHeaders', + 'PropagationInjectCarrier', + 'PropagatorPort', + 'RecordedSpanEvent', + 'RecordedSpanSnapshot', + 'recordSharedWorkerMetrics', + 'registerORPCInstrumentation', + 'ResourceQueryFilter', + 'resourceQueryFilterSchema', + 'RootInterceptor', + 'RootInterceptorOptions', + 'SagaAttributeName', + 'ScheduledJobDefinition', + 'SchedulerTickContext', + 'SdkBinding', + 'SdkLoader', + 'SdkMeterProviderHandle', + 'SdkTracerProviderHandle', + 'SpanContext', + 'SpanLinkPort', + 'SpanOptions', + 'SpanStatus', + 'TELEMETRY_PROVIDER_REGISTRATION_NAME', + 'TelemetryAttributeBuilderMap', + 'TelemetryAttributeBuilderValue', + 'TelemetryAttributeValue', + 'TelemetryConfigError', + 'telemetryConfigSchema', + 'TelemetryConventionId', + 'TelemetryLog', + 'TelemetryMetric', + 'TelemetryMetricPoint', + 'TelemetryMetricType', + 'TelemetryOtlpJson', + 'TelemetryProviderDescriptor', + 'TelemetryProviderId', + 'TelemetryProviderOptions', + 'TelemetryProviderSelection', + 'TelemetryQueryOptions', + 'TelemetryQueryPort', + 'TelemetryQueryValidationError', + 'TelemetryResource', + 'TelemetrySpan', + 'TelemetrySpanEvent', + 'TelemetrySpanKind', + 'TelemetrySpanLink', + 'TelemetryTrace', + 'TimeInput', + 'TracedDispatchOptions', + 'TracedJobDefinition', + 'TracedJobExecution', + 'TracedJobResult', + 'TracedMessageContext', + 'TracedQueue', + 'TracedQueueOptions', + 'TracedResult', + 'TracedWorkerConfig', + 'TraceQueryFilter', + 'traceQueryFilterSchema', + 'traceQueue', + 'TracerProviderPort', + 'traceSchedulerTick', + 'TraceState', + 'validateMetricQueryFilter', + 'validateResourceQueryFilter', + 'validateTelemetryConfig', + 'validateTraceQueryFilter', + 'withChildSpan', + 'WorkerMetricInstruments', + 'WorkerMetricValues', + ], + }], + }, }, ]; @@ -247,6 +310,7 @@ export function parseDocContent( const docSymbols = new Set(); const lines = docContent.split('\n'); let insideExportsTable = false; + let insideSymbolsTable = false; for (const line of lines) { const trimmed = line.trim(); @@ -266,18 +330,28 @@ export function parseDocContent( } } - if (line.startsWith('|') && !line.includes('---') && !line.includes('Symbol |')) { - const parts = line.split('|').map((p) => p.trim()).filter(Boolean); - if (parts.length >= 1) { - const firstCol = parts[0]; - const matches = firstCol.matchAll(/`([^`]+)`/g); - for (const m of matches) { - const val = m[1]; - if (val.includes('@netscript/') || val.startsWith('.')) continue; - const syms = val.split(/[\/,\|]/).map((s) => s.trim()).filter(Boolean); - for (const s of syms) { - docSymbols.add(s); - } + if (!trimmed.startsWith('|')) { + insideSymbolsTable = false; + continue; + } + + const tableCells = trimmed.slice(1, -1).split('|').map((cell) => cell.trim()); + if (tableCells[0] === 'Symbol') { + insideSymbolsTable = true; + continue; + } + if (!insideSymbolsTable || tableCells.every((cell) => /^:?-{3,}:?$/.test(cell))) { + continue; + } + + for (const match of tableCells[0].matchAll(/`([^`]+)`/g)) { + const groupedSymbols = match[1].split(/[\/,|]/).map((symbol) => symbol.trim()).filter( + Boolean, + ); + for (const displaySymbol of groupedSymbols) { + const normalizedSymbol = displaySymbol.replace(/<[^<>]*>$/, '').trim(); + if (normalizedSymbol && !normalizedSymbol.includes('@netscript/')) { + docSymbols.add(normalizedSymbol); } } } @@ -287,8 +361,8 @@ export function parseDocContent( export function deriveExpectedExports( packageName: string, - exportsObj: any, - excludedExports: string[] = [], + exportsObj: unknown, + excludedExports: readonly string[] = [], ): Map { const expectedExports = new Map(); const excludedSet = new Set(excludedExports); @@ -297,19 +371,36 @@ export function deriveExpectedExports( if (!excludedSet.has('.')) { expectedExports.set(packageName, exportsObj); } - } else { - for (const [key, value] of Object.entries(exportsObj)) { - if (excludedSet.has(key)) continue; - const exportName = key === '.' ? packageName : `${packageName}/${key.slice(2)}`; - expectedExports.set( - exportName, - typeof value === 'string' ? value : (value as any).default || '', - ); - } + return expectedExports; + } + + if (!isExportsRecord(exportsObj)) { + throw new TypeError('Deno exports must be a string or a record'); + } + + for (const [key, value] of Object.entries(exportsObj)) { + if (excludedSet.has(key)) continue; + const exportName = key === '.' ? packageName : `${packageName}/${key.slice(2)}`; + expectedExports.set(exportName, resolveDenoExportPath(value)); } return expectedExports; } +function isExportsRecord(value: unknown): value is Readonly> { + return typeof value === 'object' && value !== null && !Array.isArray(value); +} + +function isDenoExportTarget(value: unknown): value is DenoExportTarget { + if (typeof value === 'string') return true; + if (!isExportsRecord(value)) return false; + return value.default === undefined || typeof value.default === 'string'; +} + +function resolveDenoExportPath(value: unknown): string { + if (!isDenoExportTarget(value)) return ''; + return typeof value === 'string' ? value : value.default || ''; +} + export function checkExportsDrift( pkgName: string, docPath: string, @@ -347,10 +438,12 @@ export function checkSymbolsDrift( docPath: string, expectedSymbols: Set, docSymbols: Set, + omittedSymbols: ReadonlySet = new Set(), + documentedNonExports: ReadonlySet = new Set(), ): string[] { const errors: string[] = []; for (const sym of expectedSymbols) { - if (!docSymbols.has(sym)) { + if (!omittedSymbols.has(sym) && !docSymbols.has(sym)) { errors.push( `Symbol Drift Error [${pkgName}]: Document at ${docPath} OMITS exported symbol '${sym}'`, ); @@ -364,7 +457,7 @@ export function checkSymbolsDrift( ) continue; if (sym.includes('/') || sym.startsWith('@')) continue; - if (!expectedSymbols.has(sym)) { + if (!expectedSymbols.has(sym) && !documentedNonExports.has(sym)) { errors.push( `Symbol Drift Error [${pkgName}]: Document at ${docPath} INVENTS nonexistent/unexported symbol '${sym}'`, ); @@ -373,11 +466,215 @@ export function checkSymbolsDrift( return errors; } -async function checkDrift() { +interface ValidatedMapping { + mappings: PackageMapping[]; + errors: string[]; +} + +function isRecord(value: unknown): value is Record { + return typeof value === 'object' && value !== null && !Array.isArray(value); +} + +function isNonemptyString(value: unknown): value is string { + return typeof value === 'string' && value.trim().length > 0; +} + +function parseOmissionGroups( + value: unknown, + field: string, + errors: string[], +): SymbolOmissionGroup[] { + if (value === undefined) return []; + if (!Array.isArray(value)) { + errors.push(`${field} must be an array when present`); + return []; + } + + const groups: SymbolOmissionGroup[] = []; + for (const [index, candidate] of value.entries()) { + const path = `${field}[${index}]`; + if (!isRecord(candidate)) { + errors.push(`${path} must be an object`); + continue; + } + if (!isNonemptyString(candidate.reason)) { + errors.push(`${path}.reason must be a nonempty string`); + } + if (!Array.isArray(candidate.symbols) || candidate.symbols.length === 0) { + errors.push(`${path}.symbols must be a nonempty array`); + continue; + } + const symbols: string[] = []; + for (const [symbolIndex, symbol] of candidate.symbols.entries()) { + if (!isNonemptyString(symbol)) { + errors.push(`${path}.symbols[${symbolIndex}] must be a nonempty string`); + } else { + symbols.push(symbol); + } + } + if (isNonemptyString(candidate.reason) && symbols.length === candidate.symbols.length) { + groups.push({ reason: candidate.reason.trim(), symbols }); + } + } + return groups; +} + +export function validateAuthoritativeMapping(mapping: unknown): ValidatedMapping { + const errors: string[] = []; + const mappings: PackageMapping[] = []; + if (!Array.isArray(mapping) || mapping.length === 0) { + return { mappings, errors: ['Authoritative mapping must be a nonempty array'] }; + } + + const names = new Set(); + for (const [index, candidate] of mapping.entries()) { + const path = `mapping[${index}]`; + if (!isRecord(candidate)) { + errors.push(`${path} must be an object`); + continue; + } + + const requiredFields = ['name', 'packagePath', 'docPath', 'packageName'] as const; + let fieldsValid = true; + for (const field of requiredFields) { + if (!isNonemptyString(candidate[field])) { + errors.push(`${path}.${field} must be a nonempty string`); + fieldsValid = false; + } + } + + if (isNonemptyString(candidate.name)) { + if (names.has(candidate.name)) errors.push(`${path}.name duplicates '${candidate.name}'`); + names.add(candidate.name); + } + + let excludedExports: string[] | undefined; + if (candidate.excludedExports !== undefined) { + if ( + !Array.isArray(candidate.excludedExports) || + !candidate.excludedExports.every(isNonemptyString) + ) { + errors.push(`${path}.excludedExports must contain only nonempty strings`); + } else { + excludedExports = [...candidate.excludedExports]; + } + } + + if (!isRecord(candidate.symbolCoverage)) { + errors.push(`${path}.symbolCoverage must be an object`); + continue; + } + const coverage = candidate.symbolCoverage; + if (!isNonemptyString(coverage.reason)) { + errors.push(`${path}.symbolCoverage.reason must be a nonempty string`); + } + + let symbolCoverage: SymbolCoverage | undefined; + if (coverage.mode === 'complete') { + const omittedSymbols = parseOmissionGroups( + coverage.omittedSymbols, + `${path}.symbolCoverage.omittedSymbols`, + errors, + ); + const documentedNonExports = parseOmissionGroups( + coverage.documentedNonExports, + `${path}.symbolCoverage.documentedNonExports`, + errors, + ); + if (isNonemptyString(coverage.reason)) { + symbolCoverage = { + mode: 'complete', + reason: coverage.reason.trim(), + omittedSymbols, + documentedNonExports, + }; + } + } else if (coverage.mode === 'entrypoints-only') { + if (coverage.omittedSymbols !== undefined || coverage.documentedNonExports !== undefined) { + errors.push(`${path}.symbolCoverage entrypoints-only mode cannot define symbol groups`); + } + if (isNonemptyString(coverage.reason)) { + symbolCoverage = { mode: 'entrypoints-only', reason: coverage.reason.trim() }; + } + } else { + errors.push(`${path}.symbolCoverage.mode is unknown: '${String(coverage.mode)}'`); + } + + if (fieldsValid && symbolCoverage) { + mappings.push({ + name: String(candidate.name), + packagePath: String(candidate.packagePath), + docPath: String(candidate.docPath), + packageName: String(candidate.packageName), + excludedExports, + symbolCoverage, + }); + } + } + + return { mappings, errors }; +} + +function printCoverageReport(mapping: unknown): void { + if (!Array.isArray(mapping) || mapping.length === 0) { + console.log('Coverage [mapping]: mode=; reason=; omission-groups=0'); + return; + } + for (const [index, candidate] of mapping.entries()) { + const record = isRecord(candidate) ? candidate : {}; + const coverage = isRecord(record.symbolCoverage) ? record.symbolCoverage : {}; + const name = isNonemptyString(record.name) ? record.name : `#${index}`; + const mode = typeof coverage.mode === 'string' ? coverage.mode : ''; + const reason = isNonemptyString(coverage.reason) ? coverage.reason.trim() : ''; + const omittedCount = Array.isArray(coverage.omittedSymbols) + ? coverage.omittedSymbols.length + : 0; + const nonExportCount = Array.isArray(coverage.documentedNonExports) + ? coverage.documentedNonExports.length + : 0; + console.log( + `Coverage [${name}]: mode=${mode}; reason=${JSON.stringify(reason)}; ` + + `omitted-symbol-groups=${omittedCount}; documented-non-export-groups=${nonExportCount}`, + ); + } +} + +function flattenGroups( + pkgName: string, + kind: string, + groups: readonly SymbolOmissionGroup[], +): { symbols: Set; errors: string[] } { + const symbols = new Set(); + const errors: string[] = []; + for (const group of groups) { + const sorted = [...group.symbols].sort((a, b) => a.localeCompare(b)); + if (group.symbols.some((symbol, index) => symbol !== sorted[index])) { + errors.push(`Coverage Policy Error [${pkgName}]: ${kind} symbols must be sorted`); + } + for (const symbol of group.symbols) { + if (symbols.has(symbol)) { + errors.push( + `Coverage Policy Error [${pkgName}]: ${kind} repeats symbol '${symbol}'`, + ); + } + symbols.add(symbol); + } + } + return { symbols, errors }; +} + +export async function checkDrift(mapping: unknown): Promise { + printCoverageReport(mapping); + const validated = validateAuthoritativeMapping(mapping); + if (validated.errors.length > 0) { + for (const error of validated.errors) console.error(`Coverage Policy Error: ${error}`); + return 1; + } + let hasErrors = false; const root = Deno.cwd(); - for (const pkg of AUTHORITATIVE_MAPPING) { + for (const pkg of validated.mappings) { const denoJsonPath = join(root, pkg.packagePath, 'deno.json'); const docPath = join(root, pkg.docPath); @@ -416,32 +713,58 @@ async function checkDrift() { } // Run deno doc to collect all actually exported symbols from this package's entrypoints - if (pkg.checkSymbols) { + if (pkg.symbolCoverage.mode === 'complete') { const expectedSymbols = new Set(); - const excludedSymbolsSet = new Set(pkg.excludedSymbols ?? []); + const omitted = flattenGroups( + pkg.name, + 'omitted-symbol group', + pkg.symbolCoverage.omittedSymbols ?? [], + ); + const documentedNonExports = flattenGroups( + pkg.name, + 'documented-non-export group', + pkg.symbolCoverage.documentedNonExports ?? [], + ); + for (const error of [...omitted.errors, ...documentedNonExports.errors]) { + console.error(error); + hasErrors = true; + } + for (const symbol of omitted.symbols) { + if (documentedNonExports.symbols.has(symbol)) { + console.error( + `Coverage Policy Error [${pkg.name}]: symbol '${symbol}' is both omitted and documented as a non-export`, + ); + hasErrors = true; + } + } for (const [exportName, relativePath] of expectedExports.entries()) { - const fullEntrypointPath = join(pkg.packagePath, relativePath); + const fullEntrypointPath = join(root, pkg.packagePath, relativePath); try { const cmd = new Deno.Command('deno', { - args: ['doc', '--json', fullEntrypointPath], + args: ['doc', '--no-lock', '--json', fullEntrypointPath], }); - const { stdout, code } = await cmd.output(); + const { stdout, stderr, code } = await cmd.output(); if (code !== 0) { console.error( `Failed to run deno doc --json for ${exportName} at ${fullEntrypointPath}`, ); + console.error(new TextDecoder().decode(stderr)); hasErrors = true; continue; } const docJson = JSON.parse(new TextDecoder().decode(stdout)); const fileUrl = Object.keys(docJson.nodes)[0]; - if (fileUrl && docJson.nodes[fileUrl]?.symbols) { - for (const sym of docJson.nodes[fileUrl].symbols) { - if (sym.name && !excludedSymbolsSet.has(sym.name)) { - expectedSymbols.add(sym.name); - } - } + const symbols = fileUrl ? docJson.nodes[fileUrl]?.symbols : undefined; + if (!Array.isArray(symbols) || symbols.length === 0) { + console.error( + `Empty symbol selection from deno doc --json for ${exportName} at ${fullEntrypointPath}`, + ); + hasErrors = true; + continue; + } + for (const sym of symbols) { + if (sym.name) expectedSymbols.add(sym.name); } } catch (err) { console.error(`Error processing deno doc for ${exportName}:`, err); @@ -449,7 +772,41 @@ async function checkDrift() { } } - const symbolsErrors = checkSymbolsDrift(pkg.name, pkg.docPath, expectedSymbols, docSymbols); + for (const symbol of omitted.symbols) { + if (!expectedSymbols.has(symbol)) { + console.error( + `Coverage Policy Error [${pkg.name}]: omitted symbol '${symbol}' is not exported`, + ); + hasErrors = true; + } else if (docSymbols.has(symbol)) { + console.error( + `Coverage Policy Error [${pkg.name}]: omitted symbol '${symbol}' is documented and no longer omitted`, + ); + hasErrors = true; + } + } + for (const symbol of documentedNonExports.symbols) { + if (expectedSymbols.has(symbol)) { + console.error( + `Coverage Policy Error [${pkg.name}]: documented non-export '${symbol}' is now exported`, + ); + hasErrors = true; + } else if (!docSymbols.has(symbol)) { + console.error( + `Coverage Policy Error [${pkg.name}]: documented non-export '${symbol}' is absent from the reference`, + ); + hasErrors = true; + } + } + + const symbolsErrors = checkSymbolsDrift( + pkg.name, + pkg.docPath, + expectedSymbols, + docSymbols, + omitted.symbols, + documentedNonExports.symbols, + ); for (const err of symbolsErrors) { console.error(err); hasErrors = true; @@ -458,12 +815,12 @@ async function checkDrift() { } if (hasErrors) { - Deno.exit(1); - } else { - console.log('Exports & Symbols drift check: PASS'); + return 1; } + console.log('Exports & Symbols drift check: PASS'); + return 0; } if (import.meta.main) { - await checkDrift(); + Deno.exit(await checkDrift(AUTHORITATIVE_MAPPING)); } diff --git a/.llm/tools/docs/check-exports-drift_test.ts b/.llm/tools/docs/check-exports-drift_test.ts index ac98480843..7b65f20122 100644 --- a/.llm/tools/docs/check-exports-drift_test.ts +++ b/.llm/tools/docs/check-exports-drift_test.ts @@ -1,7 +1,10 @@ -import { assertEquals } from '@std/assert'; +import { assertEquals, assertStringIncludes, assertThrows } from '@std/assert'; +import { join, relative } from '@std/path'; import { + checkDrift, checkExportsDrift, deriveExpectedExports, + type PackageMapping, parseDocContent, } from './check-exports-drift.ts'; @@ -62,3 +65,189 @@ Deno.test('drift checker negative fixture validation', () => { ); assertEquals(errorsDocumented.length, 0); }); + +Deno.test('derives a root export from the string exports form', () => { + assertEquals( + deriveExpectedExports('@netscript/fixture', './mod.ts'), + new Map([['@netscript/fixture', './mod.ts']]), + ); +}); + +Deno.test('derives record exports from string and default targets', () => { + assertEquals( + deriveExpectedExports('@netscript/fixture', { + '.': './mod.ts', + './conditional': { default: './conditional.ts' }, + }), + new Map([ + ['@netscript/fixture', './mod.ts'], + ['@netscript/fixture/conditional', './conditional.ts'], + ]), + ); +}); + +Deno.test('uses an empty path when a conditional export has no default', () => { + assertEquals( + deriveExpectedExports('@netscript/fixture', { './conditional': {} }), + new Map([['@netscript/fixture/conditional', '']]), + ); +}); + +Deno.test('preserves the empty fallback for a falsy default', () => { + assertEquals( + deriveExpectedExports('@netscript/fixture', { './conditional': { default: '' } }), + new Map([['@netscript/fixture/conditional', '']]), + ); + assertEquals( + deriveExpectedExports('@netscript/fixture', { './malformed': { default: false } }), + new Map([['@netscript/fixture/malformed', '']]), + ); +}); + +Deno.test('uses an empty path for a null export target instead of throwing', () => { + assertEquals( + deriveExpectedExports('@netscript/fixture', { './malformed': null }), + new Map([['@netscript/fixture/malformed', '']]), + ); +}); + +Deno.test('refuses a malformed top-level exports value', () => { + assertThrows( + () => deriveExpectedExports('@netscript/fixture', 42), + TypeError, + 'Deno exports must be a string or a record', + ); +}); + +Deno.test('symbol parsing is table-aware and normalizes display generics', () => { + const { docSymbols } = parseDocContent(` +| Symbol | Kind | +| --- | --- | +| \`DataGridColumn\` / \`Alpha\` | types | + +| Prop | Type | +| --- | --- | +| \`columns\` | array | + +| Field | Type | +| --- | --- | +| \`key\` | string | +`); + assertEquals([...docSymbols].sort(), ['Alpha', 'DataGridColumn']); +}); + +interface CapturedCheck { + code: number; + errors: string[]; +} + +async function checkDriftCapturingErrors(mapping: unknown): Promise { + const originalError = console.error; + const errors: string[] = []; + console.error = (...args: unknown[]) => { + errors.push(args.map((arg) => String(arg)).join(' ')); + }; + try { + return { code: await checkDrift(mapping), errors }; + } finally { + console.error = originalError; + } +} + +function assertSingleRefusal(result: CapturedCheck, expectedCause: string): void { + assertEquals(result.code, 1); + assertEquals(result.errors.length, 1); + assertStringIncludes(result.errors[0], expectedCause); + assertEquals(result.errors[0].includes('Failed to read'), false); +} + +function withCoverage(mapping: readonly PackageMapping[], symbolCoverage: unknown): unknown { + return mapping.map((candidate) => ({ ...candidate, symbolCoverage })); +} + +async function withSymbolFixture( + documentedSymbols: readonly string[], + run: (mapping: readonly PackageMapping[]) => Promise, +): Promise { + const scratchRoot = join(Deno.cwd(), '.llm/tmp'); + await Deno.mkdir(scratchRoot, { recursive: true }); + const fixtureRoot = await Deno.makeTempDir({ dir: scratchRoot, prefix: 'exports-drift-test-' }); + const packageRoot = join(fixtureRoot, 'pkg'); + const docPath = join(fixtureRoot, 'reference.md'); + await Deno.mkdir(packageRoot); + try { + await Deno.writeTextFile( + join(packageRoot, 'deno.json'), + JSON.stringify({ exports: { '.': './mod.ts' } }), + ); + await Deno.writeTextFile( + join(packageRoot, 'mod.ts'), + '/** Fixture export. */\nexport const actualSymbol: string = "actual";\n', + ); + const symbolRows = documentedSymbols.map((symbol) => + `| \`${symbol}\` | fixture | Fixture symbol. |` + ).join('\n'); + await Deno.writeTextFile( + docPath, + `# Fixture\n\n## Exports\n\n| Export | Entrypoint | Purpose |\n| --- | --- | --- |\n| @netscript/fixture | ./mod.ts | Fixture entrypoint. |\n\n---\n\n## Symbols\n\n| Symbol | Kind | Description |\n| --- | --- | --- |\n${symbolRows}\n`, + ); + + const relativeRoot = relative(Deno.cwd(), fixtureRoot); + await run([{ + name: 'fixture', + packagePath: join(relativeRoot, 'pkg'), + docPath: join(relativeRoot, 'reference.md'), + packageName: '@netscript/fixture', + excludedExports: [], + symbolCoverage: { + mode: 'complete', + reason: 'Fixture requires complete symbol coverage.', + }, + }]); + } finally { + await Deno.remove(fixtureRoot, { recursive: true }); + } +} + +Deno.test('drift checker refuses an invented symbol through the injectable seam', async () => { + await withSymbolFixture(['actualSymbol', 'inventedSymbol'], async (mapping) => { + const result = await checkDriftCapturingErrors(mapping); + assertSingleRefusal( + result, + "INVENTS nonexistent/unexported symbol 'inventedSymbol'", + ); + }); +}); + +Deno.test('drift checker refuses an omitted symbol through the injectable seam', async () => { + await withSymbolFixture([], async (mapping) => { + const result = await checkDriftCapturingErrors(mapping); + assertSingleRefusal(result, "OMITS exported symbol 'actualSymbol'"); + }); +}); + +Deno.test('drift checker refuses an empty or malformed coverage reason', async () => { + await withSymbolFixture(['actualSymbol'], async (mapping) => { + for (const reason of [' ', 42]) { + const result = await checkDriftCapturingErrors( + withCoverage(mapping, { mode: 'entrypoints-only', reason }), + ); + assertSingleRefusal( + result, + 'mapping[0].symbolCoverage.reason must be a nonempty string', + ); + } + }); +}); + +Deno.test('drift checker refuses an unknown coverage mode', async () => { + await withSymbolFixture(['actualSymbol'], async (mapping) => { + const result = await checkDriftCapturingErrors( + withCoverage(mapping, { mode: 'unknown', reason: 'fixture policy' }), + ); + assertSingleRefusal( + result, + "mapping[0].symbolCoverage.mode is unknown: 'unknown'", + ); + }); +}); diff --git a/deno.json b/deno.json index fc2ccab039..1be85dbb4c 100644 --- a/deno.json +++ b/deno.json @@ -82,6 +82,7 @@ "agentic:rollout-canary": "deno run --no-lock --allow-read --allow-write --allow-run --allow-env .llm/tools/agentic/runtime/cli/rollout-canary-cli.ts", "design:sync": "deno run --no-lock --allow-read --allow-write --allow-run --allow-env tools/design-sync/mod.ts", "docs:links": "deno run --no-lock --allow-read .llm/tools/validation/check-internal-doc-links.ts --pretty", + "docs:exports-drift": "deno run --no-lock --allow-read --allow-run=deno .llm/tools/docs/check-exports-drift.ts", "docs:accuracy": "deno run --no-lock --allow-read --allow-env --allow-run=deno .llm/tools/docs/check-accuracy-and-discoverability.ts", "docs:snippets": "deno run --allow-read --allow-write --allow-run .llm/tools/docs/check-snippets.ts", "docs:snippets:test": "deno test --allow-read --allow-write --allow-run .llm/tools/docs/snippet-extractor_test.ts .llm/tools/docs/snippet-compiler_test.ts .llm/tools/docs/pages-workflow_test.ts", diff --git a/docs/site/reference/fresh-ui/index.md b/docs/site/reference/fresh-ui/index.md index 78a1ad6c68..171df0f6dd 100644 --- a/docs/site/reference/fresh-ui/index.md +++ b/docs/site/reference/fresh-ui/index.md @@ -1,41 +1,44 @@ --- layout: layouts/base.vto -title: "@netscript/fresh-ui" +title: '@netscript/fresh-ui' --- # `@netscript/fresh-ui` -Fresh UI registry seams and interactive foundations for NetScript. This page is written against -the package public surface reported by `deno doc`. For the full index of packages and -plugins return to the [reference overview](/reference/). +Fresh UI registry seams and interactive foundations for NetScript. This page is written against the +package public surface reported by `deno doc`. For the full index of packages and plugins return to +the [reference overview](/reference/). The root entrypoint (`@netscript/fresh-ui`) intentionally stays small: copy-based registry -components and islands remain on workspace-local deep paths so applications can own and evolve -them after copy. The root module exposes only the supported helper utilities that are safe to -consume as package runtime dependencies. Five sub-path exports carry the package runtime seams: +components and islands remain on workspace-local deep paths so applications can own and evolve them +after copy. The root module exposes only the supported helper utilities that are safe to consume as +package runtime dependencies. Five sub-path exports carry the package runtime seams: -- [`@netscript/fresh-ui/ai/render-ui`](#sub-path-exports) — safe, bounded generative-UI renderer for validated tool payloads. +- [`@netscript/fresh-ui/ai/render-ui`](#sub-path-exports) — safe, bounded generative-UI renderer for + validated tool payloads. - [`@netscript/fresh-ui/desktop`](#sub-path-exports) — browser-safe native desktop chrome helpers. -- [`@netscript/fresh-ui/interactive`](#sub-path-exports) — package-owned interactive namespaces for stateful, accessible primitives. +- [`@netscript/fresh-ui/interactive`](#sub-path-exports) — package-owned interactive namespaces for + stateful, accessible primitives. - [`@netscript/fresh-ui/primitives`](#sub-path-exports) — L0 platform-contract primitives. -- [`@netscript/fresh-ui/registry`](#sub-path-exports) — embedded copy-registry manifest and file content. +- [`@netscript/fresh-ui/registry`](#sub-path-exports) — embedded copy-registry manifest and file + content. ## Class-name helper -| Symbol | Signature | Description | -| --- | --- | --- | -| `cn` | `function cn(...inputs: ClassValue[]): string` | Combines clsx and tailwind-merge for optimal class merging. | +| Symbol | Signature | Description | +| ------ | ---------------------------------------------- | ----------------------------------------------------------- | +| `cn` | `function cn(...inputs: ClassValue[]): string` | Combines clsx and tailwind-merge for optimal class merging. | ## Icon primitive `Icon` is a first-class stroke-SVG icon primitive, re-exported at the package root alongside its supporting types from `@netscript/fresh-ui/primitives`. -| Symbol | Kind | Description | -| --- | --- | --- | -| `Icon` | component | Renders a named stroke-SVG icon (`IconName`) at a given `IconSize`, forwarding standard SVG attributes. | -| `ICON_PATHS` | const | The stroke-path lookup table backing every `IconName`. | -| `IconName` / `IconSize` / `IconProps` / `IconSvgAttributes` / `IconSvgAttributeValue` | type aliases / interface | Supporting types for the `Icon` primitive. | +| Symbol | Kind | Description | +| ------------------------------------------------------------------------------------- | ------------------------ | ------------------------------------------------------------------------------------------------------- | +| `Icon` | component | Renders a named stroke-SVG icon (`IconName`) at a given `IconSize`, forwarding standard SVG attributes. | +| `ICON_PATHS` | const | The stroke-path lookup table backing every `IconName`. | +| `IconName` / `IconSize` / `IconProps` / `IconSvgAttributes` / `IconSvgAttributeValue` | type aliases / interface | Supporting types for the `Icon` primitive. | ## DataGrid @@ -47,23 +50,23 @@ a `rows` contract, and supports plain, button, and Fresh client-navigation rows. ### DataGrid props -| Prop | Type | Description | -| --- | --- | --- | -| `columns` | `readonly DataGridColumn[]` | Ordered column definitions (required). | -| `rows` | `readonly DataGridRow[]` | Ordered row definitions (required). | -| `label` | `string` | Accessible label applied as `aria-label` on the grid region. | -| `class` | `string` | Additional class names appended to the `ns-data-grid` root. | -| `[attribute: string]` | `unknown` | Any further native attributes are forwarded to the grid root. | +| Prop | Type | Description | +| --------------------- | ------------------------------ | ------------------------------------------------------------- | +| `columns` | `readonly DataGridColumn[]` | Ordered column definitions (required). | +| `rows` | `readonly DataGridRow[]` | Ordered row definitions (required). | +| `label` | `string` | Accessible label applied as `aria-label` on the grid region. | +| `class` | `string` | Additional class names appended to the `ns-data-grid` root. | +| `[attribute: string]` | `unknown` | Any further native attributes are forwarded to the grid root. | ### `DataGridColumn` -| Field | Type | Description | -| --- | --- | --- | -| `key` | `string` | Property key used for fallback cell content and stable cell identity. | -| `header` | `string` | Visible column header text. | -| `width` | `string` | CSS grid track width, e.g. `2fr` or `minmax(0, 12rem)`. Defaults to `minmax(0, 1fr)`. | -| `cell` | `DataGridCellVariant` | Optional built-in cell treatment: `"strong"` (bold) or `"num"` (monospace, right-aligned). | -| `render` | `(row: T) => DataGridRenderable` | Optional per-column template receiving the row payload. | +| Field | Type | Description | +| -------- | -------------------------------- | ------------------------------------------------------------------------------------------ | +| `key` | `string` | Property key used for fallback cell content and stable cell identity. | +| `header` | `string` | Visible column header text. | +| `width` | `string` | CSS grid track width, e.g. `2fr` or `minmax(0, 12rem)`. Defaults to `minmax(0, 1fr)`. | +| `cell` | `DataGridCellVariant` | Optional built-in cell treatment: `"strong"` (bold) or `"num"` (monospace, right-aligned). | +| `render` | `(row: T) => DataGridRenderable` | Optional per-column template receiving the row payload. | ### `DataGridRow` @@ -71,25 +74,26 @@ Every row carries a stable `id`, a caller-owned `data: T` payload, and an option A row renders differently based on which navigation field is present — the three shapes are mutually exclusive (supply at most one of `onSelect` or `href`): -| Shape | Distinguishing field | Renders as | -| --- | --- | --- | -| Plain | neither `onSelect` nor `href` | a `role="row"` `
`. | -| Button | `onSelect: () => void` | a `role="row"` `