@llm4ts/shell 0.17.0 → 0.18.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/dist/Cli.d.ts +4 -0
- package/dist/Cli.d.ts.map +1 -1
- package/dist/Cli.js +69 -8
- package/dist/Cli.js.map +1 -1
- package/dist/FlowCatalog.d.ts +10 -4
- package/dist/FlowCatalog.d.ts.map +1 -1
- package/dist/FlowCatalog.js +25 -14
- package/dist/FlowCatalog.js.map +1 -1
- package/flows/epic-stories.js +1 -8
- package/flows/hello.js +15 -0
- package/flows/implement.js +1 -8
- package/flows/issue-pr.js +1 -8
- package/flows/judge-suite.js +1 -4
- package/flows/lib/epic-stories.js +3 -4
- package/flows/local.js +2 -5
- package/flows/modernize-bench.js +3 -12
- package/flows/modernize-extract.js +8 -18
- package/flows/modernize-implement.js +4 -15
- package/flows/modernize-pack-check.js +1 -8
- package/flows/modernize-review.js +4 -13
- package/flows/modernize-seed.js +3 -11
- package/flows/modernize-survey.js +0 -0
- package/flows/modernize-verify.js +5 -13
- package/flows/sdd.js +2 -12
- package/kits/j2ee-nextjs/README.md +29 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/RUNBOOK.md +156 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/PAGES.md +67 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/pom.xml +49 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/java/com/demobank/legacy/dto/AcctOvwDTO.java +58 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/java/com/demobank/legacy/dto/BenfDTO.java +49 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/java/com/demobank/legacy/dto/TrfDTO.java +70 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/java/com/demobank/legacy/esb/EsbAcctListService.java +53 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/java/com/demobank/legacy/esb/EsbBenfListService.java +58 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/java/com/demobank/legacy/esb/EsbBenfMaintService.java +58 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/java/com/demobank/legacy/esb/EsbException.java +21 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/java/com/demobank/legacy/esb/EsbGateway.java +44 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/java/com/demobank/legacy/esb/EsbTrfExecService.java +53 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/java/com/demobank/legacy/esb/EsbTrfValidateService.java +45 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/java/com/demobank/legacy/web/AccountOverviewServlet.java +90 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/java/com/demobank/legacy/web/BeneficiaryServlet.java +195 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/java/com/demobank/legacy/web/TransferDraft.java +62 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/java/com/demobank/legacy/web/TransferServlet.java +223 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/WEB-INF/web.xml +59 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/accountOverview.jsp +65 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/beneficiaryEdit.jsp +70 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/beneficiaryList.jsp +43 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/css/bank.css +132 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/dashboard.jsp +28 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/footer.jsp +8 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/header.jsp +22 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/help.jsp +32 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/js/jquery-1.12.4.min.js +1 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/js/validate.js +79 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/login.jsp +29 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/messages.jsp +34 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/nav.jsp +14 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/oldTransfer.jsp +34 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/profile.jsp +26 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/promoQ3.jsp +23 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/settings.jsp +34 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/testHarness.jsp +39 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/transferConfirm.jsp +35 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/transferStep1.jsp +73 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/legacy-j2ee/src/main/webapp/transferStep2.jsp +40 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/CONTRIBUTING.md +76 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/README.md +46 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/contracts/cards.openapi.yaml +57 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/contracts/profile.openapi.yaml +73 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/eslint.config.mjs +24 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/next-env.d.ts +5 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/next.config.mjs +10 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/package.json +29 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/pnpm-lock.yaml +2895 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/app/cards/page.tsx +62 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/app/layout.tsx +41 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/app/page.tsx +26 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/app/profile/page.tsx +134 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/app/signed-in-badge.tsx +9 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/auth/AuthProvider.tsx +36 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/components/Button.tsx +27 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/components/Card.tsx +18 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/components/DataTable.tsx +57 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/components/Field.tsx +34 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/components/Form.tsx +70 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/components/PageLayout.tsx +39 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/components/Stepper.tsx +29 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/components/index.ts +19 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/services/cards/mock.ts +47 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/services/cards/port.ts +31 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/services/profile/mock.ts +45 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/services/profile/port.ts +24 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/services/registry.ts +20 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/theme/components.css +269 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/src/theme/tokens.css +38 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/tests/cards.page.test.tsx +81 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/tests/profile.page.test.tsx +87 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/tsconfig.json +54 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/nextjs/vitest.config.ts +17 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/preflight.mjs +45 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/reset-demo.mjs +40 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/seed-legacy-j2ee.mjs +71 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/seed-nextjs.mjs +111 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/smoke-legacy-j2ee.mjs +144 -0
- package/kits/j2ee-nextjs/fixtures/demo-bank/smoke-nextjs.mjs +118 -0
- package/{flows → kits/j2ee-nextjs/flows}/convert-all.js +1 -7
- package/{flows → kits/j2ee-nextjs/flows}/convert-page.js +2 -6
- package/{flows → kits/j2ee-nextjs/flows}/lib/convert.js +6 -16
- package/{flows → kits/j2ee-nextjs}/packs/j2ee-nextjs-spa/pack.md +1 -1
- package/{flows → kits/j2ee-nextjs}/packs/jsp-bff-nextjs/pack.md +1 -1
- package/{flows → kits/j2ee-nextjs}/packs/jsp-nextjs/pack.md +1 -1
- package/kits/mainframe-java/README.md +31 -0
- package/{flows → kits/mainframe-java}/packs/ace-integration/pack.md +1 -1
- package/{flows → kits/mainframe-java}/packs/ace-kafka/pack.md +1 -1
- package/{flows → kits/mainframe-java}/packs/cobol-kafka/pack.md +1 -1
- package/{flows → kits/mainframe-java}/packs/cobol-springboot/pack.md +1 -1
- package/package.json +6 -6
- package/src/Cli.ts +92 -9
- package/src/FlowCatalog.ts +29 -13
- /package/{flows → kits/j2ee-nextjs}/packs/j2ee-nextjs-spa/patterns/PAT-J2EE-001-jstl-table.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/j2ee-nextjs-spa/patterns/PAT-J2EE-002-jquery-validation.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/j2ee-nextjs-spa/patterns/PAT-J2EE-003-session-stepper.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/j2ee-nextjs-spa/patterns/PAT-J2EE-004-esb-port.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/j2ee-nextjs-spa/patterns/PAT-J2EE-005-include-shell.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/j2ee-nextjs-spa/prompts/analysis.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/j2ee-nextjs-spa/prompts/bdd.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/j2ee-nextjs-spa/prompts/implement.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/j2ee-nextjs-spa/prompts/plan.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/j2ee-nextjs-spa/prompts/review.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/j2ee-nextjs-spa/prompts/spec.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/j2ee-nextjs-spa/prompts/survey-refine.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/j2ee-nextjs-spa/prompts/survey-triage.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/j2ee-nextjs-spa/reviewers/acl-purity.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/j2ee-nextjs-spa/reviewers/house-style.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-bff-nextjs/lessons.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-bff-nextjs/prompts/analysis.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-bff-nextjs/prompts/bdd.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-bff-nextjs/prompts/implement.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-bff-nextjs/prompts/plan.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-bff-nextjs/prompts/review.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-bff-nextjs/prompts/spec.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-bff-nextjs/prompts/survey-refine.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-bff-nextjs/prompts/survey-triage.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-bff-nextjs/reviewers/bff-boundary.md +0 -0
- /package/{flows/packs/ace-integration → kits/j2ee-nextjs/packs/jsp-bff-nextjs}/reviewers/traceability.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-nextjs/lessons.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-nextjs/prompts/analysis.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-nextjs/prompts/bdd.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-nextjs/prompts/implement.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-nextjs/prompts/plan.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-nextjs/prompts/review.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-nextjs/prompts/spec.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-nextjs/prompts/survey-refine.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-nextjs/prompts/survey-triage.md +0 -0
- /package/{flows/packs/ace-kafka → kits/j2ee-nextjs/packs/jsp-nextjs}/reviewers/traceability.md +0 -0
- /package/{flows → kits/j2ee-nextjs}/packs/jsp-nextjs/reviewers/ux-fidelity.md +0 -0
- /package/{flows/fixtures → kits/j2ee-nextjs}/scaffolds/nextjs-spa/README.md +0 -0
- /package/{flows/fixtures → kits/j2ee-nextjs}/scaffolds/nextjs-spa/app/layout.js +0 -0
- /package/{flows/fixtures → kits/j2ee-nextjs}/scaffolds/nextjs-spa/app/page.js +0 -0
- /package/{flows/fixtures/scaffolds/kafka-streams-service/src/test/resources/features → kits/j2ee-nextjs/scaffolds/nextjs-spa/docs/specs}/.gitkeep +0 -0
- /package/{flows/fixtures/scaffolds/nextjs-spa/docs/specs → kits/j2ee-nextjs/scaffolds/nextjs-spa/features}/.gitkeep +0 -0
- /package/{flows/fixtures → kits/j2ee-nextjs}/scaffolds/nextjs-spa/next.config.js +0 -0
- /package/{flows/fixtures → kits/j2ee-nextjs}/scaffolds/nextjs-spa/package.json +0 -0
- /package/{flows/fixtures → kits/j2ee-nextjs}/scaffolds/nextjs-spa/tests/smoke.test.js +0 -0
- /package/{flows/fixtures → kits/j2ee-nextjs}/scaffolds/spring-bff/README.md +0 -0
- /package/{flows/fixtures → kits/j2ee-nextjs}/scaffolds/spring-bff/frontend/app/layout.js +0 -0
- /package/{flows/fixtures → kits/j2ee-nextjs}/scaffolds/spring-bff/frontend/app/page.js +0 -0
- /package/{flows/fixtures → kits/j2ee-nextjs}/scaffolds/spring-bff/frontend/next.config.js +0 -0
- /package/{flows/fixtures → kits/j2ee-nextjs}/scaffolds/spring-bff/frontend/package.json +0 -0
- /package/{flows/fixtures → kits/j2ee-nextjs}/scaffolds/spring-bff/frontend/tests/smoke.test.js +0 -0
- /package/{flows/fixtures → kits/j2ee-nextjs}/scaffolds/spring-bff/pom.xml +0 -0
- /package/{flows/fixtures → kits/j2ee-nextjs}/scaffolds/spring-bff/scripts/test.sh +0 -0
- /package/{flows/fixtures → kits/j2ee-nextjs}/scaffolds/spring-bff/src/main/java/com/meridian/bff/Application.java +0 -0
- /package/{flows/fixtures → kits/j2ee-nextjs}/scaffolds/spring-bff/src/main/resources/application.yaml +0 -0
- /package/{flows/fixtures → kits/j2ee-nextjs}/scaffolds/spring-bff/src/test/java/com/meridian/bff/ApplicationTests.java +0 -0
- /package/{flows/fixtures/scaffolds/nextjs-spa → kits/j2ee-nextjs/scaffolds/spring-bff/src/test/resources}/features/.gitkeep +0 -0
- /package/{flows → kits/mainframe-java}/packs/ace-integration/lessons.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/ace-integration/prompts/analysis.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/ace-integration/prompts/bdd.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/ace-integration/prompts/implement.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/ace-integration/prompts/plan.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/ace-integration/prompts/review.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/ace-integration/prompts/spec.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/ace-integration/reviewers/routing-fidelity.md +0 -0
- /package/{flows/packs/cobol-kafka → kits/mainframe-java/packs/ace-integration}/reviewers/traceability.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/ace-kafka/lessons.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/ace-kafka/prompts/analysis.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/ace-kafka/prompts/bdd.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/ace-kafka/prompts/implement.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/ace-kafka/prompts/plan.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/ace-kafka/prompts/review.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/ace-kafka/prompts/spec.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/ace-kafka/prompts/vectors.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/ace-kafka/reviewers/event-contracts.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/ace-kafka/reviewers/routing-fidelity.md +0 -0
- /package/{flows/packs/cobol-springboot → kits/mainframe-java/packs/ace-kafka}/reviewers/traceability.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/lessons.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/patterns/PAT-STREAM-001-record-to-event.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/patterns/PAT-STREAM-002-job-step-topology.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/patterns/PAT-STREAM-003-checkpoint-idempotence.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/patterns/PAT-STREAM-004-eod-totals-window.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/patterns/PAT-STREAM-005-reject-topic.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/patterns/PAT-STREAM-006-keyed-state-store.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/patterns/PAT-STREAM-007-outbox.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/patterns/PAT-STREAM-008-partition-key.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/patterns/PAT-STREAM-009-batch-window-cutoff.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/patterns/PAT-STREAM-010-replay-backfill.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/prompts/analysis.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/prompts/bdd.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/prompts/implement.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/prompts/plan.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/prompts/review.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/prompts/spec.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/prompts/survey-refine.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/prompts/survey-triage.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/prompts/vectors.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/reviewers/cobol-fidelity.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-kafka/reviewers/pattern-conformance.md +0 -0
- /package/{flows/packs/jsp-bff-nextjs → kits/mainframe-java/packs/cobol-kafka}/reviewers/traceability.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-springboot/lessons.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-springboot/prompts/analysis.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-springboot/prompts/bdd.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-springboot/prompts/implement.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-springboot/prompts/plan.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-springboot/prompts/review.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-springboot/prompts/spec.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-springboot/prompts/survey-refine.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-springboot/prompts/survey-triage.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-springboot/prompts/vectors.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-springboot/reviewers/cobol-fidelity.md +0 -0
- /package/{flows → kits/mainframe-java}/packs/cobol-springboot/reviewers/pattern-conformance.md +0 -0
- /package/{flows/packs/jsp-nextjs → kits/mainframe-java/packs/cobol-springboot}/reviewers/traceability.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-001-comp3-money.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-002-redefines.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-003-88-levels.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-004-perform-thru.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-005-file-status.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-006-sqlcode.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-007-validation-order.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-008-zoned-decimal.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-009-occurs-table.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-010-copybook-record.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-011-batch-counters.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-012-commit-frequency.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-013-abend.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-014-reject-file.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-015-accept-date.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-016-string-building.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-017-cursor-loop.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-018-yn-switches.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-019-shared-accumulators.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-020-tiered-fees.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-021-overdraft-floor.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-022-jcl-job-net.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-023-sort-step.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-024-fixed-width-records.md +0 -0
- /package/{flows → kits/mainframe-java}/patterns/PAT-COBOL-025-audit-rows.md +0 -0
- /package/{flows/fixtures → kits/mainframe-java}/scaffolds/kafka-streams-service/README.md +0 -0
- /package/{flows/fixtures → kits/mainframe-java}/scaffolds/kafka-streams-service/pom.xml +0 -0
- /package/{flows/fixtures → kits/mainframe-java}/scaffolds/kafka-streams-service/scripts/replay.sh +0 -0
- /package/{flows/fixtures → kits/mainframe-java}/scaffolds/kafka-streams-service/src/main/java/com/meridian/scaffold/Application.java +0 -0
- /package/{flows/fixtures → kits/mainframe-java}/scaffolds/kafka-streams-service/src/test/java/com/meridian/scaffold/ApplicationTests.java +0 -0
- /package/{flows/fixtures/scaffolds/spring-bff → kits/mainframe-java/scaffolds/kafka-streams-service}/src/test/resources/features/.gitkeep +0 -0
- /package/{flows/fixtures → kits/mainframe-java}/scaffolds/spring-boot-service/README.md +0 -0
- /package/{flows/fixtures → kits/mainframe-java}/scaffolds/spring-boot-service/pom.xml +0 -0
- /package/{flows/fixtures → kits/mainframe-java}/scaffolds/spring-boot-service/scripts/replay.sh +0 -0
- /package/{flows/fixtures → kits/mainframe-java}/scaffolds/spring-boot-service/src/main/java/com/meridian/scaffold/Application.java +0 -0
- /package/{flows/fixtures → kits/mainframe-java}/scaffolds/spring-boot-service/src/main/resources/application.yaml +0 -0
- /package/{flows/fixtures → kits/mainframe-java}/scaffolds/spring-boot-service/src/test/java/com/meridian/scaffold/ApplicationTests.java +0 -0
- /package/{flows/fixtures → kits/mainframe-java}/scaffolds/spring-boot-service/src/test/resources/features/.gitkeep +0 -0
package/dist/Cli.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import * as Effect from "effect/Effect";
|
|
|
2
2
|
import { FileSystem } from "effect/FileSystem";
|
|
3
3
|
import * as Schema from "effect/Schema";
|
|
4
4
|
import * as Command from "effect/unstable/cli/Command";
|
|
5
|
+
import { type DiscoveredKit } from "@llm4ts/runner/Kits";
|
|
5
6
|
import { type DiscoveredFlow, type FlowTierPaths } from "./FlowCatalog.ts";
|
|
6
7
|
declare const ShellUsageError_base: Schema.Class<ShellUsageError, Schema.TaggedStruct<"ShellUsage", {
|
|
7
8
|
readonly message: Schema.String;
|
|
@@ -18,6 +19,9 @@ export declare const shellTierPaths: (options?: {
|
|
|
18
19
|
readonly cwd?: string;
|
|
19
20
|
readonly environment?: Readonly<Record<string, string | undefined>>;
|
|
20
21
|
}) => FlowTierPaths;
|
|
22
|
+
export declare const renderKitList: (kits: ReadonlyArray<DiscoveredKit>, options?: {
|
|
23
|
+
readonly json?: boolean;
|
|
24
|
+
}) => string;
|
|
21
25
|
export declare const renderFlowList: (flows: ReadonlyArray<DiscoveredFlow>, options?: {
|
|
22
26
|
readonly json?: boolean;
|
|
23
27
|
}) => string;
|
package/dist/Cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Cli.d.ts","sourceRoot":"","sources":["../src/Cli.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,OAAO,MAAM,6BAA6B,CAAA;AAItD,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,aAAa,EACnB,MAAM,kBAAkB,CAAA;;;;AAKzB,qBAAa,eAAgB,SAAQ,oBAEnC;CAAG;;;;AAEL,qBAAa,gBAAiB,SAAQ,qBAEpC;CAAG;AAEL,eAAO,MAAM,eAAe,QAAO,MAA6D,CAAA;AAEhG,eAAO,MAAM,cAAc,GAAI,UAAU;IACvC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAA;CACpE,KAAG,
|
|
1
|
+
{"version":3,"file":"Cli.d.ts","sourceRoot":"","sources":["../src/Cli.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,OAAO,MAAM,6BAA6B,CAAA;AAItD,OAAO,EAA8C,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACpG,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,aAAa,EACnB,MAAM,kBAAkB,CAAA;;;;AAKzB,qBAAa,eAAgB,SAAQ,oBAEnC;CAAG;;;;AAEL,qBAAa,gBAAiB,SAAQ,qBAEpC;CAAG;AAEL,eAAO,MAAM,eAAe,QAAO,MAA6D,CAAA;AAEhG,eAAO,MAAM,cAAc,GAAI,UAAU;IACvC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAA;CACpE,KAAG,aAaH,CAAA;AAQD,eAAO,MAAM,aAAa,GACxB,MAAM,aAAa,CAAC,aAAa,CAAC,EAClC,UAAU;IAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,KACpC,MA+BF,CAAA;AAED,eAAO,MAAM,cAAc,GACzB,OAAO,aAAa,CAAC,cAAc,CAAC,EACpC,UAAU;IAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,KACpC,MAyBF,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,WAAW,iGAwBtB,CAAA;AAgJF,eAAO,MAAM,YAAY,0KAqBxB,CAAA;AAED,eAAO,MAAM,eAAe,GAC1B,MAAM,aAAa,CAAC,MAAM,CAAC,KAC1B,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,WAAW,CACe,CAAA"}
|
package/dist/Cli.js
CHANGED
|
@@ -9,6 +9,7 @@ import * as Command from "effect/unstable/cli/Command";
|
|
|
9
9
|
import * as Flag from "effect/unstable/cli/Flag";
|
|
10
10
|
import { makeCliProgram } from "@llm4ts/runner/Cli";
|
|
11
11
|
import { makeDoctorProgram } from "@llm4ts/runner/Doctor";
|
|
12
|
+
import { builtinKitsDir, discoverKits, kitTierPaths } from "@llm4ts/runner/Kits";
|
|
12
13
|
import { defaultTierPaths, discoverFlows } from "./FlowCatalog.js";
|
|
13
14
|
import { launchFlow } from "./FlowLaunch.js";
|
|
14
15
|
import { mainMenu } from "./Menu.js";
|
|
@@ -22,15 +23,52 @@ export class ShellActionError extends Schema.TaggedErrorClass()("ShellAction", {
|
|
|
22
23
|
}) {
|
|
23
24
|
}
|
|
24
25
|
export const builtinFlowsDir = () => fileURLToPath(new URL("../flows", import.meta.url));
|
|
25
|
-
export const shellTierPaths = (options) =>
|
|
26
|
-
cwd
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
})
|
|
26
|
+
export const shellTierPaths = (options) => {
|
|
27
|
+
const cwd = options?.cwd ?? process.cwd();
|
|
28
|
+
const environment = options?.environment ?? process.env;
|
|
29
|
+
const builtinKits = builtinKitsDir(builtinFlowsDir());
|
|
30
|
+
return {
|
|
31
|
+
...defaultTierPaths({ cwd, homeDir: homedir(), environment, builtinDir: builtinFlowsDir() }),
|
|
32
|
+
kits: kitTierPaths({
|
|
33
|
+
cwd,
|
|
34
|
+
homeDir: homedir(),
|
|
35
|
+
environment,
|
|
36
|
+
...(builtinKits === undefined ? {} : { builtinDir: builtinKits })
|
|
37
|
+
})
|
|
38
|
+
};
|
|
39
|
+
};
|
|
31
40
|
const tierLabel = (flow) => {
|
|
41
|
+
const kit = flow.kit === undefined ? "" : ` kit:${flow.kit}`;
|
|
32
42
|
const shadows = flow.shadows.length === 0 ? "" : ` shadows ${flow.shadows.join(", ")}`;
|
|
33
|
-
return `[${flow.tier}${shadows}]`;
|
|
43
|
+
return `[${flow.tier}${kit}${shadows}]`;
|
|
44
|
+
};
|
|
45
|
+
export const renderKitList = (kits, options) => {
|
|
46
|
+
if (options?.json === true) {
|
|
47
|
+
return JSON.stringify(kits.map((kit) => ({
|
|
48
|
+
name: kit.name,
|
|
49
|
+
tier: kit.tier,
|
|
50
|
+
path: kit.root,
|
|
51
|
+
...(kit.description === undefined ? {} : { description: kit.description }),
|
|
52
|
+
packs: kit.packs,
|
|
53
|
+
flows: kit.flows,
|
|
54
|
+
shadows: kit.shadows
|
|
55
|
+
})), undefined, 2);
|
|
56
|
+
}
|
|
57
|
+
const nameWidth = kits.reduce((width, kit) => Math.max(width, kit.name.length), 0);
|
|
58
|
+
return kits
|
|
59
|
+
.flatMap((kit) => {
|
|
60
|
+
const shadows = kit.shadows.length === 0 ? "" : ` shadows ${kit.shadows.join(", ")}`;
|
|
61
|
+
return [
|
|
62
|
+
[
|
|
63
|
+
kit.name.padEnd(nameWidth),
|
|
64
|
+
`[${kit.tier}${shadows}]`,
|
|
65
|
+
...(kit.description === undefined ? [] : [kit.description])
|
|
66
|
+
].join(" "),
|
|
67
|
+
...(kit.packs.length === 0 ? [] : [` packs: ${kit.packs.join(", ")}`]),
|
|
68
|
+
...(kit.flows.length === 0 ? [] : [` flows: ${kit.flows.join(", ")}`])
|
|
69
|
+
];
|
|
70
|
+
})
|
|
71
|
+
.join("\n");
|
|
34
72
|
};
|
|
35
73
|
export const renderFlowList = (flows, options) => {
|
|
36
74
|
if (options?.json === true) {
|
|
@@ -38,6 +76,7 @@ export const renderFlowList = (flows, options) => {
|
|
|
38
76
|
name: flow.name,
|
|
39
77
|
tier: flow.tier,
|
|
40
78
|
path: flow.path,
|
|
79
|
+
...(flow.kit === undefined ? {} : { kit: flow.kit }),
|
|
41
80
|
...(flow.description === undefined ? {} : { description: flow.description }),
|
|
42
81
|
shadows: flow.shadows
|
|
43
82
|
})), undefined, 2);
|
|
@@ -81,6 +120,7 @@ const runCommand = Command.make("run", {
|
|
|
81
120
|
flow: Argument.string("flow").pipe(Argument.withDescription("Flow name from `llm4ts list`, or a path to a flow script")),
|
|
82
121
|
task: Argument.string("task").pipe(Argument.variadic(), Argument.withDescription("Task text passed to the flow")),
|
|
83
122
|
repo: Flag.string("repo").pipe(Flag.optional, Flag.withDescription("Repository to run against, forwarded to the flow as --repo (defaults to the current directory)")),
|
|
123
|
+
pack: Flag.string("pack").pipe(Flag.optional, Flag.withDescription("Pack for the modernization flows, forwarded as LLM4TS_PACK: a kit pack name from `llm4ts kits`, kit/pack, or a directory holding pack.md")),
|
|
84
124
|
verbose: Flag.boolean("verbose").pipe(Flag.withDescription("Stream verbose flow output"))
|
|
85
125
|
}, (config) => Effect.gen(function* () {
|
|
86
126
|
const tiers = shellTierPaths();
|
|
@@ -89,6 +129,9 @@ const runCommand = Command.make("run", {
|
|
|
89
129
|
if (config.verbose) {
|
|
90
130
|
environment.LLM4TS_VERBOSITY = "verbose";
|
|
91
131
|
}
|
|
132
|
+
if (config.pack._tag === "Some") {
|
|
133
|
+
environment.LLM4TS_PACK = config.pack.value;
|
|
134
|
+
}
|
|
92
135
|
const exitCode = yield* launchFlow({
|
|
93
136
|
flowPath,
|
|
94
137
|
taskArgs: [
|
|
@@ -111,6 +154,17 @@ const listCommand = Command.make("list", {
|
|
|
111
154
|
}
|
|
112
155
|
yield* Console.log(renderFlowList(flows, { json: config.json }));
|
|
113
156
|
})).pipe(Command.withDescription("List flows across the project, global, and built-in tiers"));
|
|
157
|
+
const kitsCommand = Command.make("kits", {
|
|
158
|
+
json: Flag.boolean("json").pipe(Flag.withDescription("Emit the listing as JSON"))
|
|
159
|
+
}, (config) => Effect.gen(function* () {
|
|
160
|
+
const tiers = shellTierPaths();
|
|
161
|
+
const kits = tiers.kits === undefined ? [] : discoverKits(tiers.kits);
|
|
162
|
+
if (kits.length === 0 && !config.json) {
|
|
163
|
+
yield* Console.error("no kits discovered — add kit directories under .llm4ts/kits/");
|
|
164
|
+
return;
|
|
165
|
+
}
|
|
166
|
+
yield* Console.log(renderKitList(kits, { json: config.json }));
|
|
167
|
+
})).pipe(Command.withDescription("List kits — packs, scaffolds, pattern cards, and flows — across the project, global, and built-in tiers"));
|
|
114
168
|
const viewCommand = Command.make("view", {
|
|
115
169
|
flow: Argument.string("flow").pipe(Argument.withDescription("Flow name from `llm4ts list`, or a path to a flow script"))
|
|
116
170
|
}, (config) => Effect.gen(function* () {
|
|
@@ -147,6 +201,13 @@ export const shellCommand = Command.make("llm4ts", {}, () => Effect.gen(function
|
|
|
147
201
|
});
|
|
148
202
|
}
|
|
149
203
|
yield* mainMenu(shellTierPaths());
|
|
150
|
-
})).pipe(Command.withDescription("Interactive shell and CLI for llm4ts flows: discover, inspect, and run them."), Command.withSubcommands([
|
|
204
|
+
})).pipe(Command.withDescription("Interactive shell and CLI for llm4ts flows: discover, inspect, and run them."), Command.withSubcommands([
|
|
205
|
+
runCommand,
|
|
206
|
+
listCommand,
|
|
207
|
+
kitsCommand,
|
|
208
|
+
viewCommand,
|
|
209
|
+
askCommand,
|
|
210
|
+
doctorCommand
|
|
211
|
+
]));
|
|
151
212
|
export const runShellCommand = (argv) => Command.runWith(shellCommand, { version: packageVersion })(argv);
|
|
152
213
|
//# sourceMappingURL=Cli.js.map
|
package/dist/Cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Cli.js","sourceRoot":"","sources":["../src/Cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Cli.js","sourceRoot":"","sources":["../src/Cli.ts"],"names":[],"mappings":"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"}
|
package/dist/FlowCatalog.d.ts
CHANGED
|
@@ -1,15 +1,20 @@
|
|
|
1
1
|
import * as Effect from "effect/Effect";
|
|
2
2
|
import { FileSystem } from "effect/FileSystem";
|
|
3
|
+
import { type KitTierPaths } from "@llm4ts/runner/Kits";
|
|
3
4
|
export type FlowTier = "project" | "global" | "builtin";
|
|
4
5
|
export interface FlowTierPaths {
|
|
5
6
|
readonly project?: string;
|
|
6
7
|
readonly global?: string;
|
|
7
8
|
readonly builtin?: string;
|
|
9
|
+
/** Kit tiers whose `flows/` join the listing under the kit's tier (ADR 0014). */
|
|
10
|
+
readonly kits?: KitTierPaths;
|
|
8
11
|
}
|
|
9
12
|
export interface DiscoveredFlow {
|
|
10
13
|
readonly name: string;
|
|
11
14
|
readonly path: string;
|
|
12
15
|
readonly tier: FlowTier;
|
|
16
|
+
/** The kit the flow ships in, when it is a kit flow rather than a tier's own. */
|
|
17
|
+
readonly kit?: string;
|
|
13
18
|
readonly description?: string;
|
|
14
19
|
readonly shadows: ReadonlyArray<FlowTier>;
|
|
15
20
|
}
|
|
@@ -28,10 +33,11 @@ export declare const defaultTierPaths: (options: {
|
|
|
28
33
|
readonly builtinDir?: string;
|
|
29
34
|
}) => FlowTierPaths;
|
|
30
35
|
/**
|
|
31
|
-
* Discovers flows across the project, global, and built-in tiers
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
*
|
|
36
|
+
* Discovers flows across the project, global, and built-in tiers, each tier's
|
|
37
|
+
* own `flows/` first and then the `flows/` of the kits discovered in that
|
|
38
|
+
* tier. Precedence is project > global > builtin, keyed by flow name; a
|
|
39
|
+
* shadowed tier is recorded on the winning flow's `shadows` list. Missing or
|
|
40
|
+
* unreadable directories contribute nothing.
|
|
35
41
|
*/
|
|
36
42
|
export declare const discoverFlows: (tiers: FlowTierPaths) => Effect.Effect<DiscoveredFlow[], never, FileSystem>;
|
|
37
43
|
//# sourceMappingURL=FlowCatalog.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlowCatalog.d.ts","sourceRoot":"","sources":["../src/FlowCatalog.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"FlowCatalog.d.ts","sourceRoot":"","sources":["../src/FlowCatalog.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAErE,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAA;AAEvD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,iFAAiF;IACjF,QAAQ,CAAC,IAAI,CAAC,EAAE,YAAY,CAAA;CAC7B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;IACvB,iFAAiF;IACjF,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAA;CAC1C;AAED;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,GAAI,QAAQ,MAAM,KAAG,MAAM,GAAG,SAe9D,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,SAAS;IACxC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAA;IACnE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAC7B,KAAG,aAWH,CAAA;AAoCD;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,8EAgCxB,CAAA"}
|
package/dist/FlowCatalog.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { join } from "node:path";
|
|
2
2
|
import * as Effect from "effect/Effect";
|
|
3
3
|
import { FileSystem } from "effect/FileSystem";
|
|
4
|
+
import { discoverKits } from "@llm4ts/runner/Kits";
|
|
4
5
|
/**
|
|
5
6
|
* The first non-empty `//` comment line within the file's leading block of
|
|
6
7
|
* blank lines and `//` comments is the flow's one-line description. A bare or
|
|
@@ -39,7 +40,7 @@ const tierOrder = ["project", "global", "builtin"];
|
|
|
39
40
|
// User-authored flows are .ts (launched with type stripping); the built-in
|
|
40
41
|
// tier ships .js because Node refuses to strip types under node_modules.
|
|
41
42
|
const flowExtension = (entry) => entry.endsWith(".ts") ? ".ts" : entry.endsWith(".js") ? ".js" : undefined;
|
|
42
|
-
const listTier = Effect.fn("@llm4ts/shell/FlowCatalog.listTier")(function* (tier, directory) {
|
|
43
|
+
const listTier = Effect.fn("@llm4ts/shell/FlowCatalog.listTier")(function* (tier, directory, kit) {
|
|
43
44
|
const fs = yield* FileSystem;
|
|
44
45
|
const entries = yield* fs.readDirectory(directory).pipe(Effect.orElseSucceed(() => []));
|
|
45
46
|
const flows = [];
|
|
@@ -55,31 +56,41 @@ const listTier = Effect.fn("@llm4ts/shell/FlowCatalog.listTier")(function* (tier
|
|
|
55
56
|
name: entry.slice(0, -extension.length),
|
|
56
57
|
path,
|
|
57
58
|
tier,
|
|
59
|
+
...(kit === undefined ? {} : { kit }),
|
|
58
60
|
...(description === undefined ? {} : { description })
|
|
59
61
|
});
|
|
60
62
|
}
|
|
61
63
|
return flows;
|
|
62
64
|
});
|
|
63
65
|
/**
|
|
64
|
-
* Discovers flows across the project, global, and built-in tiers
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
*
|
|
66
|
+
* Discovers flows across the project, global, and built-in tiers, each tier's
|
|
67
|
+
* own `flows/` first and then the `flows/` of the kits discovered in that
|
|
68
|
+
* tier. Precedence is project > global > builtin, keyed by flow name; a
|
|
69
|
+
* shadowed tier is recorded on the winning flow's `shadows` list. Missing or
|
|
70
|
+
* unreadable directories contribute nothing.
|
|
68
71
|
*/
|
|
69
72
|
export const discoverFlows = Effect.fn("@llm4ts/shell/FlowCatalog.discoverFlows")(function* (tiers) {
|
|
70
73
|
const byName = new Map();
|
|
74
|
+
const kits = tiers.kits === undefined ? [] : discoverKits(tiers.kits);
|
|
75
|
+
const record = (flow) => {
|
|
76
|
+
const existing = byName.get(flow.name);
|
|
77
|
+
if (existing === undefined) {
|
|
78
|
+
byName.set(flow.name, { flow, shadows: [] });
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
existing.shadows.push(flow.tier);
|
|
82
|
+
}
|
|
83
|
+
};
|
|
71
84
|
for (const tier of tierOrder) {
|
|
72
85
|
const directory = tiers[tier];
|
|
73
|
-
if (directory
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
for (const flow of yield* listTier(tier, directory)) {
|
|
77
|
-
const existing = byName.get(flow.name);
|
|
78
|
-
if (existing === undefined) {
|
|
79
|
-
byName.set(flow.name, { flow, shadows: [] });
|
|
86
|
+
if (directory !== undefined) {
|
|
87
|
+
for (const flow of yield* listTier(tier, directory)) {
|
|
88
|
+
record(flow);
|
|
80
89
|
}
|
|
81
|
-
|
|
82
|
-
|
|
90
|
+
}
|
|
91
|
+
for (const kit of kits.filter((candidate) => candidate.tier === tier)) {
|
|
92
|
+
for (const flow of yield* listTier(tier, join(kit.root, "flows"), kit.name)) {
|
|
93
|
+
record(flow);
|
|
83
94
|
}
|
|
84
95
|
}
|
|
85
96
|
}
|
package/dist/FlowCatalog.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlowCatalog.js","sourceRoot":"","sources":["../src/FlowCatalog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"FlowCatalog.js","sourceRoot":"","sources":["../src/FlowCatalog.ts"],"names":[],"mappings":"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"}
|
package/flows/epic-stories.js
CHANGED
|
@@ -18,16 +18,9 @@ import * as Effect from "effect/Effect";
|
|
|
18
18
|
import { budget, cap } from "@llm4ts/flow/Context";
|
|
19
19
|
import { makeLocalBoardSync } from "@llm4ts/flow/BoardSync";
|
|
20
20
|
import { estimatedUsageOptionsFromEnv, makeEstimatedUsageMeter } from "@llm4ts/flow/EstimatedUsage";
|
|
21
|
-
import { FlowAborted } from "@llm4ts/
|
|
22
|
-
import { Info } from "@llm4ts/flow/FlowEvents";
|
|
23
|
-
import { stage } from "@llm4ts/flow/PlanExecution";
|
|
21
|
+
import { FlowAborted, Info, asReadOnly, nodePlainFileStore, nodeProcessExecutor, resolveFlowInput, runFlowMain, runNode, stage, withModel } from "@llm4ts/runner";
|
|
24
22
|
import { implementStoriesFlow } from "@llm4ts/flow/Stories";
|
|
25
23
|
import { makeStoryPlanStore, validateStoryPlan } from "@llm4ts/flow/StoryPlan";
|
|
26
|
-
import { asReadOnly, withModel } from "@llm4ts/runner/Connectors";
|
|
27
|
-
import { resolveFlowInput } from "@llm4ts/runner/FlowArgs";
|
|
28
|
-
import { runFlowMain, runNode } from "@llm4ts/runner/FlowRunner";
|
|
29
|
-
import { nodePlainFileStore } from "@llm4ts/runner/NodePlainFileStore";
|
|
30
|
-
import { nodeProcessExecutor } from "@llm4ts/runner/NodeProcessExecutor";
|
|
31
24
|
import { combineTotals, epicIdFor, gateCommands, gatesIn, generateStoryPlan, judgeStory, parseEpicArgs, reasonerFromEnvironment, setupIn, storyCoderFromEnvironment, worktreeSetupCommand } from "./lib/epic-stories.js";
|
|
32
25
|
/** `LLM4TS_CODER_MODEL` / `LLM4TS_REASONING_MODEL`: pi takes `provider/model` (e.g. `openai-codex/gpt-5.5`). */
|
|
33
26
|
const withOptionalModel = (config, model) => {
|
package/flows/hello.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
// Hello: send one prompt to the configured provider and print the answer.
|
|
2
|
+
import * as Effect from "effect/Effect";
|
|
3
|
+
import { apiConnectorFromEnvironment, completeAndPublish, resolveFlowInput, runFlowMain, runNode } from "@llm4ts/runner";
|
|
4
|
+
const program = Effect.gen(function* () {
|
|
5
|
+
const input = yield* resolveFlowInput("Say hello and name one thing you can do.");
|
|
6
|
+
const coder = yield* apiConnectorFromEnvironment();
|
|
7
|
+
yield* runNode({
|
|
8
|
+
workDir: input.workDir,
|
|
9
|
+
workspace: input.workspace,
|
|
10
|
+
userPrompt: input.prompt,
|
|
11
|
+
coder,
|
|
12
|
+
environment: process.env
|
|
13
|
+
}, (context) => completeAndPublish(context.coder, context.events, input.prompt));
|
|
14
|
+
});
|
|
15
|
+
runFlowMain(program);
|
package/flows/implement.js
CHANGED
|
@@ -1,14 +1,7 @@
|
|
|
1
1
|
// Persistent plan: plan the task, then implement, review, and commit one task at a time.
|
|
2
2
|
import { join } from "node:path";
|
|
3
3
|
import * as Effect from "effect/Effect";
|
|
4
|
-
import { implementPlanFlow } from "@llm4ts/
|
|
5
|
-
import { defaultPlanPath } from "@llm4ts/flow/Plan";
|
|
6
|
-
import { planFrom } from "@llm4ts/flow/Planner";
|
|
7
|
-
import { makePlanStore } from "@llm4ts/flow/Persistence";
|
|
8
|
-
import { coderFromEnv } from "@llm4ts/runner/Connectors";
|
|
9
|
-
import { resolveFlowInput } from "@llm4ts/runner/FlowArgs";
|
|
10
|
-
import { runFlowMain, runNode } from "@llm4ts/runner/FlowRunner";
|
|
11
|
-
import { nodePlainFileStore } from "@llm4ts/runner/NodePlainFileStore";
|
|
4
|
+
import { coderFromEnv, defaultPlanPath, implementPlanFlow, makePlanStore, nodePlainFileStore, planFrom, resolveFlowInput, runFlowMain, runNode } from "@llm4ts/runner";
|
|
12
5
|
const program = Effect.gen(function* () {
|
|
13
6
|
const input = yield* resolveFlowInput("Add a multiply function to the calculator, including focused tests.");
|
|
14
7
|
const planPath = join(input.workDir, defaultPlanPath(input.prompt));
|
package/flows/issue-pr.js
CHANGED
|
@@ -1,18 +1,11 @@
|
|
|
1
1
|
// GitHub issue to pull request: assess the issue, plan, implement, push, and open a PR.
|
|
2
2
|
import { join } from "node:path";
|
|
3
3
|
import * as Effect from "effect/Effect";
|
|
4
|
-
import { implementPlanFlow } from "@llm4ts/
|
|
5
|
-
import { FlowAborted } from "@llm4ts/flow/FlowError";
|
|
4
|
+
import { FlowAborted, ScriptUsage, coderFromEnv, implementPlanFlow, makePlanStore, nodePlainFileStore, resolveFlowInput, runFlowMain, runNode, stage } from "@llm4ts/runner";
|
|
6
5
|
import { parseIssueRef } from "@llm4ts/flow/GitHubTool";
|
|
7
|
-
import { stage } from "@llm4ts/flow/PlanExecution";
|
|
8
6
|
import { assessThenPlan } from "@llm4ts/flow/Planner";
|
|
9
|
-
import { makePlanStore } from "@llm4ts/flow/Persistence";
|
|
10
7
|
import { summarisePr } from "@llm4ts/flow/PrSummary";
|
|
11
8
|
import { allReviewers } from "@llm4ts/flow/Review";
|
|
12
|
-
import { ScriptUsage, resolveFlowInput } from "@llm4ts/runner/FlowArgs";
|
|
13
|
-
import { coderFromEnv } from "@llm4ts/runner/Connectors";
|
|
14
|
-
import { runFlowMain, runNode } from "@llm4ts/runner/FlowRunner";
|
|
15
|
-
import { nodePlainFileStore } from "@llm4ts/runner/NodePlainFileStore";
|
|
16
9
|
const program = Effect.gen(function* () {
|
|
17
10
|
const input = yield* resolveFlowInput();
|
|
18
11
|
const issueRef = parseIssueRef(input.prompt);
|
package/flows/judge-suite.js
CHANGED
|
@@ -2,10 +2,7 @@
|
|
|
2
2
|
import * as Effect from "effect/Effect";
|
|
3
3
|
import { Dimension, Sample, repeat } from "@llm4ts/core/eval/Eval";
|
|
4
4
|
import { judge } from "@llm4ts/core/eval/Judge";
|
|
5
|
-
import { Info } from "@llm4ts/
|
|
6
|
-
import { coderFromEnv } from "@llm4ts/runner/Connectors";
|
|
7
|
-
import { resolveFlowInput } from "@llm4ts/runner/FlowArgs";
|
|
8
|
-
import { runFlowMain, runNode } from "@llm4ts/runner/FlowRunner";
|
|
5
|
+
import { Info, coderFromEnv, resolveFlowInput, runFlowMain, runNode } from "@llm4ts/runner";
|
|
9
6
|
const dimensions = [
|
|
10
7
|
Dimension.make({
|
|
11
8
|
name: "correctness",
|
|
@@ -7,12 +7,11 @@ import { judge } from "@llm4ts/core/eval/Judge";
|
|
|
7
7
|
import { TokenUsage } from "@llm4ts/core/Models";
|
|
8
8
|
import { cap } from "@llm4ts/flow/Context";
|
|
9
9
|
import { structuredAndPublish } from "@llm4ts/flow/Flow";
|
|
10
|
-
import { FlowAborted, FlowLlmError } from "@llm4ts/flow/FlowError";
|
|
11
10
|
import { stableHash } from "@llm4ts/flow/Plan";
|
|
12
|
-
import {
|
|
11
|
+
import { ReviewIssue } from "@llm4ts/flow/Review";
|
|
13
12
|
import { StoryPlan } from "@llm4ts/flow/StoryPlan";
|
|
14
|
-
import { claude,
|
|
15
|
-
import { ScriptUsage } from "@llm4ts/runner
|
|
13
|
+
import { claude, coderIds, pi } from "@llm4ts/runner/Connectors";
|
|
14
|
+
import { FlowAborted, FlowLlmError, ReviewResult, ScriptUsage, coderFor, lintCommand, mergeReviewResults } from "@llm4ts/runner";
|
|
16
15
|
export const epicUsage = [
|
|
17
16
|
"epic-stories flags:",
|
|
18
17
|
" --plan-only write (or re-validate) the story plan and stop",
|
package/flows/local.js
CHANGED
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
// Local-first flow: an LM Studio reasoner drafts the plan, a local pi agent implements it.
|
|
2
2
|
import * as Effect from "effect/Effect";
|
|
3
|
-
import { completeAndPublish } from "@llm4ts/
|
|
4
|
-
import {
|
|
5
|
-
import { lmStudio, pi, withModel, withTimeoutSeconds } from "@llm4ts/runner/Connectors";
|
|
6
|
-
import { resolveFlowInput } from "@llm4ts/runner/FlowArgs";
|
|
7
|
-
import { runFlowMain, runNode } from "@llm4ts/runner/FlowRunner";
|
|
3
|
+
import { AssistantMessage, Info, completeAndPublish, resolveFlowInput, runFlowMain, runNode, withModel } from "@llm4ts/runner";
|
|
4
|
+
import { lmStudio, pi, withTimeoutSeconds } from "@llm4ts/runner/Connectors";
|
|
8
5
|
const reasoningModel = process.env.LLM4TS_REASONING_MODEL ?? "qwen/qwen3-coder-30b";
|
|
9
6
|
const coderModel = process.env.LLM4TS_CODER_MODEL ?? reasoningModel;
|
|
10
7
|
const program = Effect.gen(function* () {
|
package/flows/modernize-bench.js
CHANGED
|
@@ -25,21 +25,12 @@ import { Sample } from "@llm4ts/core/eval/Eval";
|
|
|
25
25
|
import { judge } from "@llm4ts/core/eval/Judge";
|
|
26
26
|
import { BenchJudge, BenchMachine, BenchQuality, BenchRecord, BenchScore, CurrentBenchSchema, makeBenchPhase, makeBenchTap } from "@llm4ts/flow/Bench";
|
|
27
27
|
import { loadBenchRecords, appendBenchRecord, renderBenchReport } from "@llm4ts/flow/BenchReport";
|
|
28
|
-
import { FlowAborted, FlowLlmError } from "@llm4ts/
|
|
29
|
-
import {
|
|
28
|
+
import { FlowAborted, FlowLlmError, Info, asReadOnly, coderFromEnv, makeNodeWorkspace, mergeReviewResults, nodePlainFileStore, openPack, resolveFlowInput, reviewFingerprint, runFlowMain, runNode, stage } from "@llm4ts/runner";
|
|
29
|
+
import { TokensUsed } from "@llm4ts/flow/FlowEvents";
|
|
30
30
|
import { packageVersion } from "@llm4ts/flow/Package";
|
|
31
|
-
import { stage } from "@llm4ts/flow/PlanExecution";
|
|
32
|
-
import { mergeReviewResults } from "@llm4ts/flow/Review";
|
|
33
31
|
import { coverage, coverageUnits, features, matchingFiles } from "@llm4ts/flow/SpecChecks";
|
|
34
32
|
import { legacySourceWorkspaceLimits, workspaceLimitsFromEnv } from "@llm4ts/flow/Workspace";
|
|
35
|
-
import { ProgramArtifacts, ProgramUnit, extractProgramsResumably } from "@llm4ts/
|
|
36
|
-
import { asReadOnly, coderFromEnv } from "@llm4ts/runner/Connectors";
|
|
37
|
-
import { resolveFlowInput } from "@llm4ts/runner/FlowArgs";
|
|
38
|
-
import { runFlowMain, runNode } from "@llm4ts/runner/FlowRunner";
|
|
39
|
-
import { nodePlainFileStore } from "@llm4ts/runner/NodePlainFileStore";
|
|
40
|
-
import { makeNodeWorkspace } from "@llm4ts/runner/NodeWorkspace";
|
|
41
|
-
import { openPack } from "@llm4ts/runner/Packs";
|
|
42
|
-
import { reviewFingerprint } from "@llm4ts/runner/ReviewFingerprint";
|
|
33
|
+
import { ProgramArtifacts, ProgramUnit, extractProgramsResumably } from "@llm4ts/flow/Artifacts";
|
|
43
34
|
const ModDir = "docs/modernization";
|
|
44
35
|
const BenchFile = "bench-results.jsonl";
|
|
45
36
|
const programName = (relativePath) => {
|
|
@@ -18,8 +18,8 @@
|
|
|
18
18
|
// flow halts for human triage. Even a clean pack only gets an unchecked
|
|
19
19
|
// `- [ ] Approved` marker in `docs/modernization/README.md`.
|
|
20
20
|
//
|
|
21
|
-
// Pack: LLM4TS_PACK=<dir> (default
|
|
22
|
-
//
|
|
21
|
+
// Pack: LLM4TS_PACK=<name|kit/name|dir> (default cobol-springboot, resolved across
|
|
22
|
+
// the project, global, and built-in kits, or a directory holding pack.md).
|
|
23
23
|
// LLM4TS_WAVE=<name> scopes the run to one wave of the approved plan. Judge
|
|
24
24
|
// context is bounded by LLM4TS_CONTEXT_BUDGET (chars;
|
|
25
25
|
// LLM4TS_JUDGE_SOURCES_LIMIT is the deprecated alias). The analyst is bounded
|
|
@@ -34,27 +34,17 @@ import * as Semaphore from "effect/Semaphore";
|
|
|
34
34
|
import { Sample } from "@llm4ts/core/eval/Eval";
|
|
35
35
|
import { judge } from "@llm4ts/core/eval/Judge";
|
|
36
36
|
import { budget, capped, withShrink } from "@llm4ts/flow/Context";
|
|
37
|
-
import { FlowAborted, FlowLlmError } from "@llm4ts/flow/FlowError";
|
|
38
37
|
import { structuredAndPublish } from "@llm4ts/flow/Flow";
|
|
39
|
-
import { FlowEvents
|
|
40
|
-
import { makeChat } from "@llm4ts/
|
|
38
|
+
import { FlowEvents } from "@llm4ts/flow/FlowEvents";
|
|
39
|
+
import { FlowAborted, FlowLlmError, Info, ReviewResult, asReadOnly, coderFromEnv, defaultPlanInstructions, loadKitPatternCards, makeChat, makeNodeWorkspace, mergeReviewResults, nodePlainFileStore, openPack, planFrom, resolveFlowInput, reviewFingerprint, runFlowMain, runNode, stage, withTurnLimit } from "@llm4ts/runner";
|
|
41
40
|
import { loadPatternCards, matchingPatternCards } from "@llm4ts/flow/Patterns";
|
|
42
41
|
import { legacySourceWorkspaceLimits, workspaceLimitsFromEnv } from "@llm4ts/flow/Workspace";
|
|
43
|
-
import {
|
|
44
|
-
import { defaultPlanInstructions, planFrom } from "@llm4ts/flow/Planner";
|
|
45
|
-
import { ReviewIssue, ReviewResult, mergeReviewResults } from "@llm4ts/flow/Review";
|
|
42
|
+
import { ReviewIssue } from "@llm4ts/flow/Review";
|
|
46
43
|
import { cachedReview } from "@llm4ts/flow/ReviewCache";
|
|
47
44
|
import { coverage, coverageUnits, features, matchingFiles } from "@llm4ts/flow/SpecChecks";
|
|
48
45
|
import { SurveyGraph, closureFor, surveyGraph } from "@llm4ts/flow/Survey";
|
|
49
|
-
import { withDraftApproval, requireApproval } from "@llm4ts/
|
|
50
|
-
import { ProgramArtifacts, ProgramUnit, extractProgramsResumably, programArtifactPaths } from "@llm4ts/
|
|
51
|
-
import { asReadOnly, coderFromEnv, withTurnLimit } from "@llm4ts/runner/Connectors";
|
|
52
|
-
import { resolveFlowInput } from "@llm4ts/runner/FlowArgs";
|
|
53
|
-
import { runFlowMain, runNode } from "@llm4ts/runner/FlowRunner";
|
|
54
|
-
import { reviewFingerprint } from "@llm4ts/runner/ReviewFingerprint";
|
|
55
|
-
import { nodePlainFileStore } from "@llm4ts/runner/NodePlainFileStore";
|
|
56
|
-
import { makeNodeWorkspace } from "@llm4ts/runner/NodeWorkspace";
|
|
57
|
-
import { loadUniversalPatternCards, openPack } from "@llm4ts/runner/Packs";
|
|
46
|
+
import { withDraftApproval, requireApproval } from "@llm4ts/flow/Approval";
|
|
47
|
+
import { ProgramArtifacts, ProgramUnit, extractProgramsResumably, programArtifactPaths } from "@llm4ts/flow/Artifacts";
|
|
58
48
|
const ModDir = "docs/modernization";
|
|
59
49
|
const MaxRounds = 3;
|
|
60
50
|
const positiveEnvInt = (name, fallback) => {
|
|
@@ -242,7 +232,7 @@ const program = Effect.gen(function* () {
|
|
|
242
232
|
// the model: implementation later injects exactly the cards cited here.
|
|
243
233
|
const cards = [
|
|
244
234
|
...(yield* loadPatternCards(opened.workspace, `${opened.dir}/patterns`)),
|
|
245
|
-
...(yield*
|
|
235
|
+
...(yield* loadKitPatternCards(opened))
|
|
246
236
|
];
|
|
247
237
|
// The dependency graph the analysts' include closures are resolved
|
|
248
238
|
// from — walked over the pack's `## Survey:` edge regexes.
|
|
@@ -22,25 +22,14 @@ import { join } from "node:path";
|
|
|
22
22
|
import * as Effect from "effect/Effect";
|
|
23
23
|
import { Dimension, Sample } from "@llm4ts/core/eval/Eval";
|
|
24
24
|
import { judge } from "@llm4ts/core/eval/Judge";
|
|
25
|
-
import { makeChat } from "@llm4ts/
|
|
25
|
+
import { FlowAborted, FlowLlmError, Info, ReviewResult, asReadOnly, coderFromEnv, implementTaskLoop, lintCommand, loadKitPatternCards, makeChat, makeNodeWorkspace, makePlanStore, mergeReviewResults, minimalReviewers, nodePlainFileStore, nodeProcessExecutor, openPack, resolveFlowInput, reviewAndFixLoop, reviewFingerprint, runFlowMain, runNode, stage } from "@llm4ts/runner";
|
|
26
26
|
import { capped, renderTruncation, truncations, withShrink } from "@llm4ts/flow/Context";
|
|
27
|
-
import {
|
|
28
|
-
import { FlowEvents, Info } from "@llm4ts/flow/FlowEvents";
|
|
27
|
+
import { FlowEvents } from "@llm4ts/flow/FlowEvents";
|
|
29
28
|
import { judgeAllPrograms } from "@llm4ts/flow/ProgramJudge";
|
|
30
29
|
import { Provenance, makeProvenanceStore } from "@llm4ts/flow/Provenance";
|
|
31
30
|
import { loadPatternCards, taggedPatternIds } from "@llm4ts/flow/Patterns";
|
|
32
|
-
import {
|
|
33
|
-
import { implementTaskLoop, stage } from "@llm4ts/flow/PlanExecution";
|
|
34
|
-
import { ReviewIssue, ReviewResult, lintCommand, mergeReviewResults, minimalReviewers, reviewAndFixLoop } from "@llm4ts/flow/Review";
|
|
31
|
+
import { ReviewIssue } from "@llm4ts/flow/Review";
|
|
35
32
|
import { checkWall, wallBreachMessage } from "@llm4ts/flow/Wall";
|
|
36
|
-
import { asReadOnly, coderFromEnv } from "@llm4ts/runner/Connectors";
|
|
37
|
-
import { reviewFingerprint } from "@llm4ts/runner/ReviewFingerprint";
|
|
38
|
-
import { resolveFlowInput } from "@llm4ts/runner/FlowArgs";
|
|
39
|
-
import { runFlowMain, runNode } from "@llm4ts/runner/FlowRunner";
|
|
40
|
-
import { nodePlainFileStore } from "@llm4ts/runner/NodePlainFileStore";
|
|
41
|
-
import { nodeProcessExecutor } from "@llm4ts/runner/NodeProcessExecutor";
|
|
42
|
-
import { makeNodeWorkspace } from "@llm4ts/runner/NodeWorkspace";
|
|
43
|
-
import { loadUniversalPatternCards, openPack } from "@llm4ts/runner/Packs";
|
|
44
33
|
const ModDir = "docs/modernization";
|
|
45
34
|
const judgeRounds = () => {
|
|
46
35
|
const raw = Number.parseInt(process.env.LLM4TS_JUDGE_ROUNDS ?? "", 10);
|
|
@@ -182,7 +171,7 @@ const program = Effect.gen(function* () {
|
|
|
182
171
|
const specText = yield* gatherSpecs(target, pack.specsDir);
|
|
183
172
|
const cards = [
|
|
184
173
|
...(yield* loadPatternCards(opened.workspace, `${opened.dir}/patterns`)),
|
|
185
|
-
...(yield*
|
|
174
|
+
...(yield* loadKitPatternCards(opened))
|
|
186
175
|
];
|
|
187
176
|
const cited = new Set(taggedPatternIds(specText));
|
|
188
177
|
const playbook = cards.filter((card) => cited.has(card.id));
|
|
@@ -21,16 +21,9 @@
|
|
|
21
21
|
import { existsSync } from "node:fs";
|
|
22
22
|
import { join } from "node:path";
|
|
23
23
|
import * as Effect from "effect/Effect";
|
|
24
|
-
import { FlowAborted } from "@llm4ts/
|
|
25
|
-
import { Info } from "@llm4ts/flow/FlowEvents";
|
|
26
|
-
import { stage } from "@llm4ts/flow/PlanExecution";
|
|
24
|
+
import { FlowAborted, Info, makeNodeWorkspace, mock, openPack, resolveFlowInput, runFlowMain, runNode, stage } from "@llm4ts/runner";
|
|
27
25
|
import { coverageUnits, matchingFiles } from "@llm4ts/flow/SpecChecks";
|
|
28
26
|
import { legacySourceWorkspaceLimits, workspaceLimitsFromEnv } from "@llm4ts/flow/Workspace";
|
|
29
|
-
import { mock } from "@llm4ts/runner/Connectors";
|
|
30
|
-
import { resolveFlowInput } from "@llm4ts/runner/FlowArgs";
|
|
31
|
-
import { runFlowMain, runNode } from "@llm4ts/runner/FlowRunner";
|
|
32
|
-
import { makeNodeWorkspace } from "@llm4ts/runner/NodeWorkspace";
|
|
33
|
-
import { openPack } from "@llm4ts/runner/Packs";
|
|
34
27
|
/** Prompt sidecars the modernization phases read, with the phase that reads each. */
|
|
35
28
|
const phasePrompts = [
|
|
36
29
|
["analysis", "extract"],
|