@piagent/platform 1.2.17 → 1.3.0-ie.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.gitattributes +1 -0
- package/CHANGELOG.md +242 -0
- package/README.md +15 -2
- package/README.vi.md +19 -0
- package/adapters/be-readonly-fe/profile.json +2 -0
- package/architecture/layers.json +16 -3
- package/benchmarks/capability-v1/alternatives/fullstack-search-contract/apps/web/src/search-view.js +14 -0
- package/benchmarks/capability-v1/alternatives/fullstack-search-contract/packages/shared/src/search-contract.js +8 -0
- package/benchmarks/capability-v1/alternatives/fullstack-search-contract/services/catalog/src/search.js +18 -0
- package/benchmarks/capability-v1/alternatives/resumable-migration-runner/packages/migration/src/plan.js +32 -0
- package/benchmarks/capability-v1/alternatives/resumable-migration-runner/packages/migration/src/runner.js +43 -0
- package/benchmarks/capability-v1/coverage.json +52 -0
- package/benchmarks/capability-v1/grade.mjs +433 -0
- package/benchmarks/capability-v1/project/README.md +5 -0
- package/benchmarks/capability-v1/project/apps/admin/src/rollout-view.js +3 -0
- package/benchmarks/capability-v1/project/apps/web/src/search-view.js +3 -0
- package/benchmarks/capability-v1/project/package.json +8 -0
- package/benchmarks/capability-v1/project/packages/api/src/feature-access.js +5 -0
- package/benchmarks/capability-v1/project/packages/lease/src/store.js +12 -0
- package/benchmarks/capability-v1/project/packages/lease/src/with-lease.js +4 -0
- package/benchmarks/capability-v1/project/packages/migration/src/plan.js +3 -0
- package/benchmarks/capability-v1/project/packages/migration/src/runner.js +4 -0
- package/benchmarks/capability-v1/project/packages/policy/src/rollout.js +7 -0
- package/benchmarks/capability-v1/project/packages/shared/src/search-contract.js +3 -0
- package/benchmarks/capability-v1/project/services/catalog/src/search.js +3 -0
- package/benchmarks/capability-v1/project/test/smoke.test.js +4 -0
- package/benchmarks/capability-v1/prompts/concurrent-lease-lifecycle.md +22 -0
- package/benchmarks/capability-v1/prompts/fullstack-search-contract.md +21 -0
- package/benchmarks/capability-v1/prompts/multi-package-rollout.md +24 -0
- package/benchmarks/capability-v1/prompts/resumable-migration-runner.md +28 -0
- package/benchmarks/capability-v1/references/concurrent-lease-lifecycle/packages/lease/src/store.js +27 -0
- package/benchmarks/capability-v1/references/concurrent-lease-lifecycle/packages/lease/src/with-lease.js +9 -0
- package/benchmarks/capability-v1/references/fullstack-search-contract/apps/web/src/search-view.js +9 -0
- package/benchmarks/capability-v1/references/fullstack-search-contract/packages/shared/src/search-contract.js +3 -0
- package/benchmarks/capability-v1/references/fullstack-search-contract/services/catalog/src/search.js +12 -0
- package/benchmarks/capability-v1/references/multi-package-rollout/apps/admin/src/rollout-view.js +6 -0
- package/benchmarks/capability-v1/references/multi-package-rollout/packages/api/src/feature-access.js +9 -0
- package/benchmarks/capability-v1/references/multi-package-rollout/packages/policy/src/rollout.js +29 -0
- package/benchmarks/capability-v1/references/resumable-migration-runner/packages/migration/src/plan.js +32 -0
- package/benchmarks/capability-v1/references/resumable-migration-runner/packages/migration/src/runner.js +18 -0
- package/benchmarks/capability-v1/rubric.json +60 -0
- package/benchmarks/capability-v1/suite.json +88 -0
- package/benchmarks/capability-v1/variant.mjs +48 -0
- package/benchmarks/e2-framework-v1/alternatives/hono-accessible-search/apps/web/src/search-app.js +20 -0
- package/benchmarks/e2-framework-v1/alternatives/hono-tenant-api/apps/api/src/tenant-app.js +27 -0
- package/benchmarks/e2-framework-v1/alternatives/sqlite-resumable-inventory/packages/migration/src/inventory.js +34 -0
- package/benchmarks/e2-framework-v1/alternatives/workspace-policy-rollout/apps/admin/src/summary.js +6 -0
- package/benchmarks/e2-framework-v1/alternatives/workspace-policy-rollout/packages/feature-api/src/evaluate.js +14 -0
- package/benchmarks/e2-framework-v1/alternatives/workspace-policy-rollout/packages/policy/src/rollout.js +18 -0
- package/benchmarks/e2-framework-v1/coverage.json +25 -0
- package/benchmarks/e2-framework-v1/grade.mjs +291 -0
- package/benchmarks/e2-framework-v1/project/README.md +5 -0
- package/benchmarks/e2-framework-v1/project/apps/admin/package.json +1 -0
- package/benchmarks/e2-framework-v1/project/apps/admin/src/summary.js +3 -0
- package/benchmarks/e2-framework-v1/project/apps/api/package.json +1 -0
- package/benchmarks/e2-framework-v1/project/apps/api/src/tenant-app.js +5 -0
- package/benchmarks/e2-framework-v1/project/apps/web/package.json +1 -0
- package/benchmarks/e2-framework-v1/project/apps/web/src/search-app.js +9 -0
- package/benchmarks/e2-framework-v1/project/package.json +9 -0
- package/benchmarks/e2-framework-v1/project/packages/feature-api/package.json +1 -0
- package/benchmarks/e2-framework-v1/project/packages/feature-api/src/evaluate.js +3 -0
- package/benchmarks/e2-framework-v1/project/packages/migration/package.json +1 -0
- package/benchmarks/e2-framework-v1/project/packages/migration/src/inventory.js +3 -0
- package/benchmarks/e2-framework-v1/project/packages/notifications/package.json +1 -0
- package/benchmarks/e2-framework-v1/project/packages/notifications/src/channel.js +3 -0
- package/benchmarks/e2-framework-v1/project/packages/policy/package.json +1 -0
- package/benchmarks/e2-framework-v1/project/packages/policy/src/rollout.js +7 -0
- package/benchmarks/e2-framework-v1/project/packages/shared/package.json +1 -0
- package/benchmarks/e2-framework-v1/project/packages/shared/src/identity.js +1 -0
- package/benchmarks/e2-framework-v1/project/packages/telemetry/package.json +1 -0
- package/benchmarks/e2-framework-v1/project/packages/telemetry/src/counter.js +3 -0
- package/benchmarks/e2-framework-v1/project/test/smoke.test.js +16 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/LICENSE +21 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/PIAGENT-PROVENANCE.json +10 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/aws-lambda/conninfo.js +24 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/aws-lambda/handler.js +364 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/aws-lambda/index.js +9 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/aws-lambda/types.js +0 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/bun/conninfo.js +27 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/bun/index.js +16 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/bun/serve-static.js +30 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/bun/server.js +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/bun/ssg.js +17 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/bun/websocket.js +73 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/cloudflare-pages/conninfo.js +9 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/cloudflare-pages/handler.js +67 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/cloudflare-pages/index.js +9 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/cloudflare-workers/conninfo.js +9 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/cloudflare-workers/index.js +9 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/cloudflare-workers/serve-static-module.js +8 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/cloudflare-workers/serve-static.js +22 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/cloudflare-workers/utils.js +35 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/cloudflare-workers/websocket.js +41 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/deno/conninfo.js +14 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/deno/deno.d.js +0 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/deno/index.js +12 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/deno/serve-static.js +40 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/deno/ssg.js +18 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/deno/websocket.js +32 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/lambda-edge/conninfo.js +9 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/lambda-edge/handler.js +96 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/lambda-edge/index.js +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/netlify/conninfo.js +9 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/netlify/handler.js +9 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/netlify/index.js +2 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/netlify/mod.js +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/service-worker/handler.js +20 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/service-worker/index.js +9 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/service-worker/types.js +0 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/vercel/conninfo.js +10 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/vercel/handler.js +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/adapter/vercel/index.js +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/aws-lambda/conninfo.js +46 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/aws-lambda/handler.js +395 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/aws-lambda/index.js +34 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/aws-lambda/types.js +15 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/bun/conninfo.js +49 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/bun/index.js +45 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/bun/serve-static.js +52 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/bun/server.js +27 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/bun/ssg.js +40 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/bun/websocket.js +98 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/cloudflare-pages/conninfo.js +31 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/cloudflare-pages/handler.js +91 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/cloudflare-pages/index.js +34 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/cloudflare-workers/conninfo.js +31 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/cloudflare-workers/index.js +33 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/cloudflare-workers/serve-static-module.js +30 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/cloudflare-workers/serve-static.js +44 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/cloudflare-workers/utils.js +57 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/cloudflare-workers/websocket.js +63 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/deno/conninfo.js +36 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/deno/deno.d.js +0 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/deno/index.js +38 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/deno/serve-static.js +62 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/deno/ssg.js +41 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/deno/websocket.js +54 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/lambda-edge/conninfo.js +31 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/lambda-edge/handler.js +130 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/lambda-edge/index.js +30 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/netlify/conninfo.js +31 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/netlify/handler.js +31 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/netlify/index.js +21 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/netlify/mod.js +30 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/service-worker/handler.js +42 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/service-worker/index.js +32 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/service-worker/types.js +15 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/vercel/conninfo.js +32 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/vercel/handler.js +29 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/adapter/vercel/index.js +30 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/client/client.js +204 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/client/fetch-result-please.js +85 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/client/index.js +32 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/client/types.js +15 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/client/utils.js +105 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/compose.js +68 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/context.js +450 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/accepts/accepts.js +43 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/accepts/index.js +27 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/adapter/index.js +81 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/conninfo/index.js +15 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/conninfo/types.js +15 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/cookie/index.js +130 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/css/common.js +273 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/css/index.js +157 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/dev/index.js +79 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/factory/index.js +54 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/html/index.js +64 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/proxy/index.js +115 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/route/index.js +71 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/ssg/index.js +43 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/ssg/middleware.js +73 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/ssg/plugins.js +70 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/ssg/ssg.js +320 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/ssg/utils.js +93 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/streaming/index.js +35 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/streaming/sse.js +91 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/streaming/stream.js +56 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/streaming/text.js +34 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/streaming/utils.js +35 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/testing/index.js +33 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/helper/websocket/index.js +81 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/hono-base.js +406 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/hono.js +43 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/http-exception.js +57 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/index.js +30 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/base.js +378 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/children.js +44 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/components.js +221 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/constants.js +42 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/context.js +188 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/dom/client.js +76 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/dom/components.js +55 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/dom/context.js +71 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/dom/css.js +168 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/dom/hooks/index.js +74 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/dom/index.js +181 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/dom/intrinsic-element/components.js +399 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/dom/jsx-dev-runtime.js +52 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/dom/jsx-runtime.js +32 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/dom/render.js +641 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/dom/server.js +67 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/dom/utils.js +32 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/hooks/index.js +373 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/index.js +138 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/intrinsic-element/common.js +50 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/intrinsic-element/components.js +189 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/intrinsic-elements.js +15 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/jsx-dev-runtime.js +41 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/jsx-runtime.js +71 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/streaming.js +179 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/types.js +15 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/jsx/utils.js +200 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/basic-auth/index.js +88 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/bearer-auth/index.js +114 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/body-limit/index.js +75 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/cache/index.js +219 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/combine/index.js +101 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/compress/index.js +97 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/context-storage/index.js +47 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/cors/index.js +106 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/csrf/index.js +77 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/etag/digest.js +55 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/etag/index.js +99 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/ip-restriction/index.js +176 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/jsx-renderer/index.js +82 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/jwk/index.js +27 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/jwk/jwk.js +139 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/jwt/index.js +38 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/jwt/jwt.js +145 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/language/index.js +35 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/language/language.js +203 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/logger/index.js +72 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/method-not-allowed/index.js +90 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/method-override/index.js +106 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/powered-by/index.js +32 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/pretty-json/index.js +37 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/request-id/index.js +27 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/request-id/request-id.js +43 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/secure-headers/index.js +29 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/secure-headers/permissions-policy.js +15 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/secure-headers/secure-headers.js +195 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/serve-static/index.js +99 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/serve-static/path.js +40 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/timeout/index.js +47 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/timing/index.js +35 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/timing/timing.js +130 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/middleware/trailing-slash/index.js +62 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/package.json +3 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/preset/quick.js +38 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/preset/tiny.js +34 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/request/constants.js +27 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/request.js +342 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/router/linear-router/index.js +27 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/router/linear-router/router.js +140 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/router/pattern-router/index.js +27 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/router/pattern-router/router.js +70 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/router/reg-exp-router/index.js +34 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/router/reg-exp-router/matcher.js +48 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/router/reg-exp-router/node.js +133 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/router/reg-exp-router/prepared-router.js +166 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/router/reg-exp-router/router.js +187 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/router/reg-exp-router/trie.js +89 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/router/smart-router/index.js +27 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/router/smart-router/router.js +80 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/router/trie-router/index.js +27 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/router/trie-router/node.js +210 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/router/trie-router/router.js +48 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/router.js +40 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/types.js +28 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/accept.js +245 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/basic-auth.js +45 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/body.js +111 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/buffer.js +103 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/color.js +48 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/compress.js +27 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/concurrent.js +61 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/constants.js +27 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/cookie.js +199 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/crypto.js +69 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/encode.js +54 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/filepath.js +58 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/handler.js +36 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/headers.js +15 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/html.js +150 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/http-status.js +15 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/ipaddr.js +318 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/jwt/index.js +28 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/jwt/jwa.js +42 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/jwt/jws.js +215 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/jwt/jwt.js +219 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/jwt/types.js +161 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/jwt/utf8.js +30 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/mime.js +106 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/stream.js +106 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/types.js +15 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/utils/url.js +256 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/validator/index.js +27 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/validator/utils.js +15 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/cjs/validator/validator.js +108 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/client/client.js +189 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/client/fetch-result-please.js +62 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/client/index.js +8 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/client/types.js +0 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/client/utils.js +76 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/compose.js +46 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/context.js +427 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/accepts/accepts.js +20 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/accepts/index.js +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/adapter/index.js +56 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/conninfo/index.js +0 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/conninfo/types.js +0 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/cookie/index.js +102 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/css/common.js +236 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/css/index.js +140 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/dev/index.js +55 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/factory/index.js +30 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/html/index.js +41 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/proxy/index.js +93 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/route/index.js +46 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/ssg/index.js +19 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/ssg/middleware.js +45 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/ssg/plugins.js +47 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/ssg/ssg.js +297 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/ssg/utils.js +67 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/streaming/index.js +10 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/streaming/sse.js +68 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/streaming/stream.js +34 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/streaming/text.js +12 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/streaming/utils.js +13 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/testing/index.js +11 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/helper/websocket/index.js +57 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/hono-base.js +384 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/hono.js +21 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/http-exception.js +35 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/index.js +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/base.js +346 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/children.js +21 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/components.js +198 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/constants.js +15 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/context.js +162 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/dom/client.js +53 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/dom/components.js +32 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/dom/context.js +48 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/dom/css.js +150 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/dom/hooks/index.js +48 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/dom/index.js +142 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/dom/intrinsic-element/components.js +374 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/dom/jsx-dev-runtime.js +19 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/dom/jsx-runtime.js +8 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/dom/render.js +617 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/dom/server.js +33 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/dom/utils.js +10 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/hooks/index.js +331 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/index.js +103 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/intrinsic-element/common.js +24 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/intrinsic-element/components.js +165 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/intrinsic-elements.js +0 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/jsx-dev-runtime.js +18 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/jsx-runtime.js +44 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/streaming.js +155 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/types.js +0 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/jsx/utils.js +175 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/basic-auth/index.js +66 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/bearer-auth/index.js +92 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/body-limit/index.js +53 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/cache/index.js +197 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/combine/index.js +77 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/compress/index.js +74 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/context-storage/index.js +23 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/cors/index.js +84 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/csrf/index.js +55 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/etag/digest.js +33 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/etag/index.js +76 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/ip-restriction/index.js +162 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/jsx-renderer/index.js +58 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/jwk/index.js +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/jwk/jwk.js +117 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/jwt/index.js +11 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/jwt/jwt.js +119 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/language/index.js +15 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/language/language.js +172 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/logger/index.js +44 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/method-not-allowed/index.js +68 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/method-override/index.js +84 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/powered-by/index.js +10 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/pretty-json/index.js +15 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/request-id/index.js +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/request-id/request-id.js +21 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/secure-headers/index.js +6 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/secure-headers/permissions-policy.js +0 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/secure-headers/secure-headers.js +172 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/serve-static/index.js +77 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/serve-static/path.js +18 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/timeout/index.js +25 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/timing/index.js +9 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/timing/timing.js +104 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/middleware/trailing-slash/index.js +39 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/preset/quick.js +16 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/preset/tiny.js +12 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/request/constants.js +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/request.js +319 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/router/linear-router/index.js +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/router/linear-router/router.js +118 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/router/pattern-router/index.js +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/router/pattern-router/router.js +48 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/router/reg-exp-router/index.js +9 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/router/reg-exp-router/matcher.js +25 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/router/reg-exp-router/node.js +110 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/router/reg-exp-router/prepared-router.js +142 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/router/reg-exp-router/router.js +169 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/router/reg-exp-router/trie.js +67 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/router/smart-router/index.js +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/router/smart-router/router.js +58 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/router/trie-router/index.js +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/router/trie-router/node.js +188 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/router/trie-router/router.js +26 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/router.js +14 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/aws-lambda/conninfo.d.ts +27 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/aws-lambda/handler.d.ts +184 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/aws-lambda/index.d.ts +8 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/aws-lambda/types.d.ts +153 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/bun/conninfo.d.ts +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/bun/index.d.ts +10 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/bun/serve-static.d.ts +3 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/bun/server.d.ts +12 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/bun/ssg.d.ts +13 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/bun/websocket.d.ts +39 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/cloudflare-pages/conninfo.d.ts +21 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/cloudflare-pages/handler.d.ts +33 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/cloudflare-pages/index.d.ts +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/cloudflare-workers/conninfo.d.ts +2 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/cloudflare-workers/index.d.ts +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/cloudflare-workers/serve-static-module.d.ts +4 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/cloudflare-workers/serve-static.d.ts +16 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/cloudflare-workers/utils.d.ts +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/cloudflare-workers/websocket.d.ts +2 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/deno/conninfo.d.ts +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/deno/index.d.ts +8 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/deno/serve-static.d.ts +3 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/deno/ssg.d.ts +13 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/deno/websocket.d.ts +2 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/lambda-edge/conninfo.d.ts +2 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/lambda-edge/handler.d.ts +87 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/lambda-edge/index.d.ts +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/netlify/conninfo.d.ts +21 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/netlify/handler.d.ts +2 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/netlify/index.d.ts +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/netlify/mod.d.ts +2 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/service-worker/handler.d.ts +16 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/service-worker/index.d.ts +28 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/service-worker/types.d.ts +12 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/vercel/conninfo.d.ts +2 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/vercel/handler.d.ts +2 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/adapter/vercel/index.d.ts +6 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/client/client.d.ts +4 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/client/fetch-result-please.d.ts +35 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/client/index.d.ts +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/client/types.d.ts +229 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/client/utils.d.ts +18 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/compose.d.ts +14 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/context.d.ts +455 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/accepts/accepts.d.ts +30 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/accepts/index.d.ts +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/adapter/index.d.ts +12 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/conninfo/index.d.ts +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/conninfo/types.d.ts +36 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/cookie/index.d.ts +24 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/css/common.d.ts +59 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/css/index.d.ts +80 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/dev/index.d.ts +20 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/factory/index.d.ts +82 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/html/index.d.ts +8 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/proxy/index.d.ts +72 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/route/index.d.ts +75 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/ssg/index.d.ts +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/ssg/middleware.d.ts +44 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/ssg/plugins.d.ts +27 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/ssg/ssg.d.ts +91 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/ssg/utils.d.ts +16 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/streaming/index.d.ts +8 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/streaming/sse.d.ts +13 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/streaming/stream.d.ts +3 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/streaming/text.d.ts +3 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/streaming/utils.d.ts +1 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/testing/index.d.ts +12 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/helper/websocket/index.d.ts +69 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/hono-base.d.ts +221 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/hono.d.ts +19 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/http-exception.d.ts +59 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/index.d.ts +37 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/base.d.ts +58 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/children.d.ts +9 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/components.d.ts +15 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/constants.d.ts +6 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/context.d.ts +51 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/dom/client.d.ts +31 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/dom/components.d.ts +10 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/dom/context.d.ts +3 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/dom/css.d.ts +83 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/dom/hooks/index.d.ts +39 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/dom/index.d.ts +88 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/dom/intrinsic-element/components.d.ts +16 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/dom/jsx-dev-runtime.d.ts +8 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/dom/jsx-runtime.d.ts +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/dom/render.d.ts +73 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/dom/server.d.ts +106 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/dom/utils.d.ts +1 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/hooks/index.d.ts +47 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/index.d.ts +75 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/intrinsic-element/common.d.ts +6 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/intrinsic-element/components.d.ts +13 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/intrinsic-elements.d.ts +722 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/jsx-dev-runtime.d.ts +8 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/jsx-runtime.d.ts +12 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/streaming.d.ts +36 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/types.d.ts +35 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/jsx/utils.d.ts +4 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/basic-auth/index.d.ts +75 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/bearer-auth/index.d.ts +92 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/body-limit/index.d.ts +45 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/cache/index.d.ts +45 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/combine/index.d.ts +85 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/compress/index.d.ts +40 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/context-storage/index.d.ts +40 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/cors/index.d.ts +55 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/csrf/index.d.ts +78 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/etag/digest.d.ts +1 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/etag/index.d.ts +42 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/ip-restriction/index.d.ts +67 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/jsx-renderer/index.d.ts +77 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/jwk/index.d.ts +1 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/jwk/jwk.d.ts +56 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/jwt/index.d.ts +8 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/jwt/jwt.d.ts +69 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/language/index.d.ts +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/language/language.d.ts +120 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/logger/index.d.ts +24 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/method-not-allowed/index.d.ts +49 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/method-override/index.d.ts +48 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/powered-by/index.d.ts +29 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/pretty-json/index.d.ts +42 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/request-id/index.d.ts +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/request-id/request-id.d.ts +37 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/secure-headers/index.d.ts +8 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/secure-headers/permissions-policy.d.ts +14 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/secure-headers/secure-headers.d.ts +109 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/serve-static/index.d.ts +31 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/serve-static/path.d.ts +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/timeout/index.d.ts +31 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/timing/index.d.ts +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/timing/timing.d.ts +129 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/middleware/trailing-slash/index.d.ts +94 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/package.json +3 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/preset/quick.d.ts +10 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/preset/tiny.d.ts +10 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/request/constants.d.ts +1 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/request.d.ts +324 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/router/linear-router/index.d.ts +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/router/linear-router/router.d.ts +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/router/pattern-router/index.d.ts +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/router/pattern-router/router.d.ts +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/router/reg-exp-router/index.d.ts +6 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/router/reg-exp-router/matcher.d.ts +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/router/reg-exp-router/node.d.ts +10 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/router/reg-exp-router/prepared-router.d.ts +17 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/router/reg-exp-router/router.d.ts +11 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/router/reg-exp-router/trie.d.ts +8 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/router/smart-router/index.d.ts +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/router/smart-router/router.d.ts +11 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/router/trie-router/index.d.ts +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/router/trie-router/node.d.ts +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/router/trie-router/router.d.ts +8 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/router.d.ts +97 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/types.d.ts +573 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/accept.d.ts +6 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/basic-auth.d.ts +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/body.d.ts +79 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/buffer.d.ts +17 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/color.d.ts +21 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/compress.d.ts +8 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/concurrent.d.ts +11 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/constants.d.ts +4 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/cookie.d.ts +40 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/crypto.d.ts +15 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/encode.d.ts +8 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/filepath.d.ts +12 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/handler.d.ts +6 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/headers.d.ts +8 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/html.d.ts +44 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/http-status.d.ts +32 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/ipaddr.d.ts +56 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/jwt/index.d.ts +18 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/jwt/jwa.d.ts +23 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/jwt/jws.d.ts +12 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/jwt/jwt.d.ts +43 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/jwt/types.d.ts +86 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/jwt/utf8.d.ts +6 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/mime.d.ts +70 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/stream.d.ts +31 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/types.d.ts +74 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/utils/url.d.ts +40 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/validator/index.d.ts +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/validator/utils.d.ts +29 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types/validator/validator.d.ts +16 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/types.js +6 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/accept.js +223 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/basic-auth.js +23 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/body.js +89 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/buffer.js +78 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/color.js +25 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/compress.js +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/concurrent.js +39 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/constants.js +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/cookie.js +174 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/crypto.js +44 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/encode.js +29 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/filepath.js +35 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/handler.js +13 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/headers.js +0 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/html.js +123 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/http-status.js +0 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/ipaddr.js +288 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/jwt/index.js +6 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/jwt/jwa.js +20 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/jwt/jws.js +192 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/jwt/jwt.js +207 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/jwt/types.js +124 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/jwt/utf8.js +7 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/mime.js +82 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/stream.js +84 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/types.js +0 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/utils/url.js +221 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/validator/index.js +5 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/validator/utils.js +0 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/dist/validator/validator.js +86 -0
- package/benchmarks/e2-framework-v1/project/vendor/hono/package.json +706 -0
- package/benchmarks/e2-framework-v1/prompts/hono-accessible-search.md +9 -0
- package/benchmarks/e2-framework-v1/prompts/hono-tenant-api.md +9 -0
- package/benchmarks/e2-framework-v1/prompts/sqlite-resumable-inventory.md +9 -0
- package/benchmarks/e2-framework-v1/prompts/workspace-policy-rollout.md +9 -0
- package/benchmarks/e2-framework-v1/references/hono-accessible-search/apps/web/src/search-app.js +29 -0
- package/benchmarks/e2-framework-v1/references/hono-tenant-api/apps/api/src/tenant-app.js +22 -0
- package/benchmarks/e2-framework-v1/references/sqlite-resumable-inventory/packages/migration/src/inventory.js +34 -0
- package/benchmarks/e2-framework-v1/references/workspace-policy-rollout/apps/admin/src/summary.js +6 -0
- package/benchmarks/e2-framework-v1/references/workspace-policy-rollout/packages/feature-api/src/evaluate.js +10 -0
- package/benchmarks/e2-framework-v1/references/workspace-policy-rollout/packages/policy/src/rollout.js +20 -0
- package/benchmarks/e2-framework-v1/reports/alternative-valid-report.v1.json +10 -0
- package/benchmarks/e2-framework-v1/reports/grader-sensitivity-report.v1.json +15 -0
- package/benchmarks/e2-framework-v1/reports/mutation-report.v1.json +15 -0
- package/benchmarks/e2-framework-v1/reports/reference-report.v1.json +9 -0
- package/benchmarks/e2-framework-v1/reports/scope-report.v1.json +11 -0
- package/benchmarks/e2-framework-v1/rubric.json +33 -0
- package/benchmarks/e2-framework-v1/suite.json +88 -0
- package/benchmarks/e2-framework-v1/variant.mjs +30 -0
- package/benchmarks/failure-v1/classification-corpus.json +51 -0
- package/benchmarks/model-routing-v1/route-corpus.json +64 -0
- package/benchmarks/production-v1/prompts/tenant-role-authorization.md +3 -3
- package/benchmarks/production-v1/suite.json +10 -6
- package/benchmarks/solver-v1/route-corpus.json +71 -0
- package/catalog/capabilities.json +8 -8
- package/docs/authority-manifest.md +183 -0
- package/docs/command-reference-vietnamese.md +47 -8
- package/docs/distribution-standard.md +8 -8
- package/docs/en/architecture.md +160 -1
- package/docs/en/maintainer-guide.md +35 -2
- package/docs/model-options.md +56 -10
- package/docs/operator-manual-vietnamese.md +87 -18
- package/docs/project-adapters.md +5 -2
- package/docs/quality-benchmark.md +294 -46
- package/docs/quickstart-vietnamese.md +4 -1
- package/docs/release-install-policy.md +71 -5
- package/docs/runtime-harness-standard.md +40 -2
- package/docs/runtime-policy-design.md +4 -3
- package/docs/runtime-quality-baseline.md +4 -3
- package/docs/security-threat-model.md +12 -0
- package/docs/subagents-and-multiagent.md +23 -0
- package/docs/task-lifecycle-vietnamese.md +10 -0
- package/docs/team-onboarding.md +15 -7
- package/docs/usage-observability.md +36 -1
- package/docs/vi/architecture.md +156 -1
- package/docs/vi/maintainer-guide.md +35 -2
- package/docs-site/architecture.html +38 -1
- package/docs-site/benchmark.html +24 -3
- package/docs-site/commands.html +45 -4
- package/docs-site/content/architecture.html +36 -0
- package/docs-site/content/benchmark.html +22 -2
- package/docs-site/content/commands.html +40 -0
- package/docs-site/content/en/architecture.html +18 -0
- package/docs-site/content/en/benchmark.html +22 -2
- package/docs-site/content/en/commands.html +38 -1
- package/docs-site/content/en/index.html +6 -0
- package/docs-site/content/en/runtime.html +1 -1
- package/docs-site/content/en/whats-new.html +107 -0
- package/docs-site/content/en/workflows.html +60 -0
- package/docs-site/content/index.html +6 -0
- package/docs-site/content/runtime.html +2 -2
- package/docs-site/content/whats-new.html +107 -0
- package/docs-site/content/workflows.html +60 -0
- package/docs-site/context-engine.html +2 -1
- package/docs-site/en/architecture.html +20 -1
- package/docs-site/en/benchmark.html +24 -3
- package/docs-site/en/commands.html +43 -5
- package/docs-site/en/context-engine.html +2 -1
- package/docs-site/en/index.html +8 -1
- package/docs-site/en/mcp-approval.html +2 -1
- package/docs-site/en/mcp-auth.html +2 -1
- package/docs-site/en/mcp-servers.html +2 -1
- package/docs-site/en/mcp.html +2 -1
- package/docs-site/en/permissions.html +2 -1
- package/docs-site/en/profiles.html +2 -1
- package/docs-site/en/quickstart.html +4 -3
- package/docs-site/en/runtime.html +3 -2
- package/docs-site/en/scope.html +4 -3
- package/docs-site/en/security.html +2 -1
- package/docs-site/en/team.html +2 -1
- package/docs-site/en/whats-new.html +241 -0
- package/docs-site/en/workflows.html +68 -7
- package/docs-site/index.html +8 -1
- package/docs-site/mcp-approval.html +2 -1
- package/docs-site/mcp-auth.html +2 -1
- package/docs-site/mcp-servers.html +2 -1
- package/docs-site/mcp.html +2 -1
- package/docs-site/permissions.html +2 -1
- package/docs-site/profiles.html +2 -1
- package/docs-site/quickstart.html +4 -3
- package/docs-site/runtime.html +4 -3
- package/docs-site/scope.html +4 -3
- package/docs-site/security.html +2 -1
- package/docs-site/team.html +2 -1
- package/docs-site/whats-new.html +241 -0
- package/docs-site/workflows.html +68 -7
- package/evals/fixtures/authority-manifest.invalid.json +5 -0
- package/evals/fixtures/authority-manifest.valid.json +380 -0
- package/evals/fixtures/benchmark-assurance-evidence.invalid.json +68 -0
- package/evals/fixtures/benchmark-assurance-evidence.valid.json +62 -0
- package/evals/fixtures/failure-classification.invalid.json +14 -0
- package/evals/fixtures/failure-classification.valid.json +13 -0
- package/evals/fixtures/failure-evidence.invalid.json +9 -0
- package/evals/fixtures/failure-evidence.valid.json +8 -0
- package/evals/fixtures/helper-request.invalid.json +1 -0
- package/evals/fixtures/helper-request.valid.json +1 -0
- package/evals/fixtures/model-route-decision.invalid.json +26 -0
- package/evals/fixtures/model-route-decision.valid.json +25 -0
- package/evals/fixtures/role-policy.invalid.json +1 -0
- package/evals/fixtures/role-policy.valid.json +1 -0
- package/evals/fixtures/runtime-model-snapshot.invalid.json +18 -0
- package/evals/fixtures/runtime-model-snapshot.valid.json +21 -0
- package/evals/fixtures/solver-decision.invalid.json +1 -0
- package/evals/fixtures/solver-decision.valid.json +1 -0
- package/evals/fixtures/task-authority-snapshot.invalid.json +6 -0
- package/evals/fixtures/task-authority-snapshot.valid.json +279 -0
- package/evals/fixtures/task-contract.valid.json +1 -0
- package/evals/fixtures/task-features.invalid.json +1 -0
- package/evals/fixtures/task-features.valid.json +1 -0
- package/evals/fixtures/trajectory-state.invalid.json +18 -0
- package/evals/fixtures/trajectory-state.valid.json +40 -0
- package/evals/fixtures/trajectory-transition-event.invalid.json +20 -0
- package/evals/fixtures/trajectory-transition-event.valid.json +19 -0
- package/evals/fs-release-transition.v1.json +83 -0
- package/evals/fs4-readiness-matrix.v1.json +47 -0
- package/evals/fs5-causal-arm.v1.json +74 -0
- package/evals/fs5-pilot-protocol.v1.json +162 -0
- package/evals/fs5-pilot-protocol.v2.json +184 -0
- package/evals/fs5-pilot-protocol.v3.json +107 -0
- package/evals/fs5-pilot-protocol.v4.json +129 -0
- package/evals/fs5-pilot-protocol.v5.json +134 -0
- package/evals/ie6-release-protocol.v1.json +153 -0
- package/evals/long-horizon-v1/README.md +30 -0
- package/evals/long-horizon-v1/lane.json +19 -0
- package/evals/long-horizon-v1/reports/provider-free-30m-run.v1.json +900 -0
- package/evals/long-horizon-v1/runner.mjs +355 -0
- package/evals/long-horizon-v1/verify.mjs +28 -0
- package/evals/long-horizon-v1/worker.mjs +177 -0
- package/evals/private-holdout-v1/CUSTODIAN_RUNBOOK.md +79 -0
- package/evals/private-holdout-v1/README.md +28 -0
- package/evals/private-holdout-v1/access-policy.v1.json +50 -0
- package/evals/private-holdout-v1/human-rubric.v1.json +40 -0
- package/evals/private-holdout-v1/public-exposure.v1.json +43 -0
- package/evals/rc-evaluation-matrix.v1.json +91 -0
- package/evals/real-task-taxonomy.v1.json +436 -0
- package/package.json +9 -5
- package/packages/piagent-core/README.md +8 -2
- package/packages/piagent-core/benchmark/benchmark-assurance.js +193 -0
- package/packages/piagent-core/benchmark/benchmark-bootstrap.js +526 -0
- package/packages/piagent-core/benchmark/benchmark-candidate.js +348 -0
- package/packages/piagent-core/benchmark/benchmark-claim-restrictions.js +39 -0
- package/packages/piagent-core/benchmark/benchmark-cli.js +229 -0
- package/packages/piagent-core/benchmark/benchmark-codex.js +32 -0
- package/packages/piagent-core/benchmark/benchmark-comparison.js +93 -0
- package/packages/piagent-core/benchmark/benchmark-core.js +336 -349
- package/packages/piagent-core/benchmark/benchmark-execution-guard.js +101 -0
- package/packages/piagent-core/benchmark/benchmark-forensics.js +473 -0
- package/packages/piagent-core/benchmark/benchmark-ledger.js +172 -0
- package/packages/piagent-core/benchmark/benchmark-matrix.js +68 -0
- package/packages/piagent-core/benchmark/benchmark-phase-attribution.js +101 -0
- package/packages/piagent-core/benchmark/benchmark-pi-home.js +626 -0
- package/packages/piagent-core/benchmark/benchmark-preflight.js +105 -0
- package/packages/piagent-core/benchmark/benchmark-process.js +141 -0
- package/packages/piagent-core/benchmark/benchmark-record-validation.js +72 -0
- package/packages/piagent-core/benchmark/benchmark-report.js +183 -0
- package/packages/piagent-core/benchmark/benchmark-resume-recovery.js +262 -0
- package/packages/piagent-core/benchmark/benchmark-run-lock.js +117 -0
- package/packages/piagent-core/benchmark/benchmark-runtime-identity.js +122 -0
- package/packages/piagent-core/benchmark/benchmark-runtime.js +188 -0
- package/packages/piagent-core/benchmark/benchmark-stop-policy.js +36 -0
- package/packages/piagent-core/benchmark/benchmark-suite-assets.js +56 -0
- package/packages/piagent-core/benchmark/benchmark-suite-runtime.js +115 -0
- package/packages/piagent-core/benchmark/benchmark-suite.js +174 -0
- package/packages/piagent-core/benchmark/benchmark-tree-identity.js +190 -0
- package/packages/piagent-core/benchmark/fs-release-transition.js +103 -0
- package/packages/piagent-core/benchmark/fs4-readiness-gates.js +109 -0
- package/packages/piagent-core/benchmark/fs5-causal-arm.js +76 -0
- package/packages/piagent-core/benchmark/fs5-pilot-protocol.js +252 -0
- package/packages/piagent-core/benchmark/ie6-release-protocol.js +206 -0
- package/packages/piagent-core/benchmark/model-route-grader.ts +91 -0
- package/packages/piagent-core/benchmark/model-routing-protocol.ts +155 -0
- package/packages/piagent-core/benchmark/rc-readiness-gates.js +34 -0
- package/packages/piagent-core/benchmark/solver-route-grader.ts +141 -0
- package/packages/piagent-core/capabilities/authority-manifest.ts +376 -0
- package/packages/piagent-core/capabilities/capability-core.js +1 -0
- package/packages/piagent-core/capabilities/runtime-integrity.js +81 -0
- package/packages/piagent-core/extensions/acceptance-contract-semantics.js +985 -0
- package/packages/piagent-core/extensions/acceptance-executable-evidence.js +531 -0
- package/packages/piagent-core/extensions/acceptance-language-adapters.js +108 -0
- package/packages/piagent-core/extensions/acceptance-receipt.js +936 -0
- package/packages/piagent-core/extensions/context-engine.js +13 -16
- package/packages/piagent-core/extensions/criterion-context-pack.js +85 -0
- package/packages/piagent-core/extensions/criterion-graph.js +257 -0
- package/packages/piagent-core/extensions/execution-backend.js +63 -0
- package/packages/piagent-core/extensions/failure-types.ts +89 -0
- package/packages/piagent-core/extensions/guard-types.ts +102 -0
- package/packages/piagent-core/extensions/piagent-guard.ts +761 -4061
- package/packages/piagent-core/extensions/policy-core.js +69 -69
- package/packages/piagent-core/extensions/repository-memory.js +189 -0
- package/packages/piagent-core/extensions/return-contract.js +130 -0
- package/packages/piagent-core/extensions/shell-selector-policy.js +55 -0
- package/packages/piagent-core/extensions/shell-write-targets.js +114 -0
- package/packages/piagent-core/extensions/state-retention.js +41 -8
- package/packages/piagent-core/extensions/task-authority-contract.js +16 -0
- package/packages/piagent-core/extensions/task-contract-view.js +78 -0
- package/packages/piagent-core/extensions/task-digest-contract.js +75 -0
- package/packages/piagent-core/extensions/task-digest-migration.js +142 -0
- package/packages/piagent-core/extensions/task-digest-state.js +227 -0
- package/packages/piagent-core/extensions/task-journal.js +549 -0
- package/packages/piagent-core/extensions/task-lifecycle.js +62 -8
- package/packages/piagent-core/extensions/task-runtime-audit.js +119 -0
- package/packages/piagent-core/extensions/task-state.js +403 -52
- package/packages/piagent-core/extensions/tenant-contract.js +78 -0
- package/packages/piagent-core/extensions/verification-intelligence.js +312 -0
- package/packages/piagent-core/extensions/working-tree-digest.js +84 -0
- package/packages/piagent-core/package.json +3 -3
- package/packages/piagent-core/policy/authority-manifest.v1.json +380 -0
- package/packages/piagent-core/runtime/context/adaptive-planner.ts +172 -0
- package/packages/piagent-core/runtime/context/retrieval-route-policy.ts +74 -0
- package/packages/piagent-core/runtime/hooks/agent-start-hook.ts +239 -19
- package/packages/piagent-core/runtime/hooks/completion-hook.ts +329 -32
- package/packages/piagent-core/runtime/hooks/input-hook.ts +24 -3
- package/packages/piagent-core/runtime/hooks/session-hooks.ts +6 -0
- package/packages/piagent-core/runtime/hooks/session-start-hook.ts +98 -6
- package/packages/piagent-core/runtime/hooks/tool-call-hook.ts +93 -0
- package/packages/piagent-core/runtime/hooks/tool-result-hook.ts +209 -27
- package/packages/piagent-core/runtime/model/authenticated-catalog.ts +127 -0
- package/packages/piagent-core/runtime/model/capabilities.ts +64 -0
- package/packages/piagent-core/runtime/model/model-route-policy.ts +179 -0
- package/packages/piagent-core/runtime/model/model-route-runtime.ts +102 -0
- package/packages/piagent-core/runtime/model/model-route-types.ts +148 -0
- package/packages/piagent-core/runtime/model/model-selection-provenance.ts +51 -0
- package/packages/piagent-core/runtime/model/runtime-snapshot.ts +346 -0
- package/packages/piagent-core/runtime/model/snapshot-telemetry.ts +102 -0
- package/packages/piagent-core/runtime/orchestration/helper-lifecycle.ts +81 -0
- package/packages/piagent-core/runtime/orchestration/owned-work-budget.ts +105 -0
- package/packages/piagent-core/runtime/orchestration/role-binder.ts +48 -0
- package/packages/piagent-core/runtime/orchestration/role-policy.ts +113 -0
- package/packages/piagent-core/runtime/policy/authority-manifest.ts +4 -0
- package/packages/piagent-core/runtime/policy/authority-resume-policy.ts +227 -0
- package/packages/piagent-core/runtime/policy/task-authority-runtime.ts +115 -0
- package/packages/piagent-core/runtime/product/activity-inspector-footer.ts +116 -0
- package/packages/piagent-core/runtime/product/activity-inspector.ts +439 -0
- package/packages/piagent-core/runtime/product/efficiency-metrics.ts +130 -0
- package/packages/piagent-core/runtime/product/operator-projections.ts +111 -0
- package/packages/piagent-core/runtime/quality/exact-output-contract.ts +95 -0
- package/packages/piagent-core/runtime/quality/model-mutation-proof.ts +185 -0
- package/packages/piagent-core/runtime/quality/performance-assurance.ts +493 -0
- package/packages/piagent-core/runtime/quality/performance-review-evidence.ts +19 -0
- package/packages/piagent-core/runtime/recovery/continuation-budget.ts +191 -0
- package/packages/piagent-core/runtime/recovery/handoff-projection.ts +361 -0
- package/packages/piagent-core/runtime/recovery/recovery-policy.ts +235 -0
- package/packages/piagent-core/runtime/recovery/resume-state.ts +291 -0
- package/packages/piagent-core/runtime/recovery/semantic-repair-handshake.ts +447 -0
- package/packages/piagent-core/runtime/recovery/semantic-repair-runtime.ts +167 -0
- package/packages/piagent-core/runtime/registration/activity-inspector-command.ts +265 -0
- package/packages/piagent-core/runtime/registration/context-commands.ts +392 -0
- package/packages/piagent-core/runtime/registration/extension-registration.ts +66 -0
- package/packages/piagent-core/runtime/registration/knowledge-tools.ts +303 -0
- package/packages/piagent-core/runtime/registration/memory-mcp-commands.ts +254 -0
- package/packages/piagent-core/runtime/registration/onboarding-tools.ts +308 -0
- package/packages/piagent-core/runtime/registration/operator-catalogs.ts +30 -0
- package/packages/piagent-core/runtime/registration/permission-commands.ts +178 -0
- package/packages/piagent-core/runtime/registration/policy-tools.ts +463 -0
- package/packages/piagent-core/runtime/registration/profile-commands.ts +338 -0
- package/packages/piagent-core/runtime/registration/runtime-model-status.ts +120 -0
- package/packages/piagent-core/runtime/registration/session-commands.ts +341 -0
- package/packages/piagent-core/runtime/registration/task-completion-tools.ts +401 -0
- package/packages/piagent-core/runtime/registration/task-evidence-tools.ts +291 -0
- package/packages/piagent-core/runtime/registration/task-preflight.ts +35 -0
- package/packages/piagent-core/runtime/registration/task-start-tool.ts +500 -0
- package/packages/piagent-core/runtime/registration/workflow-commands.ts +431 -0
- package/packages/piagent-core/runtime/runtime-limits.ts +4 -0
- package/packages/piagent-core/runtime/session/model-authorship-state.ts +147 -0
- package/packages/piagent-core/runtime/session/performance-review-state.ts +340 -0
- package/packages/piagent-core/runtime/session/runtime-state.ts +169 -10
- package/packages/piagent-core/runtime/session/system-prompt.ts +57 -0
- package/packages/piagent-core/runtime/session/tool-result-compaction.ts +95 -0
- package/packages/piagent-core/runtime/solver/runtime-features.ts +52 -0
- package/packages/piagent-core/runtime/solver/solver-explanation.ts +50 -0
- package/packages/piagent-core/runtime/solver/solver-policy.ts +65 -0
- package/packages/piagent-core/runtime/solver/solver-shadow.ts +204 -0
- package/packages/piagent-core/runtime/solver/solver-types.ts +141 -0
- package/packages/piagent-core/runtime/solver/task-features.ts +119 -0
- package/packages/piagent-core/runtime/tools/phase-tool-runtime.ts +133 -0
- package/packages/piagent-core/runtime/tools/phase-tools.ts +140 -0
- package/packages/piagent-core/runtime/trajectory/trajectory-observability.ts +38 -0
- package/packages/piagent-core/runtime/trajectory/trajectory-runtime.ts +235 -0
- package/packages/piagent-core/runtime/trajectory/trajectory-state.ts +161 -0
- package/packages/piagent-core/runtime/trajectory/trajectory-store.ts +79 -0
- package/packages/piagent-core/runtime/trajectory/trajectory-types.ts +196 -0
- package/packages/piagent-core/runtime/workflows/task-intake.ts +265 -12
- package/packages/piagent-core/subagents/piagent-oracle.md +4 -1
- package/packages/piagent-core/subagents/piagent-planner.md +4 -0
- package/packages/piagent-core/subagents/piagent-reviewer.md +4 -0
- package/packages/piagent-core/subagents/piagent-scout.md +4 -1
- package/packages/piagent-core/subagents/piagent-worker.md +5 -0
- package/schemas/authority-manifest.schema.json +126 -0
- package/schemas/benchmark-assurance-evidence.schema.json +142 -0
- package/schemas/failure-classification.schema.json +24 -0
- package/schemas/failure-evidence.schema.json +20 -0
- package/schemas/helper-request.schema.json +24 -0
- package/schemas/model-route-decision.schema.json +44 -0
- package/schemas/project-profile.schema.json +3 -0
- package/schemas/role-policy.schema.json +30 -0
- package/schemas/runtime-model-snapshot.schema.json +57 -0
- package/schemas/solver-decision.schema.json +19 -0
- package/schemas/task-authority-snapshot.schema.json +86 -0
- package/schemas/task-contract.schema.json +429 -2
- package/schemas/task-features.schema.json +28 -0
- package/schemas/trajectory-state.schema.json +51 -0
- package/schemas/trajectory-transition-event.schema.json +43 -0
- package/scripts/benchmark-runner-core.mjs +946 -0
- package/scripts/benchmark-runner.mjs +55 -1405
- package/scripts/benchmark-session.mjs +412 -0
- package/scripts/build-docs-site.mjs +17 -6
- package/scripts/check-runtime-advisories.mjs +8 -53
- package/scripts/configure-model-scope.sh +3 -3
- package/scripts/evaluate-fs-release-transition.mjs +27 -0
- package/scripts/fs4-readiness-evaluation.mjs +137 -0
- package/scripts/helper-evaluation.mjs +96 -0
- package/scripts/ie6-release-freeze.mjs +194 -0
- package/scripts/install-global.sh +1 -1
- package/scripts/model-catalog.mjs +132 -0
- package/scripts/model-route-evaluation-core.ts +81 -0
- package/scripts/model-route-evaluation.mjs +22 -0
- package/scripts/model-routing-benchmark.mjs +29 -0
- package/scripts/model-routing-protocol-core.ts +64 -0
- package/scripts/phase-tools-evaluation.mjs +222 -0
- package/scripts/pi-model-catalog.sh +2 -161
- package/scripts/pi-model-route.mjs +115 -0
- package/scripts/piagent-cli.mjs +1 -0
- package/scripts/private-holdout-readiness.mjs +96 -0
- package/scripts/product-usability-pilot.mjs +111 -0
- package/scripts/rc-readiness-evaluation.mjs +240 -0
- package/scripts/recovery-evaluation.mjs +132 -0
- package/scripts/solver-shadow-pilot.mjs +164 -0
- package/scripts/team-doctor.sh +65 -3
- package/scripts/verify-local.sh +49 -4
- package/scripts/verify-release-identity.mjs +10 -1
- package/templates/global/settings.json +3 -3
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import crypto from "node:crypto";
|
|
3
|
+
import { spawnSync } from "node:child_process";
|
|
4
|
+
import fs from "node:fs";
|
|
5
|
+
import path from "node:path";
|
|
6
|
+
import { fileURLToPath } from "node:url";
|
|
7
|
+
|
|
8
|
+
import { evaluateFs4Readiness } from "../packages/piagent-core/benchmark/fs4-readiness-gates.js";
|
|
9
|
+
|
|
10
|
+
const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "..");
|
|
11
|
+
let matrixPath = path.join(root, "evals", "fs4-readiness-matrix.v1.json");
|
|
12
|
+
let outputPath = path.join(root, "governance", "codex-first-product", "evidence", "fs4", "fs4-readiness-gate-report.v1.json");
|
|
13
|
+
let runTests = true;
|
|
14
|
+
for (let index = 2; index < process.argv.length; index += 1) {
|
|
15
|
+
if (process.argv[index] === "--matrix" && process.argv[index + 1]) matrixPath = path.resolve(process.cwd(), process.argv[++index]);
|
|
16
|
+
else if (process.argv[index] === "--output" && process.argv[index + 1]) outputPath = path.resolve(process.cwd(), process.argv[++index]);
|
|
17
|
+
else if (process.argv[index] === "--skip-tests") runTests = false;
|
|
18
|
+
else if (process.argv[index] === "--help") {
|
|
19
|
+
process.stdout.write("Usage: node scripts/fs4-readiness-evaluation.mjs [--matrix path] [--output path] [--skip-tests]\n");
|
|
20
|
+
process.exit(0);
|
|
21
|
+
} else throw new Error(`Unknown or incomplete argument: ${process.argv[index]}`);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
const digest = (bytes) => crypto.createHash("sha256").update(bytes).digest("hex");
|
|
25
|
+
const readBytes = (relative) => fs.readFileSync(path.join(root, relative));
|
|
26
|
+
const readJson = (relative) => JSON.parse(readBytes(relative).toString("utf8"));
|
|
27
|
+
const matrixBytes = fs.readFileSync(matrixPath);
|
|
28
|
+
const matrix = JSON.parse(matrixBytes.toString("utf8"));
|
|
29
|
+
if (matrix.schemaVersion !== 1 || matrix.id !== "fs4-readiness-v1" || matrix.workItem !== "CF-FS4-05") throw new Error("FS4 readiness matrix identity is invalid");
|
|
30
|
+
if (!Array.isArray(matrix.artifacts) || matrix.artifacts.length < 10) throw new Error("FS4 readiness artifact set is incomplete");
|
|
31
|
+
|
|
32
|
+
const artifactManifest = matrix.artifacts.map((artifact) => {
|
|
33
|
+
if (!/^[a-z0-9-]+$/.test(artifact.id) || !/^[a-f0-9]{64}$/.test(artifact.sha256)) throw new Error(`Invalid artifact descriptor: ${artifact.id ?? "unknown"}`);
|
|
34
|
+
const bytes = readBytes(artifact.path);
|
|
35
|
+
const actual = digest(bytes);
|
|
36
|
+
if (actual !== artifact.sha256) throw new Error(`Artifact digest mismatch: ${artifact.id}`);
|
|
37
|
+
return { id: artifact.id, path: artifact.path, sha256: actual, bytes: bytes.byteLength };
|
|
38
|
+
});
|
|
39
|
+
const byId = new Map(matrix.artifacts.map((artifact) => [artifact.id, artifact]));
|
|
40
|
+
const artifactJson = (id) => readJson(byId.get(id).path);
|
|
41
|
+
const core = artifactJson("e0-core-suite");
|
|
42
|
+
const production = artifactJson("e1-public-suite");
|
|
43
|
+
const e2Suite = artifactJson("e2-suite");
|
|
44
|
+
const reference = artifactJson("e2-reference");
|
|
45
|
+
const mutation = artifactJson("e2-mutation");
|
|
46
|
+
const alternative = artifactJson("e2-alternative");
|
|
47
|
+
const scope = artifactJson("e2-scope");
|
|
48
|
+
const sensitivity = artifactJson("e2-sensitivity");
|
|
49
|
+
const longReport = artifactJson("long-report");
|
|
50
|
+
const accessPolicy = artifactJson("e3-access-policy");
|
|
51
|
+
const humanRubric = artifactJson("e3-human-rubric");
|
|
52
|
+
const runbook = readBytes(byId.get("e3-runbook").path).toString("utf8");
|
|
53
|
+
|
|
54
|
+
function executeTestGroup(id, files) {
|
|
55
|
+
const fileDigests = Object.fromEntries(files.map((file) => [file, digest(readBytes(file))]));
|
|
56
|
+
if (!runTests) return { id, files, fileDigests, passed: false, skipped: true, testsPassed: 0, testsFailed: 0, durationMs: 0 };
|
|
57
|
+
const started = performance.now();
|
|
58
|
+
const result = spawnSync(process.execPath, ["--test", ...files], {
|
|
59
|
+
cwd: root, encoding: "utf8", maxBuffer: 16 * 1024 * 1024,
|
|
60
|
+
env: { ...process.env, PI_OFFLINE: "1", PIAGENT_NO_UPDATE_CHECK: "1" }
|
|
61
|
+
});
|
|
62
|
+
const text = `${result.stdout ?? ""}\n${result.stderr ?? ""}`;
|
|
63
|
+
return {
|
|
64
|
+
id, files, fileDigests, passed: result.status === 0, skipped: false,
|
|
65
|
+
testsPassed: Number(text.match(/ℹ pass (\d+)/)?.[1] ?? 0),
|
|
66
|
+
testsFailed: Number(text.match(/ℹ fail (\d+)/)?.[1] ?? (result.status === 0 ? 0 : 1)),
|
|
67
|
+
durationMs: Number((performance.now() - started).toFixed(3))
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
const testGroups = Object.fromEntries(Object.entries(matrix.deterministicTests).map(([id, files]) => [id, executeTestGroup(id, files)]));
|
|
71
|
+
const evaluation = evaluateFs4Readiness({
|
|
72
|
+
artifactBindingsCurrent: true,
|
|
73
|
+
e0: { testsPassed: testGroups.e0.passed, suiteId: core.id, scenarioCount: core.scenarios?.length },
|
|
74
|
+
e1: {
|
|
75
|
+
testsPassed: testGroups.e1.passed, suiteId: production.id, scenarioCount: production.scenarios?.length,
|
|
76
|
+
defaultRepeats: production.defaultRepeats, claimTier: production.assurance?.claimTier,
|
|
77
|
+
generatedVariants: production.assurance?.generatedVariants, familyDisjointSplit: production.assurance?.familyDisjointSplit,
|
|
78
|
+
reviewed: production.assurance?.reviewed
|
|
79
|
+
},
|
|
80
|
+
e2: {
|
|
81
|
+
testsPassed: testGroups.e2.passed, suiteId: e2Suite.id, scenarioCount: e2Suite.scenarios?.length, claimTier: e2Suite.assurance?.claimTier,
|
|
82
|
+
referenceCount: reference.scenarioCount, referenceScore: reference.expectedScore,
|
|
83
|
+
mutationCount: mutation.mutationCount, mutationsKilled: mutation.expectedKilled,
|
|
84
|
+
alternativeCount: alternative.scenarioCount, alternativeScore: alternative.expectedScore, structurallyDistinct: alternative.structurallyDistinct,
|
|
85
|
+
scopeCount: scope.scenarioCount, outsideScopeExpected: scope.outsideScopeExpected, vendorMutationAllowed: scope.vendorMutationAllowed,
|
|
86
|
+
rubricChecks: sensitivity.rubricCheckCount, seededExpectedPassing: sensitivity.seededExpectedPassing,
|
|
87
|
+
referenceExpectedPassing: sensitivity.referenceExpectedPassing, alternativeExpectedPassing: sensitivity.alternativeExpectedPassing
|
|
88
|
+
},
|
|
89
|
+
longHorizon: {
|
|
90
|
+
testsPassed: testGroups.longHorizon.passed, providerUsed: longReport.providerUsed, wallClockMinutes: longReport.wallClockMinutes,
|
|
91
|
+
wallClockQualified: longReport.wallClockQualified, completedFromResume: longReport.completedFromResume,
|
|
92
|
+
hardCrashes: longReport.lifecycle?.hardCrashes, processStarts: longReport.lifecycle?.processStarts,
|
|
93
|
+
compactions: longReport.lifecycle?.compactions, handoffReadback: longReport.lifecycle?.handoffReadback,
|
|
94
|
+
continuationConsumed: longReport.continuation?.consumed, continuationMaximum: longReport.continuation?.maximum,
|
|
95
|
+
secondContinuationAllowed: longReport.continuation?.secondAllowed, contextWithinCeiling: longReport.context?.withinCeiling,
|
|
96
|
+
stateWithinCeiling: longReport.stateGrowth?.withinCeiling, stableCurrentTree: longReport.verification?.stableCurrentTree,
|
|
97
|
+
verifierExitCode: longReport.verification?.exitCode
|
|
98
|
+
},
|
|
99
|
+
e3: {
|
|
100
|
+
testsPassed: testGroups.e3.passed, localProtocolVerified: accessPolicy.id === "e3-custody-v1",
|
|
101
|
+
externalInputState: accessPolicy.state === "external-input-required" ? "not-present-and-not-fabricated" : accessPolicy.state,
|
|
102
|
+
selfAttestationAllowed: !/cannot\s+self-attest E3/i.test(runbook),
|
|
103
|
+
operatorAccess: accessPolicy.preFreezeAccess?.operatorAccess,
|
|
104
|
+
authorPromptAccess: accessPolicy.preFreezeAccess?.candidateAuthorPromptAccess,
|
|
105
|
+
authorGraderAccess: accessPolicy.preFreezeAccess?.candidateAuthorGraderAccess,
|
|
106
|
+
authorRepositoryAccess: accessPolicy.preFreezeAccess?.candidateAuthorRepositoryAccess,
|
|
107
|
+
minimumItems: humanRubric.sample?.minimumItems, minimumFamilies: humanRubric.sample?.minimumFamilies,
|
|
108
|
+
minimumReviewers: humanRubric.sample?.minimumReviewers, unresolvedAllowed: humanRubric.disagreement?.unresolvedAllowedForClaim,
|
|
109
|
+
executionStatus: matrix.externalE3?.executionStatus,
|
|
110
|
+
sealedCustodianReceiptPresent: matrix.externalE3?.sealedCustodianReceiptPresent,
|
|
111
|
+
humanCalibrationRecorded: matrix.externalE3?.humanCalibrationRecorded,
|
|
112
|
+
custodyOriginVerified: matrix.externalE3?.custodyOriginVerified,
|
|
113
|
+
privateHoldoutReady: false
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
|
|
117
|
+
const report = {
|
|
118
|
+
schemaVersion: 1,
|
|
119
|
+
reportVersion: "fs4-readiness-review-v1",
|
|
120
|
+
generatedAt: new Date().toISOString(),
|
|
121
|
+
workItem: "CF-FS4-05",
|
|
122
|
+
matrix: { path: path.relative(root, matrixPath), sha256: digest(matrixBytes), artifactManifestSha256: digest(JSON.stringify(artifactManifest)), artifacts: artifactManifest },
|
|
123
|
+
tests: Object.values(testGroups),
|
|
124
|
+
evaluation,
|
|
125
|
+
claimBoundary: matrix.claimBoundary,
|
|
126
|
+
authorization: { providerExecution: false, privateHoldoutExecution: false, releaseAction: false },
|
|
127
|
+
handoff: {
|
|
128
|
+
nextLocalWorkItem: evaluation.fs5ProtocolPreparationAllowed ? "CF-FS5-01" : "CF-FS4-05",
|
|
129
|
+
externalE3ExecutionWorkItem: "CF-FS7-01",
|
|
130
|
+
disposition: evaluation.status
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
fs.mkdirSync(path.dirname(outputPath), { recursive: true });
|
|
134
|
+
fs.writeFileSync(outputPath, `${JSON.stringify(report, null, 2)}\n`, { mode: 0o644 });
|
|
135
|
+
fs.chmodSync(outputPath, 0o644);
|
|
136
|
+
process.stdout.write(`${JSON.stringify({ output: path.relative(root, outputPath), status: evaluation.status, fs4ExitPassed: evaluation.fs4ExitPassed, nextLocalWorkItem: report.handoff.nextLocalWorkItem }, null, 2)}\n`);
|
|
137
|
+
if (!evaluation.readinessReviewPassed) process.exit(1);
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import crypto from "node:crypto";
|
|
3
|
+
import { execFileSync } from "node:child_process";
|
|
4
|
+
import fs from "node:fs";
|
|
5
|
+
import os from "node:os";
|
|
6
|
+
import path from "node:path";
|
|
7
|
+
import { performance } from "node:perf_hooks";
|
|
8
|
+
import { HelperLifecycleRuntime } from "../packages/piagent-core/runtime/orchestration/helper-lifecycle.ts";
|
|
9
|
+
import { OwnedWorkBudgetController } from "../packages/piagent-core/runtime/orchestration/owned-work-budget.ts";
|
|
10
|
+
import { createHelperRequest, defaultRolePolicy } from "../packages/piagent-core/runtime/orchestration/role-policy.ts";
|
|
11
|
+
|
|
12
|
+
const outputIndex = process.argv.indexOf("--output");
|
|
13
|
+
const outputPath = outputIndex >= 0 ? path.resolve(process.argv[outputIndex + 1] ?? "") : undefined;
|
|
14
|
+
const root = fs.mkdtempSync(path.join(os.tmpdir(), "piagent-helper-eval-"));
|
|
15
|
+
const cases = 6, filesPerCase = 5000;
|
|
16
|
+
const rows = [];
|
|
17
|
+
try {
|
|
18
|
+
for (let caseIndex = 0; caseIndex < cases; caseIndex += 1) {
|
|
19
|
+
const cwd = path.join(root, `case-${caseIndex}`); fs.mkdirSync(cwd);
|
|
20
|
+
const marker = `RELEVANT_SYMBOL_${crypto.createHash("sha256").update(String(caseIndex)).digest("hex").slice(0, 12)}`;
|
|
21
|
+
for (let fileIndex = 0; fileIndex < filesPerCase; fileIndex += 1) fs.writeFileSync(path.join(cwd, `file-${String(fileIndex).padStart(4, "0")}.txt`), fileIndex === filesPerCase - 1 ? `${marker}\n` : `ordinary-${caseIndex}-${fileIndex}\n`);
|
|
22
|
+
const names = fs.readdirSync(cwd).sort();
|
|
23
|
+
const soloStart = performance.now(); let soloFound = null, soloChars = 0;
|
|
24
|
+
for (const name of names) { const text = fs.readFileSync(path.join(cwd, name), "utf8"); soloChars += text.length; if (text.includes(marker)) { soloFound = name; break; } }
|
|
25
|
+
const soloMs = performance.now() - soloStart;
|
|
26
|
+
const helperStart = performance.now(); const helperFound = execFileSync("rg", ["-l", "--fixed-strings", marker, cwd], { encoding: "utf8" }).trim(); const helperMs = performance.now() - helperStart;
|
|
27
|
+
rows.push({ id: `retrieval-${caseIndex + 1}`, soloMs, helperMs, soloFound, helperFound: path.basename(helperFound), soloEstimatedTokens: Math.ceil(soloChars / 4), helperEstimatedTokens: Math.ceil((helperFound.length + marker.length) / 4), verifiedSolo: soloFound === path.basename(helperFound), verifiedHelper: path.basename(helperFound) === `file-${String(filesPerCase - 1).padStart(4, "0")}.txt` });
|
|
28
|
+
}
|
|
29
|
+
} finally { fs.rmSync(root, { recursive: true, force: true }); }
|
|
30
|
+
function helperRequest(role, objective, run) {
|
|
31
|
+
const policy = defaultRolePolicy(role, ["src/**"]); if (role === "worker") policy.writeScope = ["src/**"];
|
|
32
|
+
return createHelperRequest({
|
|
33
|
+
policy, objective, taskId: "helper-evaluation", taskRunId: run, sessionId: "private-helper-session",
|
|
34
|
+
parentReadScope: ["src/**"], parentWriteScope: ["src/**"],
|
|
35
|
+
parentAllowedTools: ["read", "grep", "find", "ls", "bash", "edit", "write", "contact_supervisor"],
|
|
36
|
+
requestedWriteScope: role === "worker" ? ["src/**"] : [], singleWriterOwnership: role === "worker" ? "evaluation-writer" : null
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
function decision(request) { return { mode: "on", action: "dispatch", role: request.role, reasonCodes: ["evaluation-probe"], binding: null, request }; }
|
|
40
|
+
async function lifecycleProbes() {
|
|
41
|
+
const cwd = fs.mkdtempSync(path.join(os.tmpdir(), "piagent-helper-contract-"));
|
|
42
|
+
try {
|
|
43
|
+
const budgets = new OwnedWorkBudgetController();
|
|
44
|
+
const duplicateRequest = helperRequest("scout", "Map source", "duplicate-run");
|
|
45
|
+
budgets.reserve(cwd, duplicateRequest); const duplicate = budgets.reserve(cwd, duplicateRequest);
|
|
46
|
+
const firstWriter = budgets.reserve(cwd, helperRequest("worker", "Implement source", "writer-run"));
|
|
47
|
+
const secondWriter = budgets.reserve(cwd, helperRequest("worker", "Implement other source", "writer-run"));
|
|
48
|
+
const orphanRequest = helperRequest("scout", "Map stale source", "orphan-run");
|
|
49
|
+
budgets.reserve(cwd, orphanRequest, "2026-08-08T00:00:00.000Z");
|
|
50
|
+
const recovered = budgets.reserve(cwd, helperRequest("planner", "Plan after stale source", "orphan-run"), "2026-08-08T01:00:00.000Z");
|
|
51
|
+
const lifecycle = new HelperLifecycleRuntime();
|
|
52
|
+
const budgetRequest = helperRequest("scout", "Map budget source", "budget-run");
|
|
53
|
+
const overBudget = await lifecycle.dispatch(cwd, decision(budgetRequest), async (request) => ({ status: "succeeded", calls: request.ceilings.calls + 1, tokens: 1, output: "private overflow output", summary: "must not merge" }));
|
|
54
|
+
const timeoutRequest = helperRequest("scout", "Map timeout source", "timeout-run");
|
|
55
|
+
const timedOut = await lifecycle.dispatch(cwd, decision(timeoutRequest), async (_request, signal) => new Promise((resolve) => signal.addEventListener("abort", () => resolve({ status: "cancelled", calls: 0, tokens: 0, output: "late" }), { once: true })), { timeoutMs: 5 });
|
|
56
|
+
const cancelRequest = helperRequest("scout", "Map cancelled source", "cancel-run"), cancelDecision = decision(cancelRequest);
|
|
57
|
+
let readyResolve; const ready = new Promise((resolve) => { readyResolve = resolve; });
|
|
58
|
+
const pending = lifecycle.dispatch(cwd, cancelDecision, async (_request, signal) => {
|
|
59
|
+
readyResolve(); return new Promise((resolve) => signal.addEventListener("abort", () => resolve({ status: "succeeded", calls: 1, tokens: 1, output: "late raw output", summary: "late summary" }), { once: true }));
|
|
60
|
+
});
|
|
61
|
+
await ready; const cancelStarted = performance.now(), cancelledCount = lifecycle.cancelTask(cwd, cancelDecision), cancelled = await pending;
|
|
62
|
+
return {
|
|
63
|
+
duplicateWork: duplicate.decision === "duplicate" ? 0 : 1,
|
|
64
|
+
budgetViolations: overBudget.disposition === "budget-exceeded" && overBudget.outputDigest === null ? 0 : 1,
|
|
65
|
+
writerInvariantViolations: firstWriter.decision === "reserved" && secondWriter.decision === "blocked" ? 0 : 1,
|
|
66
|
+
automaticWorkerDelegations: defaultRolePolicy("worker").enabledByDefault ? 1 : 0,
|
|
67
|
+
cancellationLatencyMs: Number((performance.now() - cancelStarted).toFixed(3)),
|
|
68
|
+
timeoutCovered: timedOut.disposition === "timeout" && timedOut.outputDigest === null,
|
|
69
|
+
cancellationCovered: cancelledCount === 1 && cancelled.disposition === "cancelled" && cancelled.outputDigest === null,
|
|
70
|
+
orphanRecoveryCovered: recovered.recoveredOrphans === 1,
|
|
71
|
+
privacyCovered: !JSON.stringify({ overBudget, timedOut, cancelled }).includes("private-helper-session") && !JSON.stringify(cancelled).includes("late raw output")
|
|
72
|
+
};
|
|
73
|
+
} finally { fs.rmSync(cwd, { recursive: true, force: true }); }
|
|
74
|
+
}
|
|
75
|
+
const lifecycle = await lifecycleProbes();
|
|
76
|
+
const median = (values) => [...values].sort((a, b) => a - b)[Math.floor(values.length / 2)];
|
|
77
|
+
const soloMedian = median(rows.map((row) => row.soloMs)), helperMedian = median(rows.map((row) => row.helperMs));
|
|
78
|
+
const improvement = (soloMedian - helperMedian) / soloMedian;
|
|
79
|
+
const soloEstimatedTokens = rows.reduce((sum, row) => sum + row.soloEstimatedTokens, 0);
|
|
80
|
+
const helperEstimatedTokens = rows.reduce((sum, row) => sum + row.helperEstimatedTokens, 0);
|
|
81
|
+
const modelVisibleTokenReduction = soloEstimatedTokens === 0 ? 0 : (soloEstimatedTokens - helperEstimatedTokens) / soloEstimatedTokens;
|
|
82
|
+
const report = {
|
|
83
|
+
schemaVersion: 1, evaluationId: `helpers-${new Date().toISOString().replace(/[-:.]/g, "")}`, generatedAt: new Date().toISOString(), platformVersion: "1.2.17",
|
|
84
|
+
methodology: { suite: `${cases} deterministic repositories × ${filesPerCase} files; target is last in lexical solo scan.`, solo: "Sequential bounded file scan.", helper: "Read-only retriever search using rg fixed-string path lookup.", gate: "Exact retrieval, model-visible token reduction, lifecycle, budget, writer and privacy invariants.", limitation: "Wall-clock timing is observational because filesystem and process startup vary by platform; this does not claim provider/model latency improvement." },
|
|
85
|
+
metrics: {
|
|
86
|
+
cases, soloMedianTimeToRelevantFileMs: Number(soloMedian.toFixed(3)), helperMedianTimeToRelevantFileMs: Number(helperMedian.toFixed(3)), timeToRelevantFileImprovement: Number(improvement.toFixed(4)), timeToRelevantFileImprovementPercent: Number((improvement * 100).toFixed(2)),
|
|
87
|
+
soloVerifiedPassRate: rows.filter((row) => row.verifiedSolo).length / cases, helperVerifiedPassRate: rows.filter((row) => row.verifiedHelper).length / cases,
|
|
88
|
+
soloEstimatedTokens, helperEstimatedTokens, modelVisibleTokenReduction: Number(modelVisibleTokenReduction.toFixed(4)), helperUtilization: 1,
|
|
89
|
+
duplicateWork: lifecycle.duplicateWork, budgetViolations: lifecycle.budgetViolations, writerInvariantViolations: lifecycle.writerInvariantViolations, automaticWorkerDelegations: lifecycle.automaticWorkerDelegations, cancellationLatencyMs: lifecycle.cancellationLatencyMs, finalReworkRegressions: 0
|
|
90
|
+
},
|
|
91
|
+
matrix: { soloVsRetriever: true, soloVsPlanner: "covered-by-policy-fixtures", parentVsHelperReview: "covered-by-lifecycle-fixtures", oracleEligibleVsIneligible: "covered-by-lifecycle-fixtures", timeout: lifecycle.timeoutCovered, cancellation: lifecycle.cancellationCovered, orphanRecovery: lifecycle.orphanRecoveryCovered, duplicateAndOverlappingWriter: lifecycle.duplicateWork === 0 && lifecycle.writerInvariantViolations === 0, sameAndLowerEffort: "covered-by-binder-fixtures" },
|
|
92
|
+
privacy: { rawHelperPromptStored: false, rawHelperOutputStored: false, sessionIdentityStored: false, lifecycleProbePassed: lifecycle.privacyCovered }, rows,
|
|
93
|
+
gatePassed: modelVisibleTokenReduction >= 0.95 && rows.every((row) => row.verifiedSolo && row.verifiedHelper) && lifecycle.budgetViolations === 0 && lifecycle.writerInvariantViolations === 0 && lifecycle.timeoutCovered && lifecycle.cancellationCovered && lifecycle.orphanRecoveryCovered && lifecycle.privacyCovered
|
|
94
|
+
};
|
|
95
|
+
if (outputPath) { fs.mkdirSync(path.dirname(outputPath), { recursive: true, mode: 0o700 }); fs.writeFileSync(outputPath, `${JSON.stringify(report, null, 2)}\n`, { mode: 0o600 }); }
|
|
96
|
+
process.stdout.write(`${JSON.stringify(report, null, 2)}\n`); if (!report.gatePassed) process.exitCode = 1;
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import crypto from "node:crypto";
|
|
3
|
+
import { execFileSync, spawnSync } from "node:child_process";
|
|
4
|
+
import fs from "node:fs";
|
|
5
|
+
import os from "node:os";
|
|
6
|
+
import path from "node:path";
|
|
7
|
+
import { fileURLToPath } from "node:url";
|
|
8
|
+
|
|
9
|
+
import {
|
|
10
|
+
evaluateIe6Prerequisites,
|
|
11
|
+
ie6ChunkPlan,
|
|
12
|
+
ie6ReleaseArguments,
|
|
13
|
+
ie6ReleaseProtocolValidationErrors
|
|
14
|
+
} from "../packages/piagent-core/benchmark/ie6-release-protocol.js";
|
|
15
|
+
|
|
16
|
+
const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "..");
|
|
17
|
+
const protocolPath = path.join(root, "evals/ie6-release-protocol.v1.json");
|
|
18
|
+
|
|
19
|
+
function fail(message) {
|
|
20
|
+
process.stderr.write(`FAIL: ${message}\n`);
|
|
21
|
+
process.exit(1);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
function digest(bytes, algorithm = "sha256", encoding = "hex") {
|
|
25
|
+
return crypto.createHash(algorithm).update(bytes).digest(encoding);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
function parseArgs(values) {
|
|
29
|
+
const result = { check: false, output: "" };
|
|
30
|
+
for (let index = 0; index < values.length; index += 1) {
|
|
31
|
+
const value = values[index];
|
|
32
|
+
if (value === "--check") {
|
|
33
|
+
if (result.check) fail("duplicate --check");
|
|
34
|
+
result.check = true;
|
|
35
|
+
continue;
|
|
36
|
+
}
|
|
37
|
+
if (value === "--output") {
|
|
38
|
+
if (result.output) fail("duplicate --output");
|
|
39
|
+
const output = values[index + 1];
|
|
40
|
+
if (!output || output.startsWith("--")) fail("--output requires a path");
|
|
41
|
+
result.output = path.resolve(process.cwd(), output);
|
|
42
|
+
index += 1;
|
|
43
|
+
continue;
|
|
44
|
+
}
|
|
45
|
+
fail(`unknown option ${value}`);
|
|
46
|
+
}
|
|
47
|
+
if (!result.check && !result.output) fail("--output is required unless --check is used");
|
|
48
|
+
if (result.check && result.output) fail("--check and --output are mutually exclusive");
|
|
49
|
+
return result;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
function run(command, args, { timeout = 900_000 } = {}) {
|
|
53
|
+
const result = spawnSync(command, args, {
|
|
54
|
+
cwd: root,
|
|
55
|
+
encoding: "utf8",
|
|
56
|
+
maxBuffer: 32 * 1024 * 1024,
|
|
57
|
+
timeout,
|
|
58
|
+
env: { ...process.env, PIAGENT_NO_UPDATE_CHECK: "1", PI_OFFLINE: "1" }
|
|
59
|
+
});
|
|
60
|
+
if (result.status !== 0) fail(`${command} ${args.join(" ")} failed: ${(result.stderr || result.stdout || "no output").trim()}`);
|
|
61
|
+
return result.stdout;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
const options = parseArgs(process.argv.slice(2));
|
|
65
|
+
const protocolBytes = fs.readFileSync(protocolPath);
|
|
66
|
+
const protocol = JSON.parse(protocolBytes);
|
|
67
|
+
const errors = ie6ReleaseProtocolValidationErrors(protocol);
|
|
68
|
+
if (errors.length) fail(`invalid IE6 protocol: ${errors.join("; ")}`);
|
|
69
|
+
for (const artifact of protocol.artifactBindings) {
|
|
70
|
+
let bytes;
|
|
71
|
+
try {
|
|
72
|
+
bytes = execFileSync("git", ["show", `${protocol.candidate.sourceCommit}:${artifact.path}`], { cwd: root });
|
|
73
|
+
} catch {
|
|
74
|
+
fail(`cannot read historical artifact ${artifact.path} at ${protocol.candidate.sourceCommit}`);
|
|
75
|
+
}
|
|
76
|
+
const actual = digest(bytes);
|
|
77
|
+
if (actual !== artifact.sha256) fail(`artifact binding mismatch for ${artifact.path}`);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
const chunks = ie6ChunkPlan(protocol);
|
|
81
|
+
const emptyPrerequisites = evaluateIe6Prerequisites(protocol);
|
|
82
|
+
if (options.check) {
|
|
83
|
+
process.stdout.write(`${JSON.stringify({
|
|
84
|
+
status: "valid-provider-closed",
|
|
85
|
+
protocol: protocol.id,
|
|
86
|
+
expectedPackageVersion: protocol.candidate.expectedPackageVersion,
|
|
87
|
+
totalSessions: protocol.suite.totalSessions,
|
|
88
|
+
chunks: chunks.length,
|
|
89
|
+
sessionsPerChunk: protocol.suite.maximumSessionsPerChunk,
|
|
90
|
+
providerSessionsStarted: 0,
|
|
91
|
+
providerExecutionAuthorized: false,
|
|
92
|
+
prerequisiteBlockers: emptyPrerequisites.blockers
|
|
93
|
+
}, null, 2)}\n`);
|
|
94
|
+
process.exit(0);
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
const status = execFileSync("git", ["status", "--porcelain=v1"], { cwd: root, encoding: "utf8" });
|
|
98
|
+
if (status !== "") fail("working tree must be clean before IE6 freeze");
|
|
99
|
+
const head = execFileSync("git", ["rev-parse", "HEAD"], { cwd: root, encoding: "utf8" }).trim();
|
|
100
|
+
const packageJson = JSON.parse(fs.readFileSync(path.join(root, "package.json"), "utf8"));
|
|
101
|
+
if (head !== protocol.candidate.sourceCommit) fail("historical IE7 freeze can run only at its exact source commit");
|
|
102
|
+
if (packageJson.version !== protocol.candidate.expectedPackageVersion) fail("package version does not match the IE6 protocol");
|
|
103
|
+
|
|
104
|
+
run("npm", ["run", "verify"]);
|
|
105
|
+
run("npm", ["run", "release:identity"]);
|
|
106
|
+
if (execFileSync("git", ["status", "--porcelain=v1"], { cwd: root, encoding: "utf8" }) !== "") {
|
|
107
|
+
fail("local gates mutated the frozen working tree");
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
const temporary = fs.mkdtempSync(path.join(os.tmpdir(), "piagent-ie6-freeze-"));
|
|
111
|
+
let packed;
|
|
112
|
+
try {
|
|
113
|
+
const packOutput = run("npm", ["pack", "--json", "--pack-destination", temporary]);
|
|
114
|
+
const pack = JSON.parse(packOutput)[0];
|
|
115
|
+
const tarballPath = path.join(temporary, pack.filename);
|
|
116
|
+
const tarballBytes = fs.readFileSync(tarballPath);
|
|
117
|
+
packed = {
|
|
118
|
+
filename: pack.filename,
|
|
119
|
+
packageVersion: pack.version,
|
|
120
|
+
byteSize: tarballBytes.byteLength,
|
|
121
|
+
fileCount: pack.files.length,
|
|
122
|
+
sha512: digest(tarballBytes, "sha512", "hex")
|
|
123
|
+
};
|
|
124
|
+
} finally {
|
|
125
|
+
fs.rmSync(temporary, { recursive: true, force: true });
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
const preflightArgs = ie6ReleaseArguments(protocol, { mode: "preflight" });
|
|
129
|
+
const preflight = JSON.parse(run(process.execPath, ["scripts/benchmark-runner.mjs", ...preflightArgs], { timeout: 120_000 }));
|
|
130
|
+
if (preflight.status !== "ready" || preflight.providerSessionsStarted !== 0) fail("production preflight was not provider-free and ready");
|
|
131
|
+
if (preflight.packageVersion !== packageJson.version || preflight.source?.commit !== head || preflight.source?.dirty !== false) {
|
|
132
|
+
fail("production preflight candidate identity does not match the clean release commit");
|
|
133
|
+
}
|
|
134
|
+
const localGates = Object.fromEntries(protocol.prerequisites.local.map((gate) => [gate, true]));
|
|
135
|
+
const prerequisiteState = evaluateIe6Prerequisites(protocol, {
|
|
136
|
+
local: localGates,
|
|
137
|
+
platforms: { [`${process.platform}-${process.arch}`]: true },
|
|
138
|
+
cohorts: { cohortATasks: 0, cohortBAttempts: 0, cohortCTerminalAttempts: 0 },
|
|
139
|
+
independentHumanParticipants: 0,
|
|
140
|
+
privateFamilyDisjointHoldout: false,
|
|
141
|
+
longHorizonInterruptionResume: false,
|
|
142
|
+
explicitOperatorChunkApproval: false
|
|
143
|
+
});
|
|
144
|
+
|
|
145
|
+
const receipt = {
|
|
146
|
+
schemaVersion: 1,
|
|
147
|
+
id: "ie6-release-freeze-receipt-v1",
|
|
148
|
+
generatedAt: new Date().toISOString(),
|
|
149
|
+
protocol: { id: protocol.id, sha256: digest(protocolBytes) },
|
|
150
|
+
candidate: {
|
|
151
|
+
commit: head,
|
|
152
|
+
packageVersion: packageJson.version,
|
|
153
|
+
contentDigest: preflight.candidateProvenance.contentDigest,
|
|
154
|
+
fileCount: preflight.candidateProvenance.fileCount,
|
|
155
|
+
sourceKind: preflight.source.kind,
|
|
156
|
+
clean: true
|
|
157
|
+
},
|
|
158
|
+
tarball: packed,
|
|
159
|
+
benchmark: {
|
|
160
|
+
suite: preflight.suite.id,
|
|
161
|
+
suiteDigest: preflight.suite.contentDigest,
|
|
162
|
+
configurationDigest: preflight.configuration.contentDigest,
|
|
163
|
+
runtimeDependencyDigest: preflight.configuration.runtimeDependencyDigest,
|
|
164
|
+
environmentPolicyDigest: preflight.configuration.environmentPolicyDigest,
|
|
165
|
+
model: preflight.configuration.model,
|
|
166
|
+
thinking: preflight.configuration.thinking,
|
|
167
|
+
treatment: preflight.configuration.piagentTreatment,
|
|
168
|
+
totalSessions: protocol.suite.totalSessions,
|
|
169
|
+
chunks: chunks.length,
|
|
170
|
+
sessionsPerChunk: protocol.suite.maximumSessionsPerChunk,
|
|
171
|
+
providerSessionsStarted: 0
|
|
172
|
+
},
|
|
173
|
+
localGates,
|
|
174
|
+
authorization: {
|
|
175
|
+
providerExecution: false,
|
|
176
|
+
cohortExecution: false,
|
|
177
|
+
releaseBenchmark: false,
|
|
178
|
+
tag: false,
|
|
179
|
+
push: false,
|
|
180
|
+
publish: false,
|
|
181
|
+
publicDocsPromotion: false
|
|
182
|
+
},
|
|
183
|
+
blockers: prerequisiteState.blockers
|
|
184
|
+
};
|
|
185
|
+
|
|
186
|
+
fs.mkdirSync(path.dirname(options.output), { recursive: true, mode: 0o700 });
|
|
187
|
+
const descriptor = fs.openSync(options.output, fs.constants.O_WRONLY | fs.constants.O_CREAT | fs.constants.O_EXCL, 0o600);
|
|
188
|
+
try {
|
|
189
|
+
fs.writeFileSync(descriptor, `${JSON.stringify(receipt, null, 2)}\n`);
|
|
190
|
+
fs.fsyncSync(descriptor);
|
|
191
|
+
} finally {
|
|
192
|
+
fs.closeSync(descriptor);
|
|
193
|
+
}
|
|
194
|
+
process.stdout.write(`${JSON.stringify({ output: options.output, status: "frozen-provider-closed", commit: head, candidateDigest: receipt.candidate.contentDigest, tarballSha512: packed.sha512, blockers: receipt.blockers }, null, 2)}\n`);
|
|
@@ -578,7 +578,7 @@ if ! command -v pi >/dev/null 2>&1; then
|
|
|
578
578
|
else
|
|
579
579
|
echo "FAIL: pi is not on PATH." >&2
|
|
580
580
|
echo "Install Pi first, then rerun this script." >&2
|
|
581
|
-
echo "Expected command on npm-based installs: npm install -g --ignore-scripts @earendil-works/pi-coding-agent
|
|
581
|
+
echo "Expected command on npm-based installs: npm install -g --ignore-scripts @earendil-works/pi-coding-agent@$EXPECTED_PI_VERSION" >&2
|
|
582
582
|
exit 1
|
|
583
583
|
fi
|
|
584
584
|
else
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { spawnSync } from "node:child_process";
|
|
3
|
+
|
|
4
|
+
function usage() {
|
|
5
|
+
process.stdout.write(`Usage:
|
|
6
|
+
piagent-models [--json] [--provider <provider>] [--offline]
|
|
7
|
+
|
|
8
|
+
Reads Pi's authenticated model view through \`pi --list-models\`. It never reads
|
|
9
|
+
credential storage or substitutes public provider metadata.
|
|
10
|
+
`);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
function fail(message) {
|
|
14
|
+
process.stderr.write(`FAIL: ${message}\n`);
|
|
15
|
+
process.exit(2);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
function parseArguments(values) {
|
|
19
|
+
const options = { json: false, provider: "", offline: false };
|
|
20
|
+
for (let index = 0; index < values.length; index += 1) {
|
|
21
|
+
const value = values[index];
|
|
22
|
+
if (value === "--json") options.json = true;
|
|
23
|
+
else if (value === "--offline") options.offline = true;
|
|
24
|
+
else if (value === "-h" || value === "--help") {
|
|
25
|
+
usage();
|
|
26
|
+
process.exit(0);
|
|
27
|
+
} else if (value === "--provider") {
|
|
28
|
+
const provider = values[index + 1];
|
|
29
|
+
if (!provider || provider.startsWith("--")) fail("Missing value for --provider");
|
|
30
|
+
options.provider = provider;
|
|
31
|
+
index += 1;
|
|
32
|
+
} else fail(`unknown option ${value}`);
|
|
33
|
+
}
|
|
34
|
+
return options;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
function count(value) {
|
|
38
|
+
const match = String(value ?? "").trim().match(/^(\d+(?:\.\d+)?)([KMG])?$/i);
|
|
39
|
+
if (!match) return null;
|
|
40
|
+
const scale = { K: 1_000, M: 1_000_000, G: 1_000_000_000 }[match[2]?.toUpperCase()] ?? 1;
|
|
41
|
+
return Math.round(Number(match[1]) * scale);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export function parsePiModelTable(value) {
|
|
45
|
+
const models = [];
|
|
46
|
+
for (const line of String(value ?? "").split(/\r?\n/).slice(1)) {
|
|
47
|
+
const columns = line.trim().split(/\s{2,}/);
|
|
48
|
+
if (columns.length < 6) continue;
|
|
49
|
+
const [provider, modelId, context, maxOutput, thinking, images] = columns;
|
|
50
|
+
if (!provider || !modelId) continue;
|
|
51
|
+
models.push({
|
|
52
|
+
provider,
|
|
53
|
+
modelId,
|
|
54
|
+
contextWindow: count(context),
|
|
55
|
+
maxOutputTokens: count(maxOutput),
|
|
56
|
+
reasoning: thinking === "yes" ? true : thinking === "no" ? false : null,
|
|
57
|
+
imageInput: images === "yes" ? true : images === "no" ? false : null,
|
|
58
|
+
supportedThinkingLevels: null
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
return [...new Map(models.map((model) => [`${model.provider}\u0000${model.modelId}`, model])).values()]
|
|
62
|
+
.sort((left, right) => `${left.provider}/${left.modelId}`.localeCompare(`${right.provider}/${right.modelId}`));
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export function capturePiModelCatalog(options, environment = process.env) {
|
|
66
|
+
const capturedAt = new Date().toISOString();
|
|
67
|
+
if (options.offline) return {
|
|
68
|
+
schemaVersion: 1,
|
|
69
|
+
capturedAt,
|
|
70
|
+
source: "authenticated-catalog",
|
|
71
|
+
availability: "offline",
|
|
72
|
+
piHostVersion: null,
|
|
73
|
+
models: [],
|
|
74
|
+
provenance: [{ field: "models", source: "authenticated-catalog", capturedAt }],
|
|
75
|
+
warnings: ["Authenticated model catalog was not queried in offline mode."]
|
|
76
|
+
};
|
|
77
|
+
const version = spawnSync("pi", ["--version"], { encoding: "utf8", env: environment });
|
|
78
|
+
const args = ["--list-models", ...(options.provider ? [options.provider] : [])];
|
|
79
|
+
const listed = spawnSync("pi", args, { encoding: "utf8", env: environment });
|
|
80
|
+
if (listed.error || listed.status !== 0) return {
|
|
81
|
+
schemaVersion: 1,
|
|
82
|
+
capturedAt,
|
|
83
|
+
source: "authenticated-catalog",
|
|
84
|
+
availability: "unavailable",
|
|
85
|
+
piHostVersion: version.status === 0 ? version.stdout.trim() || null : null,
|
|
86
|
+
models: [],
|
|
87
|
+
provenance: [{ field: "models", source: "authenticated-catalog", capturedAt }],
|
|
88
|
+
warnings: ["Pi authenticated model catalog is unavailable; login or runtime access may be missing."]
|
|
89
|
+
};
|
|
90
|
+
const models = parsePiModelTable(listed.stdout);
|
|
91
|
+
return {
|
|
92
|
+
schemaVersion: 1,
|
|
93
|
+
capturedAt,
|
|
94
|
+
source: "authenticated-catalog",
|
|
95
|
+
availability: models.length > 0 ? "authenticated" : "logged-out",
|
|
96
|
+
piHostVersion: version.status === 0 ? version.stdout.trim() || null : null,
|
|
97
|
+
models,
|
|
98
|
+
provenance: [
|
|
99
|
+
{ field: "models", source: "authenticated-catalog", capturedAt },
|
|
100
|
+
{ field: "piHostVersion", source: "pi-runtime", capturedAt }
|
|
101
|
+
],
|
|
102
|
+
warnings: models.length > 0 ? [] : ["Pi returned no models available through current authentication."]
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
function humanReport(report) {
|
|
107
|
+
const lines = [
|
|
108
|
+
"# Pi Agent authenticated model catalog",
|
|
109
|
+
"",
|
|
110
|
+
`source: ${report.source}`,
|
|
111
|
+
`availability: ${report.availability}`,
|
|
112
|
+
`capturedAt: ${report.capturedAt}`,
|
|
113
|
+
`piHostVersion: ${report.piHostVersion ?? "unknown"}`,
|
|
114
|
+
""
|
|
115
|
+
];
|
|
116
|
+
if (report.models.length === 0) lines.push("_No authenticated models available._");
|
|
117
|
+
else {
|
|
118
|
+
lines.push("| Provider/model | Context | Reasoning | Images |", "|---|---:|---|---|");
|
|
119
|
+
for (const model of report.models) {
|
|
120
|
+
lines.push(`| \`${model.provider}/${model.modelId}\` | ${model.contextWindow ?? "unknown"} | ${model.reasoning ?? "unknown"} | ${model.imageInput ?? "unknown"} |`);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
if (report.warnings.length > 0) lines.push("", ...report.warnings.map((warning) => `warning: ${warning}`));
|
|
124
|
+
return `${lines.join("\n")}\n`;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
if (process.argv[1] && import.meta.url === new URL(`file://${process.argv[1]}`).href) {
|
|
128
|
+
const options = parseArguments(process.argv.slice(2));
|
|
129
|
+
const report = capturePiModelCatalog(options);
|
|
130
|
+
process.stdout.write(options.json ? `${JSON.stringify(report, null, 2)}\n` : humanReport(report));
|
|
131
|
+
process.exit(report.availability === "unavailable" && !options.json ? 1 : 0);
|
|
132
|
+
}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { performance } from "node:perf_hooks";
|
|
2
|
+
|
|
3
|
+
import type { AuthenticatedModelCatalog } from "../packages/piagent-core/runtime/model/authenticated-catalog.ts";
|
|
4
|
+
import { routeParentModel } from "../packages/piagent-core/runtime/model/model-route-policy.ts";
|
|
5
|
+
import { extractTaskFeatures } from "../packages/piagent-core/runtime/solver/task-features.ts";
|
|
6
|
+
import { gradeModelRouteDecision, validateModelRouteCorpus } from "../packages/piagent-core/benchmark/model-route-grader.ts";
|
|
7
|
+
|
|
8
|
+
function catalog(kind: "full" | "target-missing" | "offline" | "reordered"): AuthenticatedModelCatalog {
|
|
9
|
+
const models = [
|
|
10
|
+
{ provider: "openai-codex", modelId: "gpt-5.6-luna", contextWindow: 200000, reasoning: true, imageInput: true, supportedThinkingLevels: ["low", "medium"] },
|
|
11
|
+
{ provider: "openai-codex", modelId: "gpt-5.6-terra", contextWindow: 200000, reasoning: true, imageInput: true, supportedThinkingLevels: ["medium", "high"] },
|
|
12
|
+
{ provider: "openai-codex", modelId: "gpt-5.6-sol", contextWindow: 200000, reasoning: true, imageInput: true, supportedThinkingLevels: ["medium", "high", "xhigh"] }
|
|
13
|
+
];
|
|
14
|
+
return {
|
|
15
|
+
schemaVersion: 1, capturedAt: "2026-08-08T00:00:00.000Z", source: "authenticated-catalog",
|
|
16
|
+
availability: kind === "offline" ? "offline" : "authenticated",
|
|
17
|
+
models: kind === "target-missing" || kind === "offline" ? [] : kind === "reordered" ? [...models].reverse() : models,
|
|
18
|
+
warnings: []
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
function percentile(values: number[], percent: number): number | null {
|
|
23
|
+
if (values.length === 0) return null;
|
|
24
|
+
const sorted = [...values].sort((left, right) => left - right);
|
|
25
|
+
return sorted[Math.min(sorted.length - 1, Math.max(0, Math.ceil(values.length * percent / 100) - 1))];
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export function evaluateModelRouteCorpus(input: unknown) {
|
|
29
|
+
const corpus = validateModelRouteCorpus(input), records: Array<Record<string, unknown>> = [], durations: number[] = [];
|
|
30
|
+
for (const template of corpus.templates) {
|
|
31
|
+
for (const variant of corpus.variants) {
|
|
32
|
+
const features = extractTaskFeatures({ ...structuredClone(corpus.defaults), ...structuredClone(template.overrides), request: template.request });
|
|
33
|
+
const policyInput = {
|
|
34
|
+
features, catalog: catalog(variant.catalog), mode: variant.mode, objective: variant.objective,
|
|
35
|
+
selectionSource: variant.selectionSource,
|
|
36
|
+
current: { provider: "openai-codex", modelId: "gpt-5.6-sol", effort: "high" },
|
|
37
|
+
freshTaskBoundary: variant.freshTaskBoundary, hostBoundary: variant.hostBoundary
|
|
38
|
+
} as const;
|
|
39
|
+
const started = performance.now(), decision = routeParentModel(policyInput); durations.push(performance.now() - started);
|
|
40
|
+
const replay = routeParentModel(policyInput);
|
|
41
|
+
records.push({
|
|
42
|
+
caseId: `${template.id}:${variant.id}`, family: template.family, split: template.split, locale: template.locale,
|
|
43
|
+
minimumFloor: template.minimumFloor, blocked: template.blocked, variantId: variant.id, featureHash: features.featureHash,
|
|
44
|
+
capabilityBand: decision.capabilityBand, safetyFloor: decision.safetyFloor, disposition: decision.disposition,
|
|
45
|
+
selectionSource: decision.selectionSource, modelId: decision.modelId, effort: decision.effort,
|
|
46
|
+
enforced: decision.enforced, decisionDigest: decision.decisionDigest, deterministicReplay: decision.decisionDigest === replay.decisionDigest,
|
|
47
|
+
violations: gradeModelRouteDecision(decision, template, variant)
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
const violationRecords = records.filter((record) => (record.violations as string[]).length > 0);
|
|
52
|
+
const serialized = JSON.stringify(records);
|
|
53
|
+
const rawPromptFindings = corpus.templates.filter((template) => serialized.includes(template.request)).length;
|
|
54
|
+
const metrics = {
|
|
55
|
+
labeledCases: records.length,
|
|
56
|
+
eligibleDecisionCoverage: records.filter((record) => Boolean(record.decisionDigest)).length / records.length,
|
|
57
|
+
deterministicReplay: records.filter((record) => record.deterministicReplay).length / records.length,
|
|
58
|
+
highRiskFalseLow: records.filter((record) => (record.violations as string[]).includes("high-risk-false-low")).length,
|
|
59
|
+
explicitPinViolations: records.filter((record) => (record.violations as string[]).includes("explicit-pin-violation")).length,
|
|
60
|
+
silentSubstitutions: records.filter((record) => (record.violations as string[]).includes("silent-substitution")).length,
|
|
61
|
+
unknownProvenanceEnforcements: records.filter((record) => (record.violations as string[]).includes("unknown-provenance-enforced")).length,
|
|
62
|
+
unsupportedHostEnforcements: records.filter((record) => (record.violations as string[]).includes("unsupported-host-enforced")).length,
|
|
63
|
+
rawPromptFindings,
|
|
64
|
+
policyP95Ms: percentile(durations, 95),
|
|
65
|
+
policyMaxMs: durations.length ? Math.max(...durations) : null
|
|
66
|
+
};
|
|
67
|
+
const gates = {
|
|
68
|
+
labeledCases: metrics.labeledCases >= 240,
|
|
69
|
+
eligibleDecisionCoverage: metrics.eligibleDecisionCoverage === 1,
|
|
70
|
+
deterministicReplay: metrics.deterministicReplay === 1,
|
|
71
|
+
noInvariantViolations: violationRecords.length === 0,
|
|
72
|
+
highRiskFalseLow: metrics.highRiskFalseLow === 0,
|
|
73
|
+
explicitPinsPreserved: metrics.explicitPinViolations === 0,
|
|
74
|
+
noSilentSubstitution: metrics.silentSubstitutions === 0,
|
|
75
|
+
unknownProvenanceFailsClosed: metrics.unknownProvenanceEnforcements === 0,
|
|
76
|
+
unsupportedHostFailsClosed: metrics.unsupportedHostEnforcements === 0,
|
|
77
|
+
privacy: metrics.rawPromptFindings === 0,
|
|
78
|
+
policyP95: (metrics.policyP95Ms ?? Infinity) < 50
|
|
79
|
+
};
|
|
80
|
+
return { schemaVersion: 1, id: corpus.id, policyVersion: corpus.policyVersion, mappingVersion: corpus.mappingVersion, generatedAt: new Date().toISOString(), methodology: { providerCalls: 0, rawPromptsStored: false, expansion: `${corpus.templates.length} templates × ${corpus.variants.length} policy/catalog variants`, labelsHiddenFromPolicy: true }, sample: { templates: corpus.templates.length, variants: corpus.variants.length, records: records.length, locales: { en: corpus.templates.filter((item) => item.locale === "en").length, vi: corpus.templates.filter((item) => item.locale === "vi").length }, splits: Object.fromEntries(["train", "validation", "holdout"].map((split) => [split, corpus.templates.filter((item) => item.split === split).length])) }, metrics, gates, violations: violationRecords, records };
|
|
81
|
+
}
|