@cassiomc1/forgeloop 1.6.5 → 1.8.0
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/DOCS_INDEX.md +1 -0
- package/GUIDE_ROUTER.md +26 -1
- package/LOOP_ENGINEERING.md +48 -0
- package/ORCHESTRATOR_INTEGRATION.md +38 -0
- package/PROTOCOL_INTEGRATION.md +62 -0
- package/README.md +25 -0
- package/benchmarks/execution-profiles/README.md +62 -0
- package/benchmarks/execution-profiles/api-feature.json +18 -0
- package/benchmarks/execution-profiles/authentication-change.json +18 -0
- package/benchmarks/execution-profiles/documentation-correction.json +18 -0
- package/benchmarks/execution-profiles/infrastructure-release.json +18 -0
- package/benchmarks/execution-profiles/novatask-saas-landing-page.json +36 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-quality-repeat5-20260831/api-feature.json +552 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-quality-repeat5-20260831/authentication-change.json +552 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-quality-repeat5-20260831/documentation-correction.json +558 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-quality-repeat5-20260831/infrastructure-release.json +552 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-quality-repeat5-20260831/novatask-saas-landing-page.json +558 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-quality-repeat5-20260831/small-bug-fix.json +552 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-quality-repeat5-20260831/static-landing-page.json +558 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-quality-repeat5-20260831/summary.json +231 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-repeat5-20260831/api-feature.json +552 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-repeat5-20260831/authentication-change.json +552 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-repeat5-20260831/documentation-correction.json +558 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-repeat5-20260831/infrastructure-release.json +552 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-repeat5-20260831/novatask-saas-landing-page.json +558 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-repeat5-20260831/small-bug-fix.json +552 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-repeat5-20260831/static-landing-page.json +558 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-repeat5-20260831/summary.json +231 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-tail-repeat20-20260831/api-feature.json +1624 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-tail-repeat20-20260831/authentication-change.json +1619 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-tail-repeat20-20260831/documentation-correction.json +1539 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-tail-repeat20-20260831/infrastructure-release.json +1633 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-tail-repeat20-20260831/novatask-saas-landing-page.json +1634 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-tail-repeat20-20260831/small-bug-fix.json +1726 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-tail-repeat20-20260831/static-landing-page.json +1625 -0
- package/benchmarks/execution-profiles/results/aggregate/codex-tail-repeat20-20260831/summary.json +826 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/api-feature/direct/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/api-feature/direct/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/api-feature/direct/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/api-feature/direct/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/api-feature/direct/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/api-feature/forgeloopAdaptive/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/api-feature/forgeloopAdaptive/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/api-feature/forgeloopAdaptive/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/api-feature/forgeloopAdaptive/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/api-feature/forgeloopAdaptive/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/api-feature/forgeloopBalanced/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/api-feature/forgeloopBalanced/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/api-feature/forgeloopBalanced/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/api-feature/forgeloopBalanced/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/api-feature/forgeloopBalanced/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/authentication-change/direct/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/authentication-change/direct/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/authentication-change/direct/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/authentication-change/direct/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/authentication-change/direct/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/authentication-change/forgeloopAdaptive/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/authentication-change/forgeloopAdaptive/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/authentication-change/forgeloopAdaptive/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/authentication-change/forgeloopAdaptive/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/authentication-change/forgeloopAdaptive/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/authentication-change/forgeloopBalanced/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/authentication-change/forgeloopBalanced/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/authentication-change/forgeloopBalanced/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/authentication-change/forgeloopBalanced/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/authentication-change/forgeloopBalanced/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/documentation-correction/direct/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/documentation-correction/direct/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/documentation-correction/direct/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/documentation-correction/direct/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/documentation-correction/direct/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/documentation-correction/forgeloopAdaptive/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/documentation-correction/forgeloopAdaptive/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/documentation-correction/forgeloopAdaptive/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/documentation-correction/forgeloopAdaptive/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/documentation-correction/forgeloopAdaptive/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/documentation-correction/forgeloopBalanced/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/documentation-correction/forgeloopBalanced/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/documentation-correction/forgeloopBalanced/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/documentation-correction/forgeloopBalanced/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/documentation-correction/forgeloopBalanced/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/infrastructure-release/direct/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/infrastructure-release/direct/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/infrastructure-release/direct/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/infrastructure-release/direct/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/infrastructure-release/direct/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/infrastructure-release/forgeloopAdaptive/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/infrastructure-release/forgeloopAdaptive/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/infrastructure-release/forgeloopAdaptive/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/infrastructure-release/forgeloopAdaptive/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/infrastructure-release/forgeloopAdaptive/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/infrastructure-release/forgeloopBalanced/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/infrastructure-release/forgeloopBalanced/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/infrastructure-release/forgeloopBalanced/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/infrastructure-release/forgeloopBalanced/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/infrastructure-release/forgeloopBalanced/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/novatask-saas-landing-page/direct/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/novatask-saas-landing-page/direct/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/novatask-saas-landing-page/direct/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/novatask-saas-landing-page/direct/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/novatask-saas-landing-page/direct/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/novatask-saas-landing-page/forgeloopBalanced/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/novatask-saas-landing-page/forgeloopBalanced/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/novatask-saas-landing-page/forgeloopBalanced/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/novatask-saas-landing-page/forgeloopBalanced/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/novatask-saas-landing-page/forgeloopBalanced/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/small-bug-fix/direct/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/small-bug-fix/direct/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/small-bug-fix/direct/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/small-bug-fix/direct/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/small-bug-fix/direct/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/small-bug-fix/forgeloopAdaptive/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/small-bug-fix/forgeloopAdaptive/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/small-bug-fix/forgeloopAdaptive/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/small-bug-fix/forgeloopAdaptive/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/small-bug-fix/forgeloopAdaptive/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/small-bug-fix/forgeloopBalanced/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/small-bug-fix/forgeloopBalanced/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/small-bug-fix/forgeloopBalanced/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/small-bug-fix/forgeloopBalanced/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/small-bug-fix/forgeloopBalanced/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/static-landing-page/direct/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/static-landing-page/direct/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/static-landing-page/direct/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/static-landing-page/direct/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/static-landing-page/direct/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/static-landing-page/forgeloopAdaptive/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/static-landing-page/forgeloopAdaptive/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/static-landing-page/forgeloopAdaptive/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/static-landing-page/forgeloopAdaptive/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/static-landing-page/forgeloopAdaptive/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/static-landing-page/forgeloopBalanced/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/static-landing-page/forgeloopBalanced/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/static-landing-page/forgeloopBalanced/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/static-landing-page/forgeloopBalanced/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-quality-repeat5-20260831/static-landing-page/forgeloopBalanced/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/api-feature/direct/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/api-feature/direct/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/api-feature/direct/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/api-feature/direct/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/api-feature/direct/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/api-feature/forgeloopAdaptive/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/api-feature/forgeloopAdaptive/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/api-feature/forgeloopAdaptive/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/api-feature/forgeloopAdaptive/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/api-feature/forgeloopAdaptive/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/api-feature/forgeloopBalanced/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/api-feature/forgeloopBalanced/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/api-feature/forgeloopBalanced/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/api-feature/forgeloopBalanced/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/api-feature/forgeloopBalanced/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/authentication-change/direct/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/authentication-change/direct/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/authentication-change/direct/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/authentication-change/direct/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/authentication-change/direct/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/authentication-change/forgeloopAdaptive/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/authentication-change/forgeloopAdaptive/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/authentication-change/forgeloopAdaptive/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/authentication-change/forgeloopAdaptive/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/authentication-change/forgeloopAdaptive/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/authentication-change/forgeloopBalanced/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/authentication-change/forgeloopBalanced/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/authentication-change/forgeloopBalanced/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/authentication-change/forgeloopBalanced/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/authentication-change/forgeloopBalanced/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/documentation-correction/direct/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/documentation-correction/direct/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/documentation-correction/direct/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/documentation-correction/direct/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/documentation-correction/direct/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/documentation-correction/forgeloopAdaptive/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/documentation-correction/forgeloopAdaptive/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/documentation-correction/forgeloopAdaptive/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/documentation-correction/forgeloopAdaptive/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/documentation-correction/forgeloopAdaptive/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/documentation-correction/forgeloopBalanced/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/documentation-correction/forgeloopBalanced/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/documentation-correction/forgeloopBalanced/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/documentation-correction/forgeloopBalanced/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/documentation-correction/forgeloopBalanced/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/infrastructure-release/direct/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/infrastructure-release/direct/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/infrastructure-release/direct/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/infrastructure-release/direct/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/infrastructure-release/direct/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/infrastructure-release/forgeloopAdaptive/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/infrastructure-release/forgeloopAdaptive/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/infrastructure-release/forgeloopAdaptive/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/infrastructure-release/forgeloopAdaptive/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/infrastructure-release/forgeloopAdaptive/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/infrastructure-release/forgeloopBalanced/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/infrastructure-release/forgeloopBalanced/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/infrastructure-release/forgeloopBalanced/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/infrastructure-release/forgeloopBalanced/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/infrastructure-release/forgeloopBalanced/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/novatask-saas-landing-page/direct/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/novatask-saas-landing-page/direct/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/novatask-saas-landing-page/direct/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/novatask-saas-landing-page/direct/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/novatask-saas-landing-page/direct/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/novatask-saas-landing-page/forgeloopBalanced/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/novatask-saas-landing-page/forgeloopBalanced/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/novatask-saas-landing-page/forgeloopBalanced/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/novatask-saas-landing-page/forgeloopBalanced/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/novatask-saas-landing-page/forgeloopBalanced/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/small-bug-fix/direct/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/small-bug-fix/direct/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/small-bug-fix/direct/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/small-bug-fix/direct/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/small-bug-fix/direct/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/small-bug-fix/forgeloopAdaptive/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/small-bug-fix/forgeloopAdaptive/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/small-bug-fix/forgeloopAdaptive/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/small-bug-fix/forgeloopAdaptive/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/small-bug-fix/forgeloopAdaptive/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/small-bug-fix/forgeloopBalanced/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/small-bug-fix/forgeloopBalanced/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/small-bug-fix/forgeloopBalanced/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/small-bug-fix/forgeloopBalanced/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/small-bug-fix/forgeloopBalanced/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/static-landing-page/direct/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/static-landing-page/direct/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/static-landing-page/direct/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/static-landing-page/direct/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/static-landing-page/direct/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/static-landing-page/forgeloopAdaptive/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/static-landing-page/forgeloopAdaptive/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/static-landing-page/forgeloopAdaptive/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/static-landing-page/forgeloopAdaptive/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/static-landing-page/forgeloopAdaptive/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/static-landing-page/forgeloopBalanced/run-001.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/static-landing-page/forgeloopBalanced/run-002.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/static-landing-page/forgeloopBalanced/run-003.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/static-landing-page/forgeloopBalanced/run-004.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-repeat5-20260831/static-landing-page/forgeloopBalanced/run-005.json +64 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-001.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-002.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-003.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-004.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-005.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-006.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-007.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-008.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-009.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-010.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-011.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-012.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-013.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-014.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-015.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-016.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-017.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-018.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-019.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/direct/run-020.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-001.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-002.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-003.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-004.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-005.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-006.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-007.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-008.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-009.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-010.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-011.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-012.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-013.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-014.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-015.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-016.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-017.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-018.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-019.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopAdaptive/run-020.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-001.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-002.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-003.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-004.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-005.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-006.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-007.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-008.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-009.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-010.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-011.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-012.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-013.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-014.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-015.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-016.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-017.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-018.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-019.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/api-feature/forgeloopBalanced/run-020.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-001.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-002.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-003.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-004.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-005.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-006.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-007.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-008.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-009.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-010.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-011.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-012.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-013.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-014.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-015.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-016.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-017.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-018.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-019.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/direct/run-020.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-001.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-002.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-003.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-004.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-005.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-006.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-007.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-008.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-009.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-010.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-011.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-012.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-013.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-014.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-015.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-016.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-017.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-018.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-019.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopAdaptive/run-020.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-001.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-002.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-003.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-004.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-005.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-006.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-007.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-008.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-009.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-010.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-011.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-012.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-013.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-014.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-015.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-016.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-017.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-018.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-019.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/authentication-change/forgeloopBalanced/run-020.json +85 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-001.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-002.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-003.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-004.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-005.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-006.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-007.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-008.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-009.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-010.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-011.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-012.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-013.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-014.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-015.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-016.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-017.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-018.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-019.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/direct/run-020.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-001.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-002.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-003.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-004.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-005.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-006.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-007.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-008.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-009.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-010.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-011.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-012.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-013.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-014.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-015.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-016.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-017.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-018.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-019.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopAdaptive/run-020.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-001.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-002.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-003.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-004.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-005.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-006.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-007.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-008.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-009.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-010.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-011.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-012.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-013.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-014.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-015.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-016.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-017.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-018.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-019.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/documentation-correction/forgeloopBalanced/run-020.json +82 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-001.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-002.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-003.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-004.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-005.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-006.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-007.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-008.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-009.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-010.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-011.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-012.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-013.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-014.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-015.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-016.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-017.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-018.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-019.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/direct/run-020.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-001.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-002.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-003.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-004.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-005.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-006.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-007.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-008.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-009.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-010.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-011.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-012.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-013.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-014.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-015.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-016.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-017.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-018.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-019.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopAdaptive/run-020.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-001.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-002.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-003.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-004.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-005.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-006.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-007.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-008.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-009.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-010.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-011.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-012.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-013.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-014.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-015.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-016.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-017.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-018.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-019.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/infrastructure-release/forgeloopBalanced/run-020.json +84 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-001.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-002.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-003.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-004.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-005.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-006.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-007.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-008.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-009.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-010.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-011.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-012.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-013.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-014.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-015.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-016.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-017.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-018.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-019.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/direct/run-020.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-001.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-002.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-003.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-004.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-005.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-006.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-007.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-008.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-009.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-010.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-011.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-012.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-013.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-014.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-015.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-016.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-017.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-018.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-019.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopAdaptive/run-020.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-001.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-002.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-003.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-004.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-005.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-006.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-007.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-008.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-009.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-010.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-011.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-012.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-013.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-014.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-015.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-016.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-017.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-018.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-019.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/novatask-saas-landing-page/forgeloopBalanced/run-020.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-001.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-002.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-003.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-004.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-005.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-006.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-007.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-008.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-009.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-010.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-011.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-012.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-013.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-014.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-015.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-016.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-017.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-018.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-019.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/direct/run-020.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-001.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-002.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-003.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-004.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-005.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-006.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-007.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-008.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-009.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-010.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-011.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-012.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-013.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-014.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-015.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-016.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-017.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-018.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-019.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopAdaptive/run-020.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-001.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-002.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-003.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-004.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-005.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-006.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-007.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-008.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-009.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-010.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-011.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-012.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-013.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-014.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-015.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-016.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-017.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-018.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-019.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/small-bug-fix/forgeloopBalanced/run-020.json +83 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-001.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-002.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-003.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-004.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-005.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-006.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-007.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-008.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-009.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-010.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-011.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-012.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-013.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-014.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-015.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-016.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-017.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-018.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-019.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/direct/run-020.json +80 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-001.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-002.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-003.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-004.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-005.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-006.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-007.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-008.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-009.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-010.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-011.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-012.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-013.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-014.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-015.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-016.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-017.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-018.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-019.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopAdaptive/run-020.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-001.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-002.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-003.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-004.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-005.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-006.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-007.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-008.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-009.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-010.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-011.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-012.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-013.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-014.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-015.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-016.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-017.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-018.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-019.json +89 -0
- package/benchmarks/execution-profiles/results/raw/codex-tail-repeat20-20260831/static-landing-page/forgeloopBalanced/run-020.json +89 -0
- package/benchmarks/execution-profiles/small-bug-fix.json +18 -0
- package/benchmarks/execution-profiles/static-landing-page.json +18 -0
- package/completions/_forgeloop +6 -4
- package/completions/forgeloop.bash +8 -4
- package/completions/forgeloop.fish +24 -1
- package/docs/AGENT_PROTOCOL_SUMMARY.md +45 -1
- package/docs/ARTIFACT_REFERENCE.md +53 -7
- package/docs/CLI_REFERENCE.md +83 -1
- package/docs/EXECUTION_PROFILE_BENCHMARKS.md +420 -0
- package/docs/GETTING_STARTED.md +28 -0
- package/docs/MCP.md +7 -1
- package/docs/RELEASE_CHECKLIST.md +11 -0
- package/docs/TROUBLESHOOTING.md +6 -0
- package/docs/UNIVERSAL_INTEGRATION.md +58 -0
- package/package.json +17 -2
- package/schemas/config.schema.json +1 -0
- package/schemas/execution-profile-benchmark-aggregate.schema.json +93 -0
- package/schemas/execution-profile-benchmark-run.schema.json +144 -0
- package/schemas/execution-profile-benchmark-scenario.schema.json +66 -0
- package/schemas/routing-result.schema.json +12 -0
- package/schemas/usage.schema.json +30 -0
- package/scripts/check-efficiency-regression.mjs +99 -0
- package/scripts/generate-agent-protocol-summary.mjs +35 -0
- package/scripts/lib/execution-profile-benchmark-io.mjs +67 -0
- package/scripts/report-execution-profile-outliers.mjs +136 -0
- package/scripts/report-tail-interpretation.mjs +156 -0
- package/scripts/run-execution-profile-benchmarks.mjs +341 -0
- package/scripts/summarize-execution-profile-benchmarks.mjs +84 -0
- package/scripts/validate-execution-profile-benchmarks.mjs +120 -0
- package/src/cli.js +16 -4
- package/src/commands/efficiency.js +12 -0
- package/src/commands/eval.js +8 -2
- package/src/commands/metrics.js +2 -2
- package/src/commands/next.js +26 -2
- package/src/commands/route.js +20 -2
- package/src/commands/task-show.js +31 -2
- package/src/commands/usage-record.js +61 -0
- package/src/core/artifact-registry.js +12 -0
- package/src/core/cli-command-definitions.js +27 -0
- package/src/core/command-executors.js +29 -5
- package/src/core/command-input.js +34 -0
- package/src/core/config.js +9 -0
- package/src/core/efficiency.js +197 -0
- package/src/core/error-codes.js +18 -0
- package/src/core/execution-profile-benchmarks.js +1148 -0
- package/src/core/execution-profile-context.js +177 -0
- package/src/core/execution-profile.js +248 -0
- package/src/core/integration-invocation-policy.js +43 -0
- package/src/core/integration-resources.js +22 -1
- package/src/core/protocol-info.js +42 -0
- package/src/core/router.js +23 -1
- package/src/core/runtime-context.js +11 -0
- package/src/core/schema-validation.js +4 -0
- package/src/core/task-paths.js +2 -0
- package/src/core/templates.js +4 -0
- package/src/core/trace.js +1 -0
- package/src/core/trajectory-evaluation.js +2 -2
- package/src/core/trajectory-metrics.js +18 -2
- package/src/core/usage.js +137 -0
- package/src/integration.d.ts +84 -0
- package/src/integration.js +14 -0
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
import path from "node:path";
|
|
4
|
+
import { fileURLToPath } from "node:url";
|
|
5
|
+
|
|
6
|
+
import { aggregateBenchmarkRuns, BENCHMARK_VERSION } from "../src/core/execution-profile-benchmarks.js";
|
|
7
|
+
import { readBenchmarkRunSets, readBenchmarkScenarios } from "./lib/execution-profile-benchmark-io.mjs";
|
|
8
|
+
|
|
9
|
+
const repositoryRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "..");
|
|
10
|
+
const defaultResultsDirectory = path.join(repositoryRoot, "benchmarks", "execution-profiles", "results");
|
|
11
|
+
|
|
12
|
+
function parseArgs(argv) {
|
|
13
|
+
const options = { results: defaultResultsDirectory, runSetId: null, json: false };
|
|
14
|
+
for (let index = 0; index < argv.length; index += 1) {
|
|
15
|
+
const argument = argv[index];
|
|
16
|
+
if (argument === "--json") options.json = true;
|
|
17
|
+
else if (["--results", "--run-set"].includes(argument)) {
|
|
18
|
+
const value = argv[++index];
|
|
19
|
+
if (!value || value.startsWith("--")) throw new Error(`${argument} requires a value`);
|
|
20
|
+
if (argument === "--results") options.results = value;
|
|
21
|
+
else options.runSetId = value;
|
|
22
|
+
} else if (argument === "--help" || argument === "-h") options.help = true;
|
|
23
|
+
else throw new Error(`unknown option: ${argument}`);
|
|
24
|
+
}
|
|
25
|
+
return options;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
function helpText() {
|
|
29
|
+
return "Usage: npm run benchmark:profiles:summary -- [--results <directory>] [--run-set <id>] [--json]";
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
async function main() {
|
|
33
|
+
const options = parseArgs(process.argv.slice(2));
|
|
34
|
+
if (options.help) {
|
|
35
|
+
console.log(helpText());
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
const scenarios = await readBenchmarkScenarios(repositoryRoot);
|
|
39
|
+
const runSets = await readBenchmarkRunSets(path.resolve(options.results), options.runSetId);
|
|
40
|
+
const summaries = [];
|
|
41
|
+
for (const runSet of runSets) {
|
|
42
|
+
const aggregates = scenarios
|
|
43
|
+
.map((scenario) => {
|
|
44
|
+
const runs = runSet.runs.filter((run) => run.scenarioId === scenario.scenarioId);
|
|
45
|
+
return runs.length > 0 ? aggregateBenchmarkRuns({ scenario, runs }) : null;
|
|
46
|
+
});
|
|
47
|
+
summaries.push({
|
|
48
|
+
runSetId: runSet.runSetId,
|
|
49
|
+
runCount: runSet.runs.length,
|
|
50
|
+
scenarioCount: aggregates.filter(Boolean).length,
|
|
51
|
+
claimsAllowed: aggregates.some((aggregate) => aggregate?.claimsAllowed === true),
|
|
52
|
+
scenarios: aggregates.filter(Boolean).map((aggregate) => ({
|
|
53
|
+
scenarioId: aggregate.scenarioId,
|
|
54
|
+
expectedProfile: aggregate.expectedProfile,
|
|
55
|
+
claimsAllowed: aggregate.claimsAllowed,
|
|
56
|
+
comparisons: aggregate.comparisons,
|
|
57
|
+
lightObjectives: aggregate.lightObjectives,
|
|
58
|
+
modeAggregates: aggregate.modeAggregates,
|
|
59
|
+
contextInflation: aggregate.contextInflation ?? null,
|
|
60
|
+
})),
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
const output = {
|
|
64
|
+
schemaVersion: 1,
|
|
65
|
+
benchmarkVersion: BENCHMARK_VERSION,
|
|
66
|
+
status: summaries.length === 0 ? "NOT_MEASURED" : "MEASURED",
|
|
67
|
+
claimsAllowed: summaries.some((summary) => summary.claimsAllowed),
|
|
68
|
+
scenarioCount: scenarios.length,
|
|
69
|
+
runSets: summaries,
|
|
70
|
+
claimPolicy: "No efficiency claim is allowed when trusted measurements are unavailable or non-comparable.",
|
|
71
|
+
};
|
|
72
|
+
if (options.json) console.log(JSON.stringify(output));
|
|
73
|
+
else {
|
|
74
|
+
console.log(`Benchmark status: ${output.status}`);
|
|
75
|
+
console.log(`Run sets: ${summaries.length}`);
|
|
76
|
+
console.log(`Claims allowed: ${output.claimsAllowed ? "yes (observational only)" : "no"}`);
|
|
77
|
+
if (summaries.length === 0) console.log("No provider or host benchmark measurements are present.");
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
main().catch((error) => {
|
|
82
|
+
console.error(`ForgeLoop benchmark summary: ${error.message}`);
|
|
83
|
+
process.exitCode = 1;
|
|
84
|
+
});
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
import { readFile, readdir } from "node:fs/promises";
|
|
4
|
+
import path from "node:path";
|
|
5
|
+
import { fileURLToPath } from "node:url";
|
|
6
|
+
|
|
7
|
+
import { assertSchema, readSchema } from "../src/core/schema-validation.js";
|
|
8
|
+
import { getPackageRoot } from "../src/core/templates.js";
|
|
9
|
+
import { aggregateBenchmarkRuns, BENCHMARK_MODES } from "../src/core/execution-profile-benchmarks.js";
|
|
10
|
+
import { readBenchmarkRunSets, readBenchmarkScenarios } from "./lib/execution-profile-benchmark-io.mjs";
|
|
11
|
+
|
|
12
|
+
const repositoryRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), "..");
|
|
13
|
+
const defaultResultsDirectory = path.join(repositoryRoot, "benchmarks", "execution-profiles", "results");
|
|
14
|
+
|
|
15
|
+
function parseArgs(argv) {
|
|
16
|
+
const options = { results: defaultResultsDirectory, json: false };
|
|
17
|
+
for (let index = 0; index < argv.length; index += 1) {
|
|
18
|
+
const argument = argv[index];
|
|
19
|
+
if (argument === "--json") options.json = true;
|
|
20
|
+
else if (argument === "--results") {
|
|
21
|
+
const value = argv[++index];
|
|
22
|
+
if (!value || value.startsWith("--")) throw new Error("--results requires a value");
|
|
23
|
+
options.results = value;
|
|
24
|
+
} else if (argument === "--help" || argument === "-h") options.help = true;
|
|
25
|
+
else throw new Error(`unknown option: ${argument}`);
|
|
26
|
+
}
|
|
27
|
+
return options;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
function assertCompleteRunSet(scenario, runs) {
|
|
31
|
+
if (runs.length === 0) throw new Error(`${scenario.scenarioId}: no raw runs found`);
|
|
32
|
+
const byMode = Object.fromEntries(BENCHMARK_MODES.map((mode) => [mode, runs.filter((run) => run.mode === mode)]));
|
|
33
|
+
const counts = new Set(BENCHMARK_MODES.map((mode) => byMode[mode].length));
|
|
34
|
+
if (counts.size !== 1 || counts.has(0)) throw new Error(`${scenario.scenarioId}: every mode must have the same non-zero run count`);
|
|
35
|
+
const expectedIndexes = byMode.direct.map((run) => run.runIndex).sort((a, b) => a - b);
|
|
36
|
+
for (const mode of BENCHMARK_MODES) {
|
|
37
|
+
const indexes = byMode[mode].map((run) => run.runIndex).sort((a, b) => a - b);
|
|
38
|
+
if (JSON.stringify(indexes) !== JSON.stringify(expectedIndexes)) {
|
|
39
|
+
throw new Error(`${scenario.scenarioId}: ${mode} run indexes do not match direct baseline`);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return aggregateBenchmarkRuns({ scenario, runs });
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
async function validateStoredAggregates(resultsDirectory, runSetId, scenarios, expectedAggregates) {
|
|
46
|
+
const schema = await readSchema("execution-profile-benchmark-aggregate", getPackageRoot());
|
|
47
|
+
const aggregateDirectory = path.join(resultsDirectory, "aggregate", runSetId);
|
|
48
|
+
const aggregateEntries = await readdir(aggregateDirectory, { withFileTypes: true });
|
|
49
|
+
const expectedNames = new Set(scenarios.map((scenario) => `${scenario.scenarioId}.json`));
|
|
50
|
+
for (const entry of aggregateEntries) {
|
|
51
|
+
if (entry.isFile() && entry.name.endsWith(".json") && entry.name !== "summary.json" && !expectedNames.has(entry.name)) {
|
|
52
|
+
throw new Error(`${runSetId}: aggregate has an unexpected scenario file: ${entry.name}`);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
for (const aggregate of expectedAggregates) {
|
|
56
|
+
const filename = path.join(resultsDirectory, "aggregate", runSetId, `${aggregate.scenarioId}.json`);
|
|
57
|
+
const stored = JSON.parse(await readFile(filename, "utf8"));
|
|
58
|
+
assertSchema(stored, schema, filename);
|
|
59
|
+
if (JSON.stringify(stored) !== JSON.stringify(aggregate)) {
|
|
60
|
+
throw new Error(`${aggregate.scenarioId}: stored aggregate does not reproduce raw measurements`);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
const summaryPath = path.join(resultsDirectory, "aggregate", runSetId, "summary.json");
|
|
64
|
+
const summary = JSON.parse(await readFile(summaryPath, "utf8"));
|
|
65
|
+
if (summary.runSetId !== runSetId
|
|
66
|
+
|| summary.scenarioCount !== scenarios.length
|
|
67
|
+
|| summary.runCount !== expectedAggregates.reduce((sum, aggregate) => sum + aggregate.generatedFromRunCount, 0)
|
|
68
|
+
|| summary.claimsAllowed !== expectedAggregates.some((aggregate) => aggregate.claimsAllowed)) {
|
|
69
|
+
throw new Error(`${runSetId}: aggregate summary identity is inconsistent`);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
async function readAggregateRunSetNames(resultsDirectory) {
|
|
74
|
+
try {
|
|
75
|
+
return (await readdir(path.join(resultsDirectory, "aggregate"), { withFileTypes: true }))
|
|
76
|
+
.filter((entry) => entry.isDirectory())
|
|
77
|
+
.map((entry) => entry.name)
|
|
78
|
+
.sort();
|
|
79
|
+
} catch (error) {
|
|
80
|
+
if (error.code === "ENOENT") return [];
|
|
81
|
+
throw error;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
async function main() {
|
|
86
|
+
const options = parseArgs(process.argv.slice(2));
|
|
87
|
+
if (options.help) {
|
|
88
|
+
console.log("Usage: npm run benchmark:profiles:check -- [--results <directory>] [--json]");
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
const scenarios = await readBenchmarkScenarios(repositoryRoot);
|
|
92
|
+
const resultsDirectory = path.resolve(options.results);
|
|
93
|
+
const runSets = await readBenchmarkRunSets(resultsDirectory);
|
|
94
|
+
const aggregateRunSetNames = await readAggregateRunSetNames(resultsDirectory);
|
|
95
|
+
const rawRunSetNames = new Set(runSets.map((runSet) => runSet.runSetId));
|
|
96
|
+
for (const name of aggregateRunSetNames) {
|
|
97
|
+
if (!rawRunSetNames.has(name)) throw new Error(`${name}: aggregate exists without raw benchmark history`);
|
|
98
|
+
}
|
|
99
|
+
if (runSets.length === 0) {
|
|
100
|
+
const output = { status: "VALID", benchmarkStatus: "NOT_MEASURED", scenarioCount: scenarios.length, runSets: 0 };
|
|
101
|
+
console.log(options.json ? JSON.stringify(output) : "Benchmark schemas valid; no measured run sets are present.");
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
const results = [];
|
|
105
|
+
for (const runSet of runSets) {
|
|
106
|
+
const aggregates = scenarios.map((scenario) => assertCompleteRunSet(
|
|
107
|
+
scenario,
|
|
108
|
+
runSet.runs.filter((run) => run.scenarioId === scenario.scenarioId),
|
|
109
|
+
));
|
|
110
|
+
await validateStoredAggregates(resultsDirectory, runSet.runSetId, scenarios, aggregates);
|
|
111
|
+
results.push({ runSetId: runSet.runSetId, runCount: runSet.runs.length, claimsAllowed: aggregates.some((aggregate) => aggregate.claimsAllowed) });
|
|
112
|
+
}
|
|
113
|
+
const output = { status: "VALID", benchmarkStatus: "MEASURED", scenarioCount: scenarios.length, runSets: results };
|
|
114
|
+
console.log(options.json ? JSON.stringify(output) : `Benchmark schemas and aggregates valid for ${results.length} run set(s).`);
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
main().catch((error) => {
|
|
118
|
+
console.error(`ForgeLoop benchmark validation: ${error.message}`);
|
|
119
|
+
process.exitCode = 1;
|
|
120
|
+
});
|
package/src/cli.js
CHANGED
|
@@ -35,6 +35,8 @@ import { formatActionVerifyResult } from "./commands/action-verify.js";
|
|
|
35
35
|
import { formatActionShowResult } from "./commands/action-show.js";
|
|
36
36
|
import { formatActionReconcileResult } from "./commands/action-reconcile.js";
|
|
37
37
|
import { formatMetricsResult } from "./commands/metrics.js";
|
|
38
|
+
import { formatUsageRecordResult } from "./commands/usage-record.js";
|
|
39
|
+
import { formatEfficiencyResult } from "./commands/efficiency.js";
|
|
38
40
|
import { formatEvalResult } from "./commands/eval.js";
|
|
39
41
|
import { formatApprovalRequestResult } from "./commands/approval-request.js";
|
|
40
42
|
import { formatApprovalResolveResult } from "./commands/approval-resolve.js";
|
|
@@ -48,14 +50,14 @@ import { formatTraceResult } from "./commands/trace.js";
|
|
|
48
50
|
import { formatReflectResult } from "./commands/reflect.js";
|
|
49
51
|
import { formatProgressResult } from "./commands/progress.js";
|
|
50
52
|
import { formatRecordDecisionCriterionResult } from "./commands/record-decision-criterion.js";
|
|
51
|
-
import { formatNextActionResult } from "./commands/next.js";
|
|
53
|
+
import { formatNextActionResult, formatCompactNextActionResult } from "./commands/next.js";
|
|
52
54
|
import { formatContinuityResult } from "./commands/continuity.js";
|
|
53
55
|
import { formatRecordContinuityResult } from "./commands/record-continuity.js";
|
|
54
56
|
import { formatReconcileContinuityResult } from "./commands/reconcile-continuity.js";
|
|
55
57
|
import { formatClearContinuityResult } from "./commands/clear-continuity.js";
|
|
56
58
|
import { formatTaskCreateResult } from "./commands/task-create.js";
|
|
57
59
|
import { formatTaskListResult } from "./commands/task-list.js";
|
|
58
|
-
import { formatTaskShowResult } from "./commands/task-show.js";
|
|
60
|
+
import { formatTaskShowResult, formatCompactTaskShowResult } from "./commands/task-show.js";
|
|
59
61
|
import { formatTaskScopeResult } from "./commands/task-scope.js";
|
|
60
62
|
import { formatTaskMigrateResult } from "./commands/task-migrate.js";
|
|
61
63
|
import { formatMigrateProtocolResult } from "./commands/migrate-protocol.js";
|
|
@@ -384,7 +386,8 @@ export const COMMAND_HANDLERS = Object.freeze({
|
|
|
384
386
|
},
|
|
385
387
|
next: async ({ target, packageRoot, options }) => {
|
|
386
388
|
const { result } = await COMMAND_EXECUTORS.next({ target, packageRoot, options });
|
|
387
|
-
|
|
389
|
+
if (options.compact) console.log(formatCompactNextActionResult(result));
|
|
390
|
+
else renderJsonOr(options, result, formatNextActionResult);
|
|
388
391
|
return 0;
|
|
389
392
|
},
|
|
390
393
|
continuity: async ({ target, packageRoot, options }) => {
|
|
@@ -510,6 +513,14 @@ export const COMMAND_HANDLERS = Object.freeze({
|
|
|
510
513
|
const { result } = await COMMAND_EXECUTORS.metrics({ target, packageRoot, options });
|
|
511
514
|
renderJsonOr(options, result, formatMetricsResult); return 0;
|
|
512
515
|
},
|
|
516
|
+
"usage-record": async ({ target, packageRoot, options }) => {
|
|
517
|
+
const { result } = await COMMAND_EXECUTORS["usage-record"]({ target, packageRoot, options });
|
|
518
|
+
renderJsonOr(options, result, formatUsageRecordResult); return 0;
|
|
519
|
+
},
|
|
520
|
+
efficiency: async ({ target, packageRoot, options }) => {
|
|
521
|
+
const { result } = await COMMAND_EXECUTORS.efficiency({ target, packageRoot, options });
|
|
522
|
+
renderJsonOr(options, result, formatEfficiencyResult); return 0;
|
|
523
|
+
},
|
|
513
524
|
eval: async ({ target, packageRoot, options }) => {
|
|
514
525
|
const { result, exitCode } = await COMMAND_EXECUTORS.eval({ target, packageRoot, options });
|
|
515
526
|
renderJsonOr(options, result, formatEvalResult); return exitCode;
|
|
@@ -677,7 +688,8 @@ export const COMMAND_HANDLERS = Object.freeze({
|
|
|
677
688
|
},
|
|
678
689
|
"task-show": async ({ target, packageRoot, options }) => {
|
|
679
690
|
const { result } = await COMMAND_EXECUTORS["task-show"]({ target, packageRoot, options });
|
|
680
|
-
|
|
691
|
+
if (options.compact) console.log(formatCompactTaskShowResult(result));
|
|
692
|
+
else renderJsonOr(options, result, formatTaskShowResult);
|
|
681
693
|
return 0;
|
|
682
694
|
},
|
|
683
695
|
"task-lock-status": async ({ target, packageRoot, options }) => {
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { buildEfficiencyReport } from "../core/efficiency.js";
|
|
2
|
+
import { withResolvedTask } from "../core/task-command.js";
|
|
3
|
+
|
|
4
|
+
export async function runEfficiency({ target, packageRoot, taskId, baselinePath = null, runtimeContext = null }) {
|
|
5
|
+
return withResolvedTask(target, { taskId, packageRoot, explicitRequired: true }, (ctx) =>
|
|
6
|
+
buildEfficiencyReport({ target, packageRoot, taskId: ctx.taskId, baselinePath, runtimeContext }));
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export function formatEfficiencyResult(result) {
|
|
10
|
+
return `${JSON.stringify(result, null, 2)}\n`;
|
|
11
|
+
}
|
|
12
|
+
|
package/src/commands/eval.js
CHANGED
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
import { evaluateTrajectory } from "../core/trajectory-evaluation.js";
|
|
2
2
|
import { withResolvedTask } from "../core/task-command.js";
|
|
3
|
-
export async function runEval({ target, packageRoot, taskId, scenarioPath }) {
|
|
4
|
-
return withResolvedTask(target, { taskId, packageRoot }, (ctx) => evaluateTrajectory({
|
|
3
|
+
export async function runEval({ target, packageRoot, taskId, scenarioPath, runtimeContext = null }) {
|
|
4
|
+
return withResolvedTask(target, { taskId, packageRoot }, (ctx) => evaluateTrajectory({
|
|
5
|
+
target,
|
|
6
|
+
packageRoot,
|
|
7
|
+
taskId: ctx.taskId,
|
|
8
|
+
scenarioPath,
|
|
9
|
+
runtimeContext,
|
|
10
|
+
}));
|
|
5
11
|
}
|
|
6
12
|
export function formatEvalResult(result) { return `${JSON.stringify(result, null, 2)}\n`; }
|
package/src/commands/metrics.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { buildTrajectoryMetrics } from "../core/trajectory-metrics.js";
|
|
2
2
|
import { withResolvedTask } from "../core/task-command.js";
|
|
3
|
-
export async function runMetrics({ target, packageRoot, taskId }) {
|
|
3
|
+
export async function runMetrics({ target, packageRoot, taskId, runtimeContext = null }) {
|
|
4
4
|
return withResolvedTask(target, { taskId, packageRoot }, (ctx) =>
|
|
5
|
-
buildTrajectoryMetrics({ target, packageRoot, taskId: ctx.taskId }));
|
|
5
|
+
buildTrajectoryMetrics({ target, packageRoot, taskId: ctx.taskId, runtimeContext }));
|
|
6
6
|
}
|
|
7
7
|
export function formatMetricsResult(result) { return `${JSON.stringify(result, null, 2)}\n`; }
|
package/src/commands/next.js
CHANGED
|
@@ -1,15 +1,35 @@
|
|
|
1
1
|
import { getNextAction } from "../core/next-action.js";
|
|
2
2
|
import { withResolvedTask } from "../core/task-command.js";
|
|
3
|
+
import { readPersistedRoute } from "../core/route-artifact.js";
|
|
4
|
+
import { projectExecutionProfile } from "../core/execution-profile.js";
|
|
3
5
|
|
|
4
|
-
export async function runNext({ target, packageRoot, taskId, task, authorityContext, runtimeContext }) {
|
|
6
|
+
export async function runNext({ target, packageRoot, taskId, task, authorityContext, runtimeContext, compact = false }) {
|
|
5
7
|
return withResolvedTask(target, { taskId: taskId ?? task, packageRoot }, async (ctx) => {
|
|
6
|
-
|
|
8
|
+
const result = await getNextAction({
|
|
7
9
|
target,
|
|
8
10
|
packageRoot,
|
|
9
11
|
taskId: ctx?.taskId ?? null,
|
|
10
12
|
authorityContext,
|
|
11
13
|
runtimeContext,
|
|
12
14
|
});
|
|
15
|
+
if (!compact) return result;
|
|
16
|
+
const compactTaskId = ctx?.taskId ?? (result.taskId && result.taskId !== "unknown" ? result.taskId : null);
|
|
17
|
+
let profile = null;
|
|
18
|
+
try {
|
|
19
|
+
const route = await readPersistedRoute(target, packageRoot, { taskId: compactTaskId });
|
|
20
|
+
profile = projectExecutionProfile(route.value);
|
|
21
|
+
} catch {
|
|
22
|
+
// Legacy and incomplete tasks remain readable without a profile.
|
|
23
|
+
}
|
|
24
|
+
return {
|
|
25
|
+
taskId: compactTaskId ?? result.taskId,
|
|
26
|
+
phase: result.currentPhase,
|
|
27
|
+
profile,
|
|
28
|
+
nextAction: result.nextAction,
|
|
29
|
+
command: result.commandSpecs?.[0]?.argv ?? [],
|
|
30
|
+
terminal: result.terminal,
|
|
31
|
+
errors: result.reasonCodes ?? result.reasons?.map((reason) => reason.code) ?? [],
|
|
32
|
+
};
|
|
13
33
|
});
|
|
14
34
|
}
|
|
15
35
|
|
|
@@ -50,3 +70,7 @@ export function formatNextActionResult(result) {
|
|
|
50
70
|
if (result.terminal) lines.push("STATE: TERMINAL");
|
|
51
71
|
return `${lines.join("\n")}\n`;
|
|
52
72
|
}
|
|
73
|
+
|
|
74
|
+
export function formatCompactNextActionResult(result) {
|
|
75
|
+
return `${JSON.stringify(result)}\n`;
|
|
76
|
+
}
|
package/src/commands/route.js
CHANGED
|
@@ -1,11 +1,24 @@
|
|
|
1
1
|
import { evaluateRoute } from "../core/router.js";
|
|
2
2
|
import { persistRoute } from "../core/route-artifact.js";
|
|
3
3
|
import { readContract } from "../core/contract.js";
|
|
4
|
+
import { readConfig } from "../core/config.js";
|
|
4
5
|
import { withTaskMutation } from "../core/task-command.js";
|
|
5
6
|
|
|
6
|
-
export async function runRoute({ target, packageRoot, workType, surfaces, risks, platforms, behaviorChange, executableChange, taskId, task }) {
|
|
7
|
+
export async function runRoute({ target, packageRoot, workType, surfaces, risks, platforms, behaviorChange, executableChange, executionProfile = null, taskId, task }) {
|
|
7
8
|
return withTaskMutation(target, { taskId: taskId ?? task, packageRoot }, "route", async (ctx) => {
|
|
8
9
|
const effectiveTaskId = ctx?.taskId ?? null;
|
|
10
|
+
let contract = null;
|
|
11
|
+
try {
|
|
12
|
+
contract = (await readContract(target, packageRoot, { taskId: effectiveTaskId })).value;
|
|
13
|
+
} catch (error) {
|
|
14
|
+
if (error.code !== "ARTIFACT_MISSING") throw error;
|
|
15
|
+
}
|
|
16
|
+
let configuredProfile = "auto";
|
|
17
|
+
try {
|
|
18
|
+
configuredProfile = (await readConfig(target, packageRoot)).executionProfile ?? "auto";
|
|
19
|
+
} catch (error) {
|
|
20
|
+
if (error.code !== "ARTIFACT_MISSING") throw error;
|
|
21
|
+
}
|
|
9
22
|
const route = evaluateRoute({
|
|
10
23
|
workType,
|
|
11
24
|
surfaces,
|
|
@@ -13,6 +26,11 @@ export async function runRoute({ target, packageRoot, workType, surfaces, risks,
|
|
|
13
26
|
platforms,
|
|
14
27
|
behaviorChange,
|
|
15
28
|
executableChange,
|
|
29
|
+
}, {
|
|
30
|
+
contract,
|
|
31
|
+
taskDescriptor: ctx?.descriptor ?? null,
|
|
32
|
+
configuredProfile,
|
|
33
|
+
requestedProfile: executionProfile,
|
|
16
34
|
});
|
|
17
35
|
if (target && packageRoot) {
|
|
18
36
|
let contractFingerprint;
|
|
@@ -28,7 +46,7 @@ export async function runRoute({ target, packageRoot, workType, surfaces, risks,
|
|
|
28
46
|
}
|
|
29
47
|
|
|
30
48
|
export function formatRouteResult(result) {
|
|
31
|
-
const lines = ["Selected:"];
|
|
49
|
+
const lines = [`Execution profile: ${result.executionProfile?.resolved ?? "legacy"}`, "Selected:"];
|
|
32
50
|
if (result.guides.length === 0) {
|
|
33
51
|
lines.push("- none (use the relevant domain guide for this documentation task)");
|
|
34
52
|
} else {
|
|
@@ -7,6 +7,8 @@ import { readContract } from "../core/contract.js";
|
|
|
7
7
|
import { fileExists, ensureWithin } from "../core/filesystem.js";
|
|
8
8
|
import { E_TASK_NOT_FOUND } from "../core/error-codes.js";
|
|
9
9
|
import { resolveTaskClaimState } from "../core/task-claim-state.js";
|
|
10
|
+
import { readPersistedRoute } from "../core/route-artifact.js";
|
|
11
|
+
import { projectExecutionProfile } from "../core/execution-profile.js";
|
|
10
12
|
|
|
11
13
|
function taskError(code, message, artifacts = []) {
|
|
12
14
|
const error = new Error(message);
|
|
@@ -15,7 +17,7 @@ function taskError(code, message, artifacts = []) {
|
|
|
15
17
|
return error;
|
|
16
18
|
}
|
|
17
19
|
|
|
18
|
-
export async function runTaskShow({ target, packageRoot, taskId } = {}) {
|
|
20
|
+
export async function runTaskShow({ target, packageRoot, taskId, compact = false } = {}) {
|
|
19
21
|
const context = await resolveTaskContext(target, { taskId, packageRoot, explicitRequired: true, selectionMode: TASK_SELECTION_MODES.READ });
|
|
20
22
|
const effectiveTaskId = context.taskId;
|
|
21
23
|
|
|
@@ -56,7 +58,7 @@ export async function runTaskShow({ target, packageRoot, taskId } = {}) {
|
|
|
56
58
|
};
|
|
57
59
|
}
|
|
58
60
|
|
|
59
|
-
|
|
61
|
+
const result = {
|
|
60
62
|
taskId: effectiveTaskId,
|
|
61
63
|
taskKey: context.taskKey,
|
|
62
64
|
directory: taskDirectory(effectiveTaskId),
|
|
@@ -69,6 +71,29 @@ export async function runTaskShow({ target, packageRoot, taskId } = {}) {
|
|
|
69
71
|
createdAt: descriptor.createdAt,
|
|
70
72
|
updatedAt: descriptor.updatedAt,
|
|
71
73
|
};
|
|
74
|
+
if (!compact) return result;
|
|
75
|
+
let profile = null;
|
|
76
|
+
try {
|
|
77
|
+
const route = await readPersistedRoute(target, packageRoot, { taskId: effectiveTaskId });
|
|
78
|
+
profile = projectExecutionProfile(route.value);
|
|
79
|
+
} catch {
|
|
80
|
+
// Legacy routes remain readable without adaptive profile metadata.
|
|
81
|
+
}
|
|
82
|
+
return {
|
|
83
|
+
taskId: result.taskId,
|
|
84
|
+
phase: result.phase,
|
|
85
|
+
profile,
|
|
86
|
+
claimState: result.claimState,
|
|
87
|
+
mutationAllowed: result.mutationAllowed,
|
|
88
|
+
recoveryStatus: result.recoveryStatus,
|
|
89
|
+
lock: result.lock?.classification?.status ?? null,
|
|
90
|
+
artifacts: Object.fromEntries(Object.entries(result.artifacts).map(([name, artifact]) => [name, artifact.exists])),
|
|
91
|
+
errors: [...new Set([
|
|
92
|
+
...(result.reasonCodes ?? []),
|
|
93
|
+
...(result.errors ?? []).flatMap((error) => [error.code, error.causeCode]).filter(Boolean),
|
|
94
|
+
...(result.ownershipErrors ?? []).flatMap((error) => [error.code, error.causeCode]).filter(Boolean),
|
|
95
|
+
])],
|
|
96
|
+
};
|
|
72
97
|
}
|
|
73
98
|
|
|
74
99
|
export function formatTaskShowResult(result) {
|
|
@@ -93,3 +118,7 @@ export function formatTaskShowResult(result) {
|
|
|
93
118
|
];
|
|
94
119
|
return `${lines.join("\n")}\n`;
|
|
95
120
|
}
|
|
121
|
+
|
|
122
|
+
export function formatCompactTaskShowResult(result) {
|
|
123
|
+
return `${JSON.stringify(result)}\n`;
|
|
124
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { readWorkState } from "../core/work-state.js";
|
|
2
|
+
import { normalizeUsage, writeTaskUsage } from "../core/usage.js";
|
|
3
|
+
import { appendProtocolEvent } from "../core/events.js";
|
|
4
|
+
import { withTaskMutation } from "../core/task-command.js";
|
|
5
|
+
|
|
6
|
+
export async function runUsageRecord({
|
|
7
|
+
target,
|
|
8
|
+
packageRoot,
|
|
9
|
+
taskId,
|
|
10
|
+
provider = null,
|
|
11
|
+
model = null,
|
|
12
|
+
inputTokens = null,
|
|
13
|
+
outputTokens = null,
|
|
14
|
+
cacheReadTokens = null,
|
|
15
|
+
cacheWriteTokens = null,
|
|
16
|
+
totalTokens = null,
|
|
17
|
+
costUsd = null,
|
|
18
|
+
source = "ACTOR_REPORTED",
|
|
19
|
+
} = {}) {
|
|
20
|
+
if (source !== "ACTOR_REPORTED") {
|
|
21
|
+
const error = new Error("usage-record accepts only ACTOR_REPORTED; provider and host reports must cross the trusted integration boundary");
|
|
22
|
+
error.code = "E_USAGE_SOURCE_INVALID";
|
|
23
|
+
throw error;
|
|
24
|
+
}
|
|
25
|
+
return withTaskMutation(target, { taskId, packageRoot }, "usage-record", async (ctx) => {
|
|
26
|
+
const effectiveTaskId = ctx.taskId;
|
|
27
|
+
const usage = normalizeUsage({
|
|
28
|
+
provider,
|
|
29
|
+
model,
|
|
30
|
+
inputTokens,
|
|
31
|
+
outputTokens,
|
|
32
|
+
cacheReadTokens,
|
|
33
|
+
cacheWriteTokens,
|
|
34
|
+
totalTokens,
|
|
35
|
+
costUsd,
|
|
36
|
+
source,
|
|
37
|
+
}, { allowedSources: ["ACTOR_REPORTED"] });
|
|
38
|
+
const state = await readWorkState(target, { packageRoot, taskId: effectiveTaskId });
|
|
39
|
+
const artifact = await writeTaskUsage(target, packageRoot, {
|
|
40
|
+
taskId: effectiveTaskId,
|
|
41
|
+
usage,
|
|
42
|
+
recordedAt: new Date().toISOString(),
|
|
43
|
+
});
|
|
44
|
+
await appendProtocolEvent(target, {
|
|
45
|
+
taskId: effectiveTaskId,
|
|
46
|
+
event: "USAGE_RECORDED",
|
|
47
|
+
details: {
|
|
48
|
+
source: usage.source,
|
|
49
|
+
fields: Object.keys(usage).filter((key) => usage[key] !== null && key !== "source").sort(),
|
|
50
|
+
verificationCycle: state?.verificationCycle ?? null,
|
|
51
|
+
usageArtifact: artifact.path,
|
|
52
|
+
},
|
|
53
|
+
}, packageRoot, { taskId: effectiveTaskId });
|
|
54
|
+
return { taskId: effectiveTaskId, path: artifact.path, usage: artifact.value.usage, recordedAt: artifact.value.recordedAt };
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
export function formatUsageRecordResult(result) {
|
|
59
|
+
return `Usage recorded: ${result.path}\nSource: ${result.usage.source}\nTotal tokens: ${result.usage.totalTokens ?? "unknown"}\n`;
|
|
60
|
+
}
|
|
61
|
+
|
|
@@ -283,6 +283,18 @@ export const ARTIFACT_REGISTRY = Object.freeze({
|
|
|
283
283
|
isPersisted: true,
|
|
284
284
|
description: "Immutable trajectory evaluation results compiled from the canonical trace against a local reference scenario.",
|
|
285
285
|
}),
|
|
286
|
+
usage: Object.freeze({
|
|
287
|
+
key: "usage",
|
|
288
|
+
scope: "TASK",
|
|
289
|
+
path: `${TASK_STATE_ROOT}/<task-key>/${TASK_ARTIFACT_FILES.usage}`,
|
|
290
|
+
schema: "usage",
|
|
291
|
+
owner: "ACTOR_OR_TRUSTED_HOST",
|
|
292
|
+
mutability: "OVERWRITTEN_ON_USAGE_RECORD",
|
|
293
|
+
trustRole: "INFORMATIONAL_USAGE_TELEMETRY",
|
|
294
|
+
isPublic: true,
|
|
295
|
+
isPersisted: true,
|
|
296
|
+
description: "Task-scoped token, cost, model, and provider telemetry; never verification or completion evidence.",
|
|
297
|
+
}),
|
|
286
298
|
workspaceBinding: Object.freeze({
|
|
287
299
|
key: "workspaceBinding",
|
|
288
300
|
scope: "TASK",
|
|
@@ -139,6 +139,7 @@ export const CLI_COMMAND_DEFINITIONS = Object.freeze({
|
|
|
139
139
|
"--platform": Object.freeze({ targetKey: "platforms", parseType: "string", takesValue: true, valueName: "value", repeatable: true, missingValueMessage: "--platform requires a value", description: "affected platform" }),
|
|
140
140
|
"--behavior-change": Object.freeze({ targetKey: "behaviorChange", parseType: "boolean", takesValue: false, description: "declare behavior change" }),
|
|
141
141
|
"--executable-change": Object.freeze({ targetKey: "executableChange", parseType: "boolean", takesValue: false, description: "declare executable/configuration change" }),
|
|
142
|
+
"--execution-profile": Object.freeze({ targetKey: "executionProfile", parseType: "string", takesValue: true, valueName: "profile", missingValueMessage: "--execution-profile requires auto, light, balanced, or full", description: "requested execution profile; safety floors always win" }),
|
|
142
143
|
"--json": Object.freeze({ targetKey: "json", parseType: "boolean", takesValue: false, description: "emit route result as JSON" }),
|
|
143
144
|
}),
|
|
144
145
|
writes: [".forgeloop/task-state/<taskKey>/routing-result.json"],
|
|
@@ -183,6 +184,7 @@ export const CLI_COMMAND_DEFINITIONS = Object.freeze({
|
|
|
183
184
|
options: Object.freeze({
|
|
184
185
|
...CLI_COMMON_OPTIONS,
|
|
185
186
|
...CLI_TASK_OPTION,
|
|
187
|
+
"--compact": Object.freeze({ targetKey: "compact", parseType: "boolean", takesValue: false, description: "emit a bounded next-action projection" }),
|
|
186
188
|
"--json": Object.freeze({ targetKey: "json", parseType: "boolean", takesValue: false, description: "emit structured output as JSON" }),
|
|
187
189
|
}),
|
|
188
190
|
writes: [],
|
|
@@ -381,6 +383,30 @@ export const CLI_COMMAND_DEFINITIONS = Object.freeze({
|
|
|
381
383
|
}), writes: [], removes: [], mayExecuteExternalProcess: false,
|
|
382
384
|
description: "Projects trajectory, action, execution, timing, and known usage metrics without mutating state.",
|
|
383
385
|
}),
|
|
386
|
+
"usage-record": Object.freeze({
|
|
387
|
+
name: "usage-record", category: "diagnostics", mutation: "MUTATING",
|
|
388
|
+
options: Object.freeze({ ...CLI_COMMON_OPTIONS, ...CLI_TASK_OPTION,
|
|
389
|
+
"--provider": Object.freeze({ targetKey: "usageProvider", parseType: "string", takesValue: true, valueName: "name", missingValueMessage: "--provider requires a name", description: "provider name reported by the actor" }),
|
|
390
|
+
"--model": Object.freeze({ targetKey: "usageModel", parseType: "string", takesValue: true, valueName: "name", missingValueMessage: "--model requires a name", description: "model name reported by the actor" }),
|
|
391
|
+
"--input-tokens": Object.freeze({ targetKey: "usageInputTokens", parseType: "non-negative-integer", takesValue: true, valueName: "number", missingValueMessage: "--input-tokens requires a non-negative integer", description: "provider-reported input token count" }),
|
|
392
|
+
"--output-tokens": Object.freeze({ targetKey: "usageOutputTokens", parseType: "non-negative-integer", takesValue: true, valueName: "number", missingValueMessage: "--output-tokens requires a non-negative integer", description: "provider-reported output token count" }),
|
|
393
|
+
"--cache-read-tokens": Object.freeze({ targetKey: "usageCacheReadTokens", parseType: "non-negative-integer", takesValue: true, valueName: "number", missingValueMessage: "--cache-read-tokens requires a non-negative integer", description: "provider-reported cache-read token count" }),
|
|
394
|
+
"--cache-write-tokens": Object.freeze({ targetKey: "usageCacheWriteTokens", parseType: "non-negative-integer", takesValue: true, valueName: "number", missingValueMessage: "--cache-write-tokens requires a non-negative integer", description: "provider-reported cache-write token count" }),
|
|
395
|
+
"--total-tokens": Object.freeze({ targetKey: "usageTotalTokens", parseType: "non-negative-integer", takesValue: true, valueName: "number", missingValueMessage: "--total-tokens requires a non-negative integer", description: "provider-reported total token count; never estimated" }),
|
|
396
|
+
"--cost-usd": Object.freeze({ targetKey: "usageCostUsd", parseType: "string", takesValue: true, valueName: "amount", missingValueMessage: "--cost-usd requires a non-negative amount", description: "provider-reported cost in USD; never estimated" }),
|
|
397
|
+
"--source": Object.freeze({ targetKey: "usageSource", parseType: "string", takesValue: true, valueName: "kind", missingValueMessage: "--source requires ACTOR_REPORTED", description: "usage source; CLI fallback accepts only ACTOR_REPORTED" }),
|
|
398
|
+
"--json": Object.freeze({ targetKey: "json", parseType: "boolean", takesValue: false, description: "emit usage telemetry as JSON" }),
|
|
399
|
+
}), writes: [".forgeloop/task-state/<taskKey>/usage.json", ".forgeloop/task-state/<taskKey>/events.ndjson"], removes: [], mayExecuteExternalProcess: false,
|
|
400
|
+
description: "Records actor-reported usage telemetry without treating it as verification evidence.",
|
|
401
|
+
}),
|
|
402
|
+
efficiency: Object.freeze({
|
|
403
|
+
name: "efficiency", category: "diagnostics", mutation: "READ_ONLY",
|
|
404
|
+
options: Object.freeze({ ...CLI_COMMON_OPTIONS, ...CLI_TASK_OPTION,
|
|
405
|
+
"--baseline": Object.freeze({ targetKey: "baselinePath", parseType: "string", takesValue: true, valueName: "path", missingValueMessage: "--baseline requires a project-local path", description: "optional comparable efficiency baseline JSON" }),
|
|
406
|
+
"--json": Object.freeze({ targetKey: "json", parseType: "boolean", takesValue: false, description: "emit efficiency metrics as JSON" }),
|
|
407
|
+
}), writes: [], removes: [], mayExecuteExternalProcess: false,
|
|
408
|
+
description: "Projects usage and timing efficiency, comparing only against a metadata-compatible local baseline.",
|
|
409
|
+
}),
|
|
384
410
|
eval: Object.freeze({
|
|
385
411
|
name: "eval", category: "diagnostics", mutation: "MUTATING",
|
|
386
412
|
options: Object.freeze({ ...CLI_COMMON_OPTIONS, ...CLI_TASK_OPTION,
|
|
@@ -900,6 +926,7 @@ export const CLI_COMMAND_DEFINITIONS = Object.freeze({
|
|
|
900
926
|
options: Object.freeze({
|
|
901
927
|
...CLI_COMMON_OPTIONS,
|
|
902
928
|
...CLI_TASK_OPTION,
|
|
929
|
+
"--compact": Object.freeze({ targetKey: "compact", parseType: "boolean", takesValue: false, description: "emit a bounded task-status projection" }),
|
|
903
930
|
"--json": Object.freeze({ targetKey: "json", parseType: "boolean", takesValue: false, description: "emit structured output as JSON" }),
|
|
904
931
|
}),
|
|
905
932
|
writes: [],
|