@vibesdotdev/forge 0.0.0-stage → 1.0.0-rc.4
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/LICENSE +18 -0
- package/README.md +208 -2
- package/VIBES.md +125 -0
- package/dist/auth.d.ts +14 -0
- package/dist/auth.d.ts.map +1 -0
- package/dist/auth.js +44 -0
- package/dist/auth.js.map +1 -0
- package/dist/ci/actions-pipeline.d.ts +85 -0
- package/dist/ci/actions-pipeline.d.ts.map +1 -0
- package/dist/ci/actions-pipeline.js +279 -0
- package/dist/ci/actions-pipeline.js.map +1 -0
- package/dist/ci/cache-plan.d.ts +94 -0
- package/dist/ci/cache-plan.d.ts.map +1 -0
- package/dist/ci/cache-plan.js +128 -0
- package/dist/ci/cache-plan.js.map +1 -0
- package/dist/ci/cache-policy.d.ts +181 -0
- package/dist/ci/cache-policy.d.ts.map +1 -0
- package/dist/ci/cache-policy.js +289 -0
- package/dist/ci/cache-policy.js.map +1 -0
- package/dist/ci/docs/ci.framework.docs.descriptor.d.ts +4 -0
- package/dist/ci/docs/ci.framework.docs.descriptor.d.ts.map +1 -0
- package/dist/ci/docs/ci.framework.docs.descriptor.js +30 -0
- package/dist/ci/docs/ci.framework.docs.descriptor.js.map +1 -0
- package/dist/ci/executor/ci-executor.descriptor.d.ts +16 -0
- package/dist/ci/executor/ci-executor.descriptor.d.ts.map +1 -0
- package/dist/ci/executor/ci-executor.descriptor.js +16 -0
- package/dist/ci/executor/ci-executor.descriptor.js.map +1 -0
- package/dist/ci/executor/ci-executor.kind.d.ts +10 -0
- package/dist/ci/executor/ci-executor.kind.d.ts.map +1 -0
- package/dist/ci/executor/ci-executor.kind.js +10 -0
- package/dist/ci/executor/ci-executor.kind.js.map +1 -0
- package/dist/ci/executor/index.d.ts +5 -0
- package/dist/ci/executor/index.d.ts.map +1 -0
- package/dist/ci/executor/index.js +4 -0
- package/dist/ci/executor/index.js.map +1 -0
- package/dist/ci/executor/interface.d.ts +33 -0
- package/dist/ci/executor/interface.d.ts.map +1 -0
- package/dist/ci/executor/interface.js +2 -0
- package/dist/ci/executor/interface.js.map +1 -0
- package/dist/ci/executor/resolve.d.ts +35 -0
- package/dist/ci/executor/resolve.d.ts.map +1 -0
- package/dist/ci/executor/resolve.js +62 -0
- package/dist/ci/executor/resolve.js.map +1 -0
- package/dist/ci/factories.d.ts +14 -0
- package/dist/ci/factories.d.ts.map +1 -0
- package/dist/ci/factories.js +38 -0
- package/dist/ci/factories.js.map +1 -0
- package/dist/ci/forge-contract.d.ts +1362 -0
- package/dist/ci/forge-contract.d.ts.map +1 -0
- package/dist/ci/forge-contract.js +771 -0
- package/dist/ci/forge-contract.js.map +1 -0
- package/dist/ci/index.d.ts +17 -0
- package/dist/ci/index.d.ts.map +1 -0
- package/dist/ci/index.js +14 -0
- package/dist/ci/index.js.map +1 -0
- package/dist/ci/jobs/attempt-recovery.d.ts +5 -0
- package/dist/ci/jobs/attempt-recovery.d.ts.map +1 -0
- package/dist/ci/jobs/attempt-recovery.js +5 -0
- package/dist/ci/jobs/attempt-recovery.js.map +1 -0
- package/dist/ci/jobs/ci-attempt-recovery.job.descriptor.d.ts +24 -0
- package/dist/ci/jobs/ci-attempt-recovery.job.descriptor.d.ts.map +1 -0
- package/dist/ci/jobs/ci-attempt-recovery.job.descriptor.js +40 -0
- package/dist/ci/jobs/ci-attempt-recovery.job.descriptor.js.map +1 -0
- package/dist/ci/jobs/ci-attempt-recovery.job.impl.d.ts +8 -0
- package/dist/ci/jobs/ci-attempt-recovery.job.impl.d.ts.map +1 -0
- package/dist/ci/jobs/ci-attempt-recovery.job.impl.js +22 -0
- package/dist/ci/jobs/ci-attempt-recovery.job.impl.js.map +1 -0
- package/dist/ci/jobs/ci-recovery-host.context.d.ts +47 -0
- package/dist/ci/jobs/ci-recovery-host.context.d.ts.map +1 -0
- package/dist/ci/jobs/ci-recovery-host.context.js +8 -0
- package/dist/ci/jobs/ci-recovery-host.context.js.map +1 -0
- package/dist/ci/kinds/index.d.ts +32 -0
- package/dist/ci/kinds/index.d.ts.map +1 -0
- package/dist/ci/kinds/index.js +77 -0
- package/dist/ci/kinds/index.js.map +1 -0
- package/dist/ci/pipeline-hash.d.ts +12 -0
- package/dist/ci/pipeline-hash.d.ts.map +1 -0
- package/dist/ci/pipeline-hash.js +42 -0
- package/dist/ci/pipeline-hash.js.map +1 -0
- package/dist/ci/plugin.d.ts +3 -0
- package/dist/ci/plugin.d.ts.map +1 -0
- package/dist/ci/plugin.js +44 -0
- package/dist/ci/plugin.js.map +1 -0
- package/dist/ci/profiles/catalog.d.ts +42 -0
- package/dist/ci/profiles/catalog.d.ts.map +1 -0
- package/dist/ci/profiles/catalog.js +165 -0
- package/dist/ci/profiles/catalog.js.map +1 -0
- package/dist/ci/publish-targets.d.ts +34 -0
- package/dist/ci/publish-targets.d.ts.map +1 -0
- package/dist/ci/publish-targets.js +72 -0
- package/dist/ci/publish-targets.js.map +1 -0
- package/dist/ci/runs/index.d.ts +5 -0
- package/dist/ci/runs/index.d.ts.map +1 -0
- package/dist/ci/runs/index.js +4 -0
- package/dist/ci/runs/index.js.map +1 -0
- package/dist/ci/runs/request-key.d.ts +25 -0
- package/dist/ci/runs/request-key.d.ts.map +1 -0
- package/dist/ci/runs/request-key.js +24 -0
- package/dist/ci/runs/request-key.js.map +1 -0
- package/dist/ci/runs/schemas.d.ts +674 -0
- package/dist/ci/runs/schemas.d.ts.map +1 -0
- package/dist/ci/runs/schemas.js +329 -0
- package/dist/ci/runs/schemas.js.map +1 -0
- package/dist/ci/runs/state-machine.d.ts +33 -0
- package/dist/ci/runs/state-machine.d.ts.map +1 -0
- package/dist/ci/runs/state-machine.js +262 -0
- package/dist/ci/runs/state-machine.js.map +1 -0
- package/dist/ci/runtime-catalogs.d.ts +20 -0
- package/dist/ci/runtime-catalogs.d.ts.map +1 -0
- package/dist/ci/runtime-catalogs.js +10 -0
- package/dist/ci/runtime-catalogs.js.map +1 -0
- package/dist/ci/schemas.d.ts +574 -0
- package/dist/ci/schemas.d.ts.map +1 -0
- package/dist/ci/schemas.js +192 -0
- package/dist/ci/schemas.js.map +1 -0
- package/dist/ci/storage/ci-attempts.storage.descriptor.d.ts +74 -0
- package/dist/ci/storage/ci-attempts.storage.descriptor.d.ts.map +1 -0
- package/dist/ci/storage/ci-attempts.storage.descriptor.js +37 -0
- package/dist/ci/storage/ci-attempts.storage.descriptor.js.map +1 -0
- package/dist/ci/storage/ci-runs.storage.descriptor.d.ts +81 -0
- package/dist/ci/storage/ci-runs.storage.descriptor.d.ts.map +1 -0
- package/dist/ci/storage/ci-runs.storage.descriptor.js +38 -0
- package/dist/ci/storage/ci-runs.storage.descriptor.js.map +1 -0
- package/dist/ci/storage/index.d.ts +4 -0
- package/dist/ci/storage/index.d.ts.map +1 -0
- package/dist/ci/storage/index.js +4 -0
- package/dist/ci/storage/index.js.map +1 -0
- package/dist/ci/storage/transforms.d.ts +151 -0
- package/dist/ci/storage/transforms.d.ts.map +1 -0
- package/dist/ci/storage/transforms.js +78 -0
- package/dist/ci/storage/transforms.js.map +1 -0
- package/dist/ci-policy.d.ts +46 -0
- package/dist/ci-policy.d.ts.map +1 -0
- package/dist/ci-policy.js +64 -0
- package/dist/ci-policy.js.map +1 -0
- package/dist/ci-stuck-checks.d.ts +53 -0
- package/dist/ci-stuck-checks.d.ts.map +1 -0
- package/dist/ci-stuck-checks.js +70 -0
- package/dist/ci-stuck-checks.js.map +1 -0
- package/dist/citations.d.ts +6 -0
- package/dist/citations.d.ts.map +1 -0
- package/dist/citations.js +189 -0
- package/dist/citations.js.map +1 -0
- package/dist/cli/auth.plugin.d.ts +3 -0
- package/dist/cli/auth.plugin.d.ts.map +1 -0
- package/dist/cli/auth.plugin.js +48 -0
- package/dist/cli/auth.plugin.js.map +1 -0
- package/dist/cli/ci.cli-group.descriptor.d.ts +11 -0
- package/dist/cli/ci.cli-group.descriptor.d.ts.map +1 -0
- package/dist/cli/ci.cli-group.descriptor.js +19 -0
- package/dist/cli/ci.cli-group.descriptor.js.map +1 -0
- package/dist/cli/commands/ci.cancel.command.descriptor.d.ts +27 -0
- package/dist/cli/commands/ci.cancel.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/ci.cancel.command.descriptor.js +25 -0
- package/dist/cli/commands/ci.cancel.command.descriptor.js.map +1 -0
- package/dist/cli/commands/ci.cancel.command.impl.d.ts +11 -0
- package/dist/cli/commands/ci.cancel.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/ci.cancel.command.impl.js +36 -0
- package/dist/cli/commands/ci.cancel.command.impl.js.map +1 -0
- package/dist/cli/commands/ci.logs.command.descriptor.d.ts +35 -0
- package/dist/cli/commands/ci.logs.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/ci.logs.command.descriptor.js +35 -0
- package/dist/cli/commands/ci.logs.command.descriptor.js.map +1 -0
- package/dist/cli/commands/ci.logs.command.impl.d.ts +18 -0
- package/dist/cli/commands/ci.logs.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/ci.logs.command.impl.js +58 -0
- package/dist/cli/commands/ci.logs.command.impl.js.map +1 -0
- package/dist/cli/commands/ci.rerun.command.descriptor.d.ts +27 -0
- package/dist/cli/commands/ci.rerun.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/ci.rerun.command.descriptor.js +25 -0
- package/dist/cli/commands/ci.rerun.command.descriptor.js.map +1 -0
- package/dist/cli/commands/ci.rerun.command.impl.d.ts +11 -0
- package/dist/cli/commands/ci.rerun.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/ci.rerun.command.impl.js +36 -0
- package/dist/cli/commands/ci.rerun.command.impl.js.map +1 -0
- package/dist/cli/commands/ci.show.command.descriptor.d.ts +27 -0
- package/dist/cli/commands/ci.show.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/ci.show.command.descriptor.js +25 -0
- package/dist/cli/commands/ci.show.command.descriptor.js.map +1 -0
- package/dist/cli/commands/ci.show.command.impl.d.ts +13 -0
- package/dist/cli/commands/ci.show.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/ci.show.command.impl.js +71 -0
- package/dist/cli/commands/ci.show.command.impl.js.map +1 -0
- package/dist/cli/commands/ci.status.command.descriptor.d.ts +27 -0
- package/dist/cli/commands/ci.status.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/ci.status.command.descriptor.js +25 -0
- package/dist/cli/commands/ci.status.command.descriptor.js.map +1 -0
- package/dist/cli/commands/ci.status.command.impl.d.ts +21 -0
- package/dist/cli/commands/ci.status.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/ci.status.command.impl.js +55 -0
- package/dist/cli/commands/ci.status.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.branch-policy.list.command.descriptor.d.ts +24 -0
- package/dist/cli/commands/forge.branch-policy.list.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.branch-policy.list.command.descriptor.js +25 -0
- package/dist/cli/commands/forge.branch-policy.list.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.branch-policy.list.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.branch-policy.list.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.branch-policy.list.command.impl.js +43 -0
- package/dist/cli/commands/forge.branch-policy.list.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.branch-policy.remove.command.descriptor.d.ts +28 -0
- package/dist/cli/commands/forge.branch-policy.remove.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.branch-policy.remove.command.descriptor.js +26 -0
- package/dist/cli/commands/forge.branch-policy.remove.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.branch-policy.remove.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.branch-policy.remove.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.branch-policy.remove.command.impl.js +47 -0
- package/dist/cli/commands/forge.branch-policy.remove.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.branch-policy.set.command.descriptor.d.ts +37 -0
- package/dist/cli/commands/forge.branch-policy.set.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.branch-policy.set.command.descriptor.js +30 -0
- package/dist/cli/commands/forge.branch-policy.set.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.branch-policy.set.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.branch-policy.set.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.branch-policy.set.command.impl.js +48 -0
- package/dist/cli/commands/forge.branch-policy.set.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.clone-url.command.descriptor.d.ts +38 -0
- package/dist/cli/commands/forge.clone-url.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.clone-url.command.descriptor.js +44 -0
- package/dist/cli/commands/forge.clone-url.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.clone-url.command.impl.d.ts +57 -0
- package/dist/cli/commands/forge.clone-url.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.clone-url.command.impl.js +175 -0
- package/dist/cli/commands/forge.clone-url.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.clone.command.descriptor.d.ts +36 -0
- package/dist/cli/commands/forge.clone.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.clone.command.descriptor.js +41 -0
- package/dist/cli/commands/forge.clone.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.clone.command.impl.d.ts +34 -0
- package/dist/cli/commands/forge.clone.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.clone.command.impl.js +115 -0
- package/dist/cli/commands/forge.clone.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.collaborator.add.command.descriptor.d.ts +34 -0
- package/dist/cli/commands/forge.collaborator.add.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.collaborator.add.command.descriptor.js +32 -0
- package/dist/cli/commands/forge.collaborator.add.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.collaborator.add.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.collaborator.add.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.collaborator.add.command.impl.js +45 -0
- package/dist/cli/commands/forge.collaborator.add.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.collaborator.list.command.descriptor.d.ts +24 -0
- package/dist/cli/commands/forge.collaborator.list.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.collaborator.list.command.descriptor.js +25 -0
- package/dist/cli/commands/forge.collaborator.list.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.collaborator.list.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.collaborator.list.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.collaborator.list.command.impl.js +43 -0
- package/dist/cli/commands/forge.collaborator.list.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.collaborator.remove.command.descriptor.d.ts +28 -0
- package/dist/cli/commands/forge.collaborator.remove.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.collaborator.remove.command.descriptor.js +26 -0
- package/dist/cli/commands/forge.collaborator.remove.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.collaborator.remove.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.collaborator.remove.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.collaborator.remove.command.impl.js +46 -0
- package/dist/cli/commands/forge.collaborator.remove.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.credential-helper.command.descriptor.d.ts +24 -0
- package/dist/cli/commands/forge.credential-helper.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.credential-helper.command.descriptor.js +29 -0
- package/dist/cli/commands/forge.credential-helper.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.credential-helper.command.impl.d.ts +72 -0
- package/dist/cli/commands/forge.credential-helper.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.credential-helper.command.impl.js +218 -0
- package/dist/cli/commands/forge.credential-helper.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.doctor.command.descriptor.d.ts +33 -0
- package/dist/cli/commands/forge.doctor.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.doctor.command.descriptor.js +41 -0
- package/dist/cli/commands/forge.doctor.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.doctor.command.impl.d.ts +88 -0
- package/dist/cli/commands/forge.doctor.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.doctor.command.impl.js +367 -0
- package/dist/cli/commands/forge.doctor.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.issue.close.command.descriptor.d.ts +34 -0
- package/dist/cli/commands/forge.issue.close.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.issue.close.command.descriptor.js +29 -0
- package/dist/cli/commands/forge.issue.close.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.issue.close.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.issue.close.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.issue.close.command.impl.js +52 -0
- package/dist/cli/commands/forge.issue.close.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.issue.comment.command.descriptor.d.ts +32 -0
- package/dist/cli/commands/forge.issue.comment.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.issue.comment.command.descriptor.js +27 -0
- package/dist/cli/commands/forge.issue.comment.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.issue.comment.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.issue.comment.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.issue.comment.command.impl.js +44 -0
- package/dist/cli/commands/forge.issue.comment.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.issue.comments.command.descriptor.d.ts +31 -0
- package/dist/cli/commands/forge.issue.comments.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.issue.comments.command.descriptor.js +26 -0
- package/dist/cli/commands/forge.issue.comments.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.issue.comments.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.issue.comments.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.issue.comments.command.impl.js +41 -0
- package/dist/cli/commands/forge.issue.comments.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.issue.create.command.descriptor.d.ts +55 -0
- package/dist/cli/commands/forge.issue.create.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.issue.create.command.descriptor.js +39 -0
- package/dist/cli/commands/forge.issue.create.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.issue.create.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.issue.create.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.issue.create.command.impl.js +43 -0
- package/dist/cli/commands/forge.issue.create.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.issue.get.command.descriptor.d.ts +28 -0
- package/dist/cli/commands/forge.issue.get.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.issue.get.command.descriptor.js +26 -0
- package/dist/cli/commands/forge.issue.get.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.issue.get.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.issue.get.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.issue.get.command.impl.js +41 -0
- package/dist/cli/commands/forge.issue.get.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.issue.list.command.descriptor.d.ts +39 -0
- package/dist/cli/commands/forge.issue.list.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.issue.list.command.descriptor.js +31 -0
- package/dist/cli/commands/forge.issue.list.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.issue.list.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.issue.list.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.issue.list.command.impl.js +44 -0
- package/dist/cli/commands/forge.issue.list.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.issue.reopen.command.descriptor.d.ts +34 -0
- package/dist/cli/commands/forge.issue.reopen.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.issue.reopen.command.descriptor.js +29 -0
- package/dist/cli/commands/forge.issue.reopen.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.issue.reopen.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.issue.reopen.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.issue.reopen.command.impl.js +42 -0
- package/dist/cli/commands/forge.issue.reopen.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.issue.search.command.descriptor.d.ts +34 -0
- package/dist/cli/commands/forge.issue.search.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.issue.search.command.descriptor.js +29 -0
- package/dist/cli/commands/forge.issue.search.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.issue.search.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.issue.search.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.issue.search.command.impl.js +43 -0
- package/dist/cli/commands/forge.issue.search.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.issue.update.command.descriptor.d.ts +55 -0
- package/dist/cli/commands/forge.issue.update.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.issue.update.command.descriptor.js +36 -0
- package/dist/cli/commands/forge.issue.update.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.issue.update.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.issue.update.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.issue.update.command.impl.js +43 -0
- package/dist/cli/commands/forge.issue.update.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.pr.close.command.descriptor.d.ts +31 -0
- package/dist/cli/commands/forge.pr.close.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.close.command.descriptor.js +31 -0
- package/dist/cli/commands/forge.pr.close.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.pr.close.command.impl.d.ts +17 -0
- package/dist/cli/commands/forge.pr.close.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.close.command.impl.js +51 -0
- package/dist/cli/commands/forge.pr.close.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.pr.create.command.descriptor.d.ts +49 -0
- package/dist/cli/commands/forge.pr.create.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.create.command.descriptor.js +37 -0
- package/dist/cli/commands/forge.pr.create.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.pr.create.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.pr.create.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.create.command.impl.js +59 -0
- package/dist/cli/commands/forge.pr.create.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.pr.files.command.descriptor.d.ts +38 -0
- package/dist/cli/commands/forge.pr.files.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.files.command.descriptor.js +40 -0
- package/dist/cli/commands/forge.pr.files.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.pr.files.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.pr.files.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.files.command.impl.js +64 -0
- package/dist/cli/commands/forge.pr.files.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.pr.get.command.descriptor.d.ts +28 -0
- package/dist/cli/commands/forge.pr.get.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.get.command.descriptor.js +26 -0
- package/dist/cli/commands/forge.pr.get.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.pr.get.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.pr.get.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.get.command.impl.js +43 -0
- package/dist/cli/commands/forge.pr.get.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.pr.list.command.descriptor.d.ts +40 -0
- package/dist/cli/commands/forge.pr.list.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.list.command.descriptor.js +41 -0
- package/dist/cli/commands/forge.pr.list.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.pr.list.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.pr.list.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.list.command.impl.js +44 -0
- package/dist/cli/commands/forge.pr.list.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.pr.merge-status.command.descriptor.d.ts +28 -0
- package/dist/cli/commands/forge.pr.merge-status.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.merge-status.command.descriptor.js +26 -0
- package/dist/cli/commands/forge.pr.merge-status.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.pr.merge-status.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.pr.merge-status.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.merge-status.command.impl.js +32 -0
- package/dist/cli/commands/forge.pr.merge-status.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.pr.merge.command.descriptor.d.ts +45 -0
- package/dist/cli/commands/forge.pr.merge.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.merge.command.descriptor.js +35 -0
- package/dist/cli/commands/forge.pr.merge.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.pr.merge.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.pr.merge.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.merge.command.impl.js +42 -0
- package/dist/cli/commands/forge.pr.merge.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.pr.review.command.descriptor.d.ts +47 -0
- package/dist/cli/commands/forge.pr.review.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.review.command.descriptor.js +40 -0
- package/dist/cli/commands/forge.pr.review.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.pr.review.command.impl.d.ts +22 -0
- package/dist/cli/commands/forge.pr.review.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.review.command.impl.js +62 -0
- package/dist/cli/commands/forge.pr.review.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.pr.stack.create.command.descriptor.d.ts +37 -0
- package/dist/cli/commands/forge.pr.stack.create.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.stack.create.command.descriptor.js +33 -0
- package/dist/cli/commands/forge.pr.stack.create.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.pr.stack.create.command.impl.d.ts +7 -0
- package/dist/cli/commands/forge.pr.stack.create.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.stack.create.command.impl.js +4 -0
- package/dist/cli/commands/forge.pr.stack.create.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.pr.stack.dissolve.command.descriptor.d.ts +34 -0
- package/dist/cli/commands/forge.pr.stack.dissolve.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.stack.dissolve.command.descriptor.js +29 -0
- package/dist/cli/commands/forge.pr.stack.dissolve.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.pr.stack.dissolve.command.impl.d.ts +7 -0
- package/dist/cli/commands/forge.pr.stack.dissolve.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.stack.dissolve.command.impl.js +4 -0
- package/dist/cli/commands/forge.pr.stack.dissolve.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.pr.stack.get.command.descriptor.d.ts +27 -0
- package/dist/cli/commands/forge.pr.stack.get.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.stack.get.command.descriptor.js +25 -0
- package/dist/cli/commands/forge.pr.stack.get.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.pr.stack.get.command.impl.d.ts +7 -0
- package/dist/cli/commands/forge.pr.stack.get.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.stack.get.command.impl.js +4 -0
- package/dist/cli/commands/forge.pr.stack.get.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.pr.stack.list.command.descriptor.d.ts +33 -0
- package/dist/cli/commands/forge.pr.stack.list.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.stack.list.command.descriptor.js +29 -0
- package/dist/cli/commands/forge.pr.stack.list.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.pr.stack.list.command.impl.d.ts +7 -0
- package/dist/cli/commands/forge.pr.stack.list.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.stack.list.command.impl.js +4 -0
- package/dist/cli/commands/forge.pr.stack.list.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.pr.stack.merge.command.descriptor.d.ts +46 -0
- package/dist/cli/commands/forge.pr.stack.merge.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.stack.merge.command.descriptor.js +36 -0
- package/dist/cli/commands/forge.pr.stack.merge.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.pr.stack.merge.command.impl.d.ts +7 -0
- package/dist/cli/commands/forge.pr.stack.merge.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.stack.merge.command.impl.js +4 -0
- package/dist/cli/commands/forge.pr.stack.merge.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.pr.stack.restack.command.descriptor.d.ts +37 -0
- package/dist/cli/commands/forge.pr.stack.restack.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.stack.restack.command.descriptor.js +30 -0
- package/dist/cli/commands/forge.pr.stack.restack.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.pr.stack.restack.command.impl.d.ts +7 -0
- package/dist/cli/commands/forge.pr.stack.restack.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.stack.restack.command.impl.js +4 -0
- package/dist/cli/commands/forge.pr.stack.restack.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.pr.stack.update.command.descriptor.d.ts +40 -0
- package/dist/cli/commands/forge.pr.stack.update.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.stack.update.command.descriptor.js +34 -0
- package/dist/cli/commands/forge.pr.stack.update.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.pr.stack.update.command.impl.d.ts +7 -0
- package/dist/cli/commands/forge.pr.stack.update.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.pr.stack.update.command.impl.js +4 -0
- package/dist/cli/commands/forge.pr.stack.update.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.push.command.descriptor.d.ts +38 -0
- package/dist/cli/commands/forge.push.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.push.command.descriptor.js +40 -0
- package/dist/cli/commands/forge.push.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.push.command.impl.d.ts +135 -0
- package/dist/cli/commands/forge.push.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.push.command.impl.js +467 -0
- package/dist/cli/commands/forge.push.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.push.workspace-checkouts.impl.consumer.d.ts +14 -0
- package/dist/cli/commands/forge.push.workspace-checkouts.impl.consumer.d.ts.map +1 -0
- package/dist/cli/commands/forge.push.workspace-checkouts.impl.consumer.js +52 -0
- package/dist/cli/commands/forge.push.workspace-checkouts.impl.consumer.js.map +1 -0
- package/dist/cli/commands/forge.remote.bootstrap.command.descriptor.d.ts +34 -0
- package/dist/cli/commands/forge.remote.bootstrap.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.remote.bootstrap.command.descriptor.js +39 -0
- package/dist/cli/commands/forge.remote.bootstrap.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.remote.bootstrap.command.impl.d.ts +44 -0
- package/dist/cli/commands/forge.remote.bootstrap.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.remote.bootstrap.command.impl.js +187 -0
- package/dist/cli/commands/forge.remote.bootstrap.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.repo.create.command.descriptor.d.ts +66 -0
- package/dist/cli/commands/forge.repo.create.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.repo.create.command.descriptor.js +64 -0
- package/dist/cli/commands/forge.repo.create.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.repo.create.command.impl.d.ts +40 -0
- package/dist/cli/commands/forge.repo.create.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.repo.create.command.impl.js +155 -0
- package/dist/cli/commands/forge.repo.create.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.repo.delete.command.descriptor.d.ts +30 -0
- package/dist/cli/commands/forge.repo.delete.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.repo.delete.command.descriptor.js +28 -0
- package/dist/cli/commands/forge.repo.delete.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.repo.delete.command.impl.d.ts +20 -0
- package/dist/cli/commands/forge.repo.delete.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.repo.delete.command.impl.js +77 -0
- package/dist/cli/commands/forge.repo.delete.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.repo.list.command.descriptor.d.ts +32 -0
- package/dist/cli/commands/forge.repo.list.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.repo.list.command.descriptor.js +28 -0
- package/dist/cli/commands/forge.repo.list.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.repo.list.command.impl.d.ts +16 -0
- package/dist/cli/commands/forge.repo.list.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.repo.list.command.impl.js +64 -0
- package/dist/cli/commands/forge.repo.list.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.repo.update.command.descriptor.d.ts +49 -0
- package/dist/cli/commands/forge.repo.update.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.repo.update.command.descriptor.js +47 -0
- package/dist/cli/commands/forge.repo.update.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.repo.update.command.impl.d.ts +29 -0
- package/dist/cli/commands/forge.repo.update.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.repo.update.command.impl.js +141 -0
- package/dist/cli/commands/forge.repo.update.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.setup-git.command.descriptor.d.ts +50 -0
- package/dist/cli/commands/forge.setup-git.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.setup-git.command.descriptor.js +63 -0
- package/dist/cli/commands/forge.setup-git.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.setup-git.command.impl.d.ts +37 -0
- package/dist/cli/commands/forge.setup-git.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.setup-git.command.impl.js +244 -0
- package/dist/cli/commands/forge.setup-git.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.smoke.ai-review.command.descriptor.d.ts +48 -0
- package/dist/cli/commands/forge.smoke.ai-review.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.smoke.ai-review.command.descriptor.js +43 -0
- package/dist/cli/commands/forge.smoke.ai-review.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.smoke.ai-review.command.impl.d.ts +156 -0
- package/dist/cli/commands/forge.smoke.ai-review.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.smoke.ai-review.command.impl.js +453 -0
- package/dist/cli/commands/forge.smoke.ai-review.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.smoke.merge.command.descriptor.d.ts +45 -0
- package/dist/cli/commands/forge.smoke.merge.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.smoke.merge.command.descriptor.js +46 -0
- package/dist/cli/commands/forge.smoke.merge.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.smoke.merge.command.impl.d.ts +60 -0
- package/dist/cli/commands/forge.smoke.merge.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.smoke.merge.command.impl.js +270 -0
- package/dist/cli/commands/forge.smoke.merge.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.smoke.registry.command.descriptor.d.ts +76 -0
- package/dist/cli/commands/forge.smoke.registry.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.smoke.registry.command.descriptor.js +72 -0
- package/dist/cli/commands/forge.smoke.registry.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.smoke.support.d.ts +54 -0
- package/dist/cli/commands/forge.smoke.support.d.ts.map +1 -0
- package/dist/cli/commands/forge.smoke.support.js +153 -0
- package/dist/cli/commands/forge.smoke.support.js.map +1 -0
- package/dist/cli/commands/forge.ssh-key.add.command.descriptor.d.ts +30 -0
- package/dist/cli/commands/forge.ssh-key.add.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.ssh-key.add.command.descriptor.js +38 -0
- package/dist/cli/commands/forge.ssh-key.add.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.ssh-key.add.command.impl.d.ts +19 -0
- package/dist/cli/commands/forge.ssh-key.add.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.ssh-key.add.command.impl.js +51 -0
- package/dist/cli/commands/forge.ssh-key.add.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.ssh-key.list.command.descriptor.d.ts +20 -0
- package/dist/cli/commands/forge.ssh-key.list.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.ssh-key.list.command.descriptor.js +23 -0
- package/dist/cli/commands/forge.ssh-key.list.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.ssh-key.list.command.impl.d.ts +15 -0
- package/dist/cli/commands/forge.ssh-key.list.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.ssh-key.list.command.impl.js +32 -0
- package/dist/cli/commands/forge.ssh-key.list.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.ssh-key.remove.command.descriptor.d.ts +24 -0
- package/dist/cli/commands/forge.ssh-key.remove.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.ssh-key.remove.command.descriptor.js +29 -0
- package/dist/cli/commands/forge.ssh-key.remove.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.ssh-key.remove.command.impl.d.ts +17 -0
- package/dist/cli/commands/forge.ssh-key.remove.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.ssh-key.remove.command.impl.js +48 -0
- package/dist/cli/commands/forge.ssh-key.remove.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.token.list.command.descriptor.d.ts +24 -0
- package/dist/cli/commands/forge.token.list.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.token.list.command.descriptor.js +25 -0
- package/dist/cli/commands/forge.token.list.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.token.list.command.impl.d.ts +8 -0
- package/dist/cli/commands/forge.token.list.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.token.list.command.impl.js +61 -0
- package/dist/cli/commands/forge.token.list.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.token.mint.command.descriptor.d.ts +33 -0
- package/dist/cli/commands/forge.token.mint.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.token.mint.command.descriptor.js +29 -0
- package/dist/cli/commands/forge.token.mint.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.token.mint.command.impl.d.ts +33 -0
- package/dist/cli/commands/forge.token.mint.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.token.mint.command.impl.js +100 -0
- package/dist/cli/commands/forge.token.mint.command.impl.js.map +1 -0
- package/dist/cli/commands/forge.token.revoke.command.descriptor.d.ts +28 -0
- package/dist/cli/commands/forge.token.revoke.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/forge.token.revoke.command.descriptor.js +26 -0
- package/dist/cli/commands/forge.token.revoke.command.descriptor.js.map +1 -0
- package/dist/cli/commands/forge.token.revoke.command.impl.d.ts +18 -0
- package/dist/cli/commands/forge.token.revoke.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/forge.token.revoke.command.impl.js +43 -0
- package/dist/cli/commands/forge.token.revoke.command.impl.js.map +1 -0
- package/dist/cli/commands/registry.access.command.descriptor.d.ts +39 -0
- package/dist/cli/commands/registry.access.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/registry.access.command.descriptor.js +46 -0
- package/dist/cli/commands/registry.access.command.descriptor.js.map +1 -0
- package/dist/cli/commands/registry.access.command.impl.d.ts +123 -0
- package/dist/cli/commands/registry.access.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/registry.access.command.impl.js +236 -0
- package/dist/cli/commands/registry.access.command.impl.js.map +1 -0
- package/dist/cli/commands/registry.authority.verify.command.descriptor.d.ts +26 -0
- package/dist/cli/commands/registry.authority.verify.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/registry.authority.verify.command.descriptor.js +16 -0
- package/dist/cli/commands/registry.authority.verify.command.descriptor.js.map +1 -0
- package/dist/cli/commands/registry.env.command.descriptor.d.ts +19 -0
- package/dist/cli/commands/registry.env.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/registry.env.command.descriptor.js +22 -0
- package/dist/cli/commands/registry.env.command.descriptor.js.map +1 -0
- package/dist/cli/commands/registry.env.command.impl.d.ts +41 -0
- package/dist/cli/commands/registry.env.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/registry.env.command.impl.js +51 -0
- package/dist/cli/commands/registry.env.command.impl.js.map +1 -0
- package/dist/cli/commands/registry.env.fast-path.d.ts +27 -0
- package/dist/cli/commands/registry.env.fast-path.d.ts.map +1 -0
- package/dist/cli/commands/registry.env.fast-path.js +45 -0
- package/dist/cli/commands/registry.env.fast-path.js.map +1 -0
- package/dist/cli/commands/registry.publish.command.descriptor.d.ts +51 -0
- package/dist/cli/commands/registry.publish.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/registry.publish.command.descriptor.js +53 -0
- package/dist/cli/commands/registry.publish.command.descriptor.js.map +1 -0
- package/dist/cli/commands/registry.publish.command.impl.d.ts +56 -0
- package/dist/cli/commands/registry.publish.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/registry.publish.command.impl.js +78 -0
- package/dist/cli/commands/registry.publish.command.impl.js.map +1 -0
- package/dist/cli/commands/registry.setup.command.descriptor.d.ts +27 -0
- package/dist/cli/commands/registry.setup.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/registry.setup.command.descriptor.js +33 -0
- package/dist/cli/commands/registry.setup.command.descriptor.js.map +1 -0
- package/dist/cli/commands/registry.setup.command.impl.d.ts +19 -0
- package/dist/cli/commands/registry.setup.command.impl.d.ts.map +1 -0
- package/dist/cli/commands/registry.setup.command.impl.js +118 -0
- package/dist/cli/commands/registry.setup.command.impl.js.map +1 -0
- package/dist/cli/commands/registry.smoke.command.descriptor.d.ts +59 -0
- package/dist/cli/commands/registry.smoke.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/registry.smoke.command.descriptor.js +53 -0
- package/dist/cli/commands/registry.smoke.command.descriptor.js.map +1 -0
- package/dist/cli/commands/registry.token.create.command.descriptor.d.ts +30 -0
- package/dist/cli/commands/registry.token.create.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/registry.token.create.command.descriptor.js +34 -0
- package/dist/cli/commands/registry.token.create.command.descriptor.js.map +1 -0
- package/dist/cli/commands/registry.token.list.command.descriptor.d.ts +20 -0
- package/dist/cli/commands/registry.token.list.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/registry.token.list.command.descriptor.js +23 -0
- package/dist/cli/commands/registry.token.list.command.descriptor.js.map +1 -0
- package/dist/cli/commands/registry.token.revoke.command.descriptor.d.ts +24 -0
- package/dist/cli/commands/registry.token.revoke.command.descriptor.d.ts.map +1 -0
- package/dist/cli/commands/registry.token.revoke.command.descriptor.js +23 -0
- package/dist/cli/commands/registry.token.revoke.command.descriptor.js.map +1 -0
- package/dist/cli/compat/pr.commands.d.ts +31 -0
- package/dist/cli/compat/pr.commands.d.ts.map +1 -0
- package/dist/cli/compat/pr.commands.js +161 -0
- package/dist/cli/compat/pr.commands.js.map +1 -0
- package/dist/cli/compat/pr.context.d.ts +27 -0
- package/dist/cli/compat/pr.context.d.ts.map +1 -0
- package/dist/cli/compat/pr.context.js +62 -0
- package/dist/cli/compat/pr.context.js.map +1 -0
- package/dist/cli/compat/pr.descriptors.d.ts +8 -0
- package/dist/cli/compat/pr.descriptors.d.ts.map +1 -0
- package/dist/cli/compat/pr.descriptors.js +45 -0
- package/dist/cli/compat/pr.descriptors.js.map +1 -0
- package/dist/cli/compat/pr.diff.impl.d.ts +6 -0
- package/dist/cli/compat/pr.diff.impl.d.ts.map +1 -0
- package/dist/cli/compat/pr.diff.impl.js +3 -0
- package/dist/cli/compat/pr.diff.impl.js.map +1 -0
- package/dist/cli/compat/pr.list.impl.d.ts +6 -0
- package/dist/cli/compat/pr.list.impl.d.ts.map +1 -0
- package/dist/cli/compat/pr.list.impl.js +3 -0
- package/dist/cli/compat/pr.list.impl.js.map +1 -0
- package/dist/cli/compat/pr.merge.impl.d.ts +6 -0
- package/dist/cli/compat/pr.merge.impl.d.ts.map +1 -0
- package/dist/cli/compat/pr.merge.impl.js +3 -0
- package/dist/cli/compat/pr.merge.impl.js.map +1 -0
- package/dist/cli/compat/pr.review.impl.d.ts +6 -0
- package/dist/cli/compat/pr.review.impl.d.ts.map +1 -0
- package/dist/cli/compat/pr.review.impl.js +3 -0
- package/dist/cli/compat/pr.review.impl.js.map +1 -0
- package/dist/cli/compat/pr.view.impl.d.ts +6 -0
- package/dist/cli/compat/pr.view.impl.d.ts.map +1 -0
- package/dist/cli/compat/pr.view.impl.js +3 -0
- package/dist/cli/compat/pr.view.impl.js.map +1 -0
- package/dist/cli/docs/forge.cli.docs.descriptor.d.ts +4 -0
- package/dist/cli/docs/forge.cli.docs.descriptor.d.ts.map +1 -0
- package/dist/cli/docs/forge.cli.docs.descriptor.js +279 -0
- package/dist/cli/docs/forge.cli.docs.descriptor.js.map +1 -0
- package/dist/cli/docs/forge.split-repositories.docs.descriptor.d.ts +4 -0
- package/dist/cli/docs/forge.split-repositories.docs.descriptor.d.ts.map +1 -0
- package/dist/cli/docs/forge.split-repositories.docs.descriptor.js +103 -0
- package/dist/cli/docs/forge.split-repositories.docs.descriptor.js.map +1 -0
- package/dist/cli/docs/registry.publishing.docs.descriptor.d.ts +4 -0
- package/dist/cli/docs/registry.publishing.docs.descriptor.d.ts.map +1 -0
- package/dist/cli/docs/registry.publishing.docs.descriptor.js +162 -0
- package/dist/cli/docs/registry.publishing.docs.descriptor.js.map +1 -0
- package/dist/cli/fleet/ci-fleet.d.ts +7 -0
- package/dist/cli/fleet/ci-fleet.d.ts.map +1 -0
- package/dist/cli/fleet/ci-fleet.js +53 -0
- package/dist/cli/fleet/ci-fleet.js.map +1 -0
- package/dist/cli/fleet/ci.fleet.command.descriptor.d.ts +30 -0
- package/dist/cli/fleet/ci.fleet.command.descriptor.d.ts.map +1 -0
- package/dist/cli/fleet/ci.fleet.command.descriptor.js +23 -0
- package/dist/cli/fleet/ci.fleet.command.descriptor.js.map +1 -0
- package/dist/cli/fleet/ci.fleet.command.impl.d.ts +8 -0
- package/dist/cli/fleet/ci.fleet.command.impl.d.ts.map +1 -0
- package/dist/cli/fleet/ci.fleet.command.impl.js +27 -0
- package/dist/cli/fleet/ci.fleet.command.impl.js.map +1 -0
- package/dist/cli/fleet/collection-repos.d.ts +19 -0
- package/dist/cli/fleet/collection-repos.d.ts.map +1 -0
- package/dist/cli/fleet/collection-repos.js +59 -0
- package/dist/cli/fleet/collection-repos.js.map +1 -0
- package/dist/cli/fleet/forge.pr.fleet.command.descriptor.d.ts +27 -0
- package/dist/cli/fleet/forge.pr.fleet.command.descriptor.d.ts.map +1 -0
- package/dist/cli/fleet/forge.pr.fleet.command.descriptor.js +22 -0
- package/dist/cli/fleet/forge.pr.fleet.command.descriptor.js.map +1 -0
- package/dist/cli/fleet/forge.pr.fleet.command.impl.d.ts +8 -0
- package/dist/cli/fleet/forge.pr.fleet.command.impl.d.ts.map +1 -0
- package/dist/cli/fleet/forge.pr.fleet.command.impl.js +21 -0
- package/dist/cli/fleet/forge.pr.fleet.command.impl.js.map +1 -0
- package/dist/cli/fleet/pr-fleet.d.ts +9 -0
- package/dist/cli/fleet/pr-fleet.d.ts.map +1 -0
- package/dist/cli/fleet/pr-fleet.js +48 -0
- package/dist/cli/fleet/pr-fleet.js.map +1 -0
- package/dist/cli/fleet/schemas.d.ts +39 -0
- package/dist/cli/fleet/schemas.d.ts.map +1 -0
- package/dist/cli/fleet/schemas.js +13 -0
- package/dist/cli/fleet/schemas.js.map +1 -0
- package/dist/cli/forge-group.descriptor.d.ts +17 -0
- package/dist/cli/forge-group.descriptor.d.ts.map +1 -0
- package/dist/cli/forge-group.descriptor.js +26 -0
- package/dist/cli/forge-group.descriptor.js.map +1 -0
- package/dist/cli/forge.branch-policy.cli-group.descriptor.d.ts +10 -0
- package/dist/cli/forge.branch-policy.cli-group.descriptor.d.ts.map +1 -0
- package/dist/cli/forge.branch-policy.cli-group.descriptor.js +20 -0
- package/dist/cli/forge.branch-policy.cli-group.descriptor.js.map +1 -0
- package/dist/cli/forge.collaborator.cli-group.descriptor.d.ts +10 -0
- package/dist/cli/forge.collaborator.cli-group.descriptor.d.ts.map +1 -0
- package/dist/cli/forge.collaborator.cli-group.descriptor.js +20 -0
- package/dist/cli/forge.collaborator.cli-group.descriptor.js.map +1 -0
- package/dist/cli/forge.issue.cli-group.descriptor.d.ts +10 -0
- package/dist/cli/forge.issue.cli-group.descriptor.d.ts.map +1 -0
- package/dist/cli/forge.issue.cli-group.descriptor.js +19 -0
- package/dist/cli/forge.issue.cli-group.descriptor.js.map +1 -0
- package/dist/cli/forge.pr.cli-group.descriptor.d.ts +10 -0
- package/dist/cli/forge.pr.cli-group.descriptor.d.ts.map +1 -0
- package/dist/cli/forge.pr.cli-group.descriptor.js +19 -0
- package/dist/cli/forge.pr.cli-group.descriptor.js.map +1 -0
- package/dist/cli/forge.pr.stack.cli-group.descriptor.d.ts +4 -0
- package/dist/cli/forge.pr.stack.cli-group.descriptor.d.ts.map +1 -0
- package/dist/cli/forge.pr.stack.cli-group.descriptor.js +13 -0
- package/dist/cli/forge.pr.stack.cli-group.descriptor.js.map +1 -0
- package/dist/cli/forge.remote.cli-group.descriptor.d.ts +11 -0
- package/dist/cli/forge.remote.cli-group.descriptor.d.ts.map +1 -0
- package/dist/cli/forge.remote.cli-group.descriptor.js +20 -0
- package/dist/cli/forge.remote.cli-group.descriptor.js.map +1 -0
- package/dist/cli/forge.repo.cli-group.descriptor.d.ts +10 -0
- package/dist/cli/forge.repo.cli-group.descriptor.d.ts.map +1 -0
- package/dist/cli/forge.repo.cli-group.descriptor.js +19 -0
- package/dist/cli/forge.repo.cli-group.descriptor.js.map +1 -0
- package/dist/cli/forge.smoke.cli-group.descriptor.d.ts +17 -0
- package/dist/cli/forge.smoke.cli-group.descriptor.d.ts.map +1 -0
- package/dist/cli/forge.smoke.cli-group.descriptor.js +26 -0
- package/dist/cli/forge.smoke.cli-group.descriptor.js.map +1 -0
- package/dist/cli/forge.ssh-key.cli-group.descriptor.d.ts +13 -0
- package/dist/cli/forge.ssh-key.cli-group.descriptor.d.ts.map +1 -0
- package/dist/cli/forge.ssh-key.cli-group.descriptor.js +22 -0
- package/dist/cli/forge.ssh-key.cli-group.descriptor.js.map +1 -0
- package/dist/cli/forge.token.cli-group.descriptor.d.ts +10 -0
- package/dist/cli/forge.token.cli-group.descriptor.d.ts.map +1 -0
- package/dist/cli/forge.token.cli-group.descriptor.js +19 -0
- package/dist/cli/forge.token.cli-group.descriptor.js.map +1 -0
- package/dist/cli/index.d.ts +89 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +96 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/lib/active-org-header.d.ts +6 -0
- package/dist/cli/lib/active-org-header.d.ts.map +1 -0
- package/dist/cli/lib/active-org-header.js +11 -0
- package/dist/cli/lib/active-org-header.js.map +1 -0
- package/dist/cli/lib/auth-client.d.ts +26 -0
- package/dist/cli/lib/auth-client.d.ts.map +1 -0
- package/dist/cli/lib/auth-client.js +79 -0
- package/dist/cli/lib/auth-client.js.map +1 -0
- package/dist/cli/lib/branch-policies.d.ts +55 -0
- package/dist/cli/lib/branch-policies.d.ts.map +1 -0
- package/dist/cli/lib/branch-policies.js +105 -0
- package/dist/cli/lib/branch-policies.js.map +1 -0
- package/dist/cli/lib/ci-attempts.d.ts +64 -0
- package/dist/cli/lib/ci-attempts.d.ts.map +1 -0
- package/dist/cli/lib/ci-attempts.js +112 -0
- package/dist/cli/lib/ci-attempts.js.map +1 -0
- package/dist/cli/lib/ci-run-control.d.ts +35 -0
- package/dist/cli/lib/ci-run-control.d.ts.map +1 -0
- package/dist/cli/lib/ci-run-control.js +114 -0
- package/dist/cli/lib/ci-run-control.js.map +1 -0
- package/dist/cli/lib/collaborators.d.ts +43 -0
- package/dist/cli/lib/collaborators.d.ts.map +1 -0
- package/dist/cli/lib/collaborators.js +70 -0
- package/dist/cli/lib/collaborators.js.map +1 -0
- package/dist/cli/lib/credential-helper.d.ts +47 -0
- package/dist/cli/lib/credential-helper.d.ts.map +1 -0
- package/dist/cli/lib/credential-helper.js +76 -0
- package/dist/cli/lib/credential-helper.js.map +1 -0
- package/dist/cli/lib/git-credential-setup.d.ts +93 -0
- package/dist/cli/lib/git-credential-setup.d.ts.map +1 -0
- package/dist/cli/lib/git-credential-setup.js +185 -0
- package/dist/cli/lib/git-credential-setup.js.map +1 -0
- package/dist/cli/lib/git-credential-setup.node.d.ts +26 -0
- package/dist/cli/lib/git-credential-setup.node.d.ts.map +1 -0
- package/dist/cli/lib/git-credential-setup.node.js +89 -0
- package/dist/cli/lib/git-credential-setup.node.js.map +1 -0
- package/dist/cli/lib/output.d.ts +48 -0
- package/dist/cli/lib/output.d.ts.map +1 -0
- package/dist/cli/lib/output.js +74 -0
- package/dist/cli/lib/output.js.map +1 -0
- package/dist/cli/lib/registry-client-config.d.ts +34 -0
- package/dist/cli/lib/registry-client-config.d.ts.map +1 -0
- package/dist/cli/lib/registry-client-config.js +106 -0
- package/dist/cli/lib/registry-client-config.js.map +1 -0
- package/dist/cli/lib/registry-projection.d.ts +41 -0
- package/dist/cli/lib/registry-projection.d.ts.map +1 -0
- package/dist/cli/lib/registry-projection.js +176 -0
- package/dist/cli/lib/registry-projection.js.map +1 -0
- package/dist/cli/lib/repo-ref.d.ts +23 -0
- package/dist/cli/lib/repo-ref.d.ts.map +1 -0
- package/dist/cli/lib/repo-ref.js +52 -0
- package/dist/cli/lib/repo-ref.js.map +1 -0
- package/dist/cli/lib/ssh-identity.d.ts +109 -0
- package/dist/cli/lib/ssh-identity.d.ts.map +1 -0
- package/dist/cli/lib/ssh-identity.js +326 -0
- package/dist/cli/lib/ssh-identity.js.map +1 -0
- package/dist/cli/lib/ssh-key-source.d.ts +60 -0
- package/dist/cli/lib/ssh-key-source.d.ts.map +1 -0
- package/dist/cli/lib/ssh-key-source.js +104 -0
- package/dist/cli/lib/ssh-key-source.js.map +1 -0
- package/dist/cli/lib/ssh-keygen.d.ts +49 -0
- package/dist/cli/lib/ssh-keygen.d.ts.map +1 -0
- package/dist/cli/lib/ssh-keygen.js +101 -0
- package/dist/cli/lib/ssh-keygen.js.map +1 -0
- package/dist/cli/lib/stacks.d.ts +15 -0
- package/dist/cli/lib/stacks.d.ts.map +1 -0
- package/dist/cli/lib/stacks.js +260 -0
- package/dist/cli/lib/stacks.js.map +1 -0
- package/dist/cli/lib/tracking.d.ts +227 -0
- package/dist/cli/lib/tracking.d.ts.map +1 -0
- package/dist/cli/lib/tracking.js +524 -0
- package/dist/cli/lib/tracking.js.map +1 -0
- package/dist/cli/lib/transport.d.ts +79 -0
- package/dist/cli/lib/transport.d.ts.map +1 -0
- package/dist/cli/lib/transport.js +289 -0
- package/dist/cli/lib/transport.js.map +1 -0
- package/dist/cli/lib/types.d.ts +117 -0
- package/dist/cli/lib/types.d.ts.map +1 -0
- package/dist/cli/lib/types.js +2 -0
- package/dist/cli/lib/types.js.map +1 -0
- package/dist/cli/lib/user-environment.projection.d.ts +63 -0
- package/dist/cli/lib/user-environment.projection.d.ts.map +1 -0
- package/dist/cli/lib/user-environment.projection.js +202 -0
- package/dist/cli/lib/user-environment.projection.js.map +1 -0
- package/dist/cli/logging/forge-cli.logger.descriptor.d.ts +4 -0
- package/dist/cli/logging/forge-cli.logger.descriptor.d.ts.map +1 -0
- package/dist/cli/logging/forge-cli.logger.descriptor.js +12 -0
- package/dist/cli/logging/forge-cli.logger.descriptor.js.map +1 -0
- package/dist/cli/plugin.d.ts +87 -0
- package/dist/cli/plugin.d.ts.map +1 -0
- package/dist/cli/plugin.js +392 -0
- package/dist/cli/plugin.js.map +1 -0
- package/dist/cli/registry-group.descriptor.d.ts +11 -0
- package/dist/cli/registry-group.descriptor.d.ts.map +1 -0
- package/dist/cli/registry-group.descriptor.js +40 -0
- package/dist/cli/registry-group.descriptor.js.map +1 -0
- package/dist/cli/registry.authority.cli-group.descriptor.d.ts +4 -0
- package/dist/cli/registry.authority.cli-group.descriptor.d.ts.map +1 -0
- package/dist/cli/registry.authority.cli-group.descriptor.js +12 -0
- package/dist/cli/registry.authority.cli-group.descriptor.js.map +1 -0
- package/dist/cli/registry.token.cli-group.descriptor.d.ts +10 -0
- package/dist/cli/registry.token.cli-group.descriptor.d.ts.map +1 -0
- package/dist/cli/registry.token.cli-group.descriptor.js +19 -0
- package/dist/cli/registry.token.cli-group.descriptor.js.map +1 -0
- package/dist/cli/settings/forge-cli.settings.d.ts +22 -0
- package/dist/cli/settings/forge-cli.settings.d.ts.map +1 -0
- package/dist/cli/settings/forge-cli.settings.js +62 -0
- package/dist/cli/settings/forge-cli.settings.js.map +1 -0
- package/dist/cli/settings/forge.cli.config.descriptor.d.ts +121 -0
- package/dist/cli/settings/forge.cli.config.descriptor.d.ts.map +1 -0
- package/dist/cli/settings/forge.cli.config.descriptor.js +127 -0
- package/dist/cli/settings/forge.cli.config.descriptor.js.map +1 -0
- package/dist/cli/subscriptions/auth-login.projection-outcome.d.ts +30 -0
- package/dist/cli/subscriptions/auth-login.projection-outcome.d.ts.map +1 -0
- package/dist/cli/subscriptions/auth-login.projection-outcome.js +25 -0
- package/dist/cli/subscriptions/auth-login.projection-outcome.js.map +1 -0
- package/dist/cli/subscriptions/auth-login.setup-git.descriptor.d.ts +13 -0
- package/dist/cli/subscriptions/auth-login.setup-git.descriptor.d.ts.map +1 -0
- package/dist/cli/subscriptions/auth-login.setup-git.descriptor.js +13 -0
- package/dist/cli/subscriptions/auth-login.setup-git.descriptor.js.map +1 -0
- package/dist/cli/subscriptions/auth-login.setup-git.impl.d.ts +24 -0
- package/dist/cli/subscriptions/auth-login.setup-git.impl.d.ts.map +1 -0
- package/dist/cli/subscriptions/auth-login.setup-git.impl.js +57 -0
- package/dist/cli/subscriptions/auth-login.setup-git.impl.js.map +1 -0
- package/dist/cli/subscriptions/auth-login.setup-registry.descriptor.d.ts +13 -0
- package/dist/cli/subscriptions/auth-login.setup-registry.descriptor.d.ts.map +1 -0
- package/dist/cli/subscriptions/auth-login.setup-registry.descriptor.js +13 -0
- package/dist/cli/subscriptions/auth-login.setup-registry.descriptor.js.map +1 -0
- package/dist/cli/subscriptions/auth-login.setup-registry.impl.d.ts +20 -0
- package/dist/cli/subscriptions/auth-login.setup-registry.impl.d.ts.map +1 -0
- package/dist/cli/subscriptions/auth-login.setup-registry.impl.js +52 -0
- package/dist/cli/subscriptions/auth-login.setup-registry.impl.js.map +1 -0
- package/dist/client.d.ts +15 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +22 -0
- package/dist/client.js.map +1 -0
- package/dist/docs/forge.docs.descriptor.d.ts +4 -0
- package/dist/docs/forge.docs.descriptor.d.ts.map +1 -0
- package/dist/docs/forge.docs.descriptor.js +74 -0
- package/dist/docs/forge.docs.descriptor.js.map +1 -0
- package/dist/docs/index.d.ts +2 -0
- package/dist/docs/index.d.ts.map +1 -0
- package/dist/docs/index.js +2 -0
- package/dist/docs/index.js.map +1 -0
- package/dist/evidence-client.d.ts +85 -0
- package/dist/evidence-client.d.ts.map +1 -0
- package/dist/evidence-client.js +401 -0
- package/dist/evidence-client.js.map +1 -0
- package/dist/extraction/consumer.d.ts +2 -0
- package/dist/extraction/consumer.d.ts.map +1 -0
- package/dist/extraction/consumer.js +2 -0
- package/dist/extraction/consumer.js.map +1 -0
- package/dist/extraction/index.d.ts +4 -0
- package/dist/extraction/index.d.ts.map +1 -0
- package/dist/extraction/index.js +4 -0
- package/dist/extraction/index.js.map +1 -0
- package/dist/extraction/planner.d.ts +24 -0
- package/dist/extraction/planner.d.ts.map +1 -0
- package/dist/extraction/planner.js +184 -0
- package/dist/extraction/planner.js.map +1 -0
- package/dist/extraction/repository-placement.d.ts +44 -0
- package/dist/extraction/repository-placement.d.ts.map +1 -0
- package/dist/extraction/repository-placement.js +184 -0
- package/dist/extraction/repository-placement.js.map +1 -0
- package/dist/extraction/schemas.d.ts +459 -0
- package/dist/extraction/schemas.d.ts.map +1 -0
- package/dist/extraction/schemas.js +174 -0
- package/dist/extraction/schemas.js.map +1 -0
- package/dist/extraction/source-evidence.consumer.d.ts +4 -0
- package/dist/extraction/source-evidence.consumer.d.ts.map +1 -0
- package/dist/extraction/source-evidence.consumer.js +49 -0
- package/dist/extraction/source-evidence.consumer.js.map +1 -0
- package/dist/failures.d.ts +9 -0
- package/dist/failures.d.ts.map +1 -0
- package/dist/failures.js +12 -0
- package/dist/failures.js.map +1 -0
- package/dist/forge.api-client.d.ts +14 -0
- package/dist/forge.api-client.d.ts.map +1 -0
- package/dist/forge.api-client.descriptor.d.ts +52 -0
- package/dist/forge.api-client.descriptor.d.ts.map +1 -0
- package/dist/forge.api-client.descriptor.js +17 -0
- package/dist/forge.api-client.descriptor.js.map +1 -0
- package/dist/forge.api-client.js +11 -0
- package/dist/forge.api-client.js.map +1 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -0
- package/dist/jobs/stack-operation-host.context.d.ts +36 -0
- package/dist/jobs/stack-operation-host.context.d.ts.map +1 -0
- package/dist/jobs/stack-operation-host.context.js +8 -0
- package/dist/jobs/stack-operation-host.context.js.map +1 -0
- package/dist/jobs/stack-operation-recovery.d.ts +5 -0
- package/dist/jobs/stack-operation-recovery.d.ts.map +1 -0
- package/dist/jobs/stack-operation-recovery.job.descriptor.d.ts +18 -0
- package/dist/jobs/stack-operation-recovery.job.descriptor.d.ts.map +1 -0
- package/dist/jobs/stack-operation-recovery.job.descriptor.js +35 -0
- package/dist/jobs/stack-operation-recovery.job.descriptor.js.map +1 -0
- package/dist/jobs/stack-operation-recovery.job.impl.d.ts +8 -0
- package/dist/jobs/stack-operation-recovery.job.impl.d.ts.map +1 -0
- package/dist/jobs/stack-operation-recovery.job.impl.js +14 -0
- package/dist/jobs/stack-operation-recovery.job.impl.js.map +1 -0
- package/dist/jobs/stack-operation-recovery.js +5 -0
- package/dist/jobs/stack-operation-recovery.js.map +1 -0
- package/dist/migration/ssh-contract.d.ts +54 -0
- package/dist/migration/ssh-contract.d.ts.map +1 -0
- package/dist/migration/ssh-contract.js +76 -0
- package/dist/migration/ssh-contract.js.map +1 -0
- package/dist/plugin.d.ts +3 -0
- package/dist/plugin.d.ts.map +1 -0
- package/dist/plugin.js +58 -0
- package/dist/plugin.js.map +1 -0
- package/dist/pr-idempotency.d.ts +22 -0
- package/dist/pr-idempotency.d.ts.map +1 -0
- package/dist/pr-idempotency.js +36 -0
- package/dist/pr-idempotency.js.map +1 -0
- package/dist/presentation.d.ts +298 -0
- package/dist/presentation.d.ts.map +1 -0
- package/dist/presentation.js +10 -0
- package/dist/presentation.js.map +1 -0
- package/dist/pull-request/index.d.ts +4 -0
- package/dist/pull-request/index.d.ts.map +1 -0
- package/dist/pull-request/index.js +4 -0
- package/dist/pull-request/index.js.map +1 -0
- package/dist/pull-request/pull-request.d.ts +35 -0
- package/dist/pull-request/pull-request.d.ts.map +1 -0
- package/dist/pull-request/pull-request.descriptor.d.ts +52 -0
- package/dist/pull-request/pull-request.descriptor.d.ts.map +1 -0
- package/dist/pull-request/pull-request.descriptor.js +17 -0
- package/dist/pull-request/pull-request.descriptor.js.map +1 -0
- package/dist/pull-request/pull-request.impl.d.ts +38 -0
- package/dist/pull-request/pull-request.impl.d.ts.map +1 -0
- package/dist/pull-request/pull-request.impl.js +232 -0
- package/dist/pull-request/pull-request.impl.js.map +1 -0
- package/dist/pull-request/pull-request.js +11 -0
- package/dist/pull-request/pull-request.js.map +1 -0
- package/dist/pull-request/request-client.d.ts +8 -0
- package/dist/pull-request/request-client.d.ts.map +1 -0
- package/dist/pull-request/request-client.js +45 -0
- package/dist/pull-request/request-client.js.map +1 -0
- package/dist/repository-ref.d.ts +59 -0
- package/dist/repository-ref.d.ts.map +1 -0
- package/dist/repository-ref.js +116 -0
- package/dist/repository-ref.js.map +1 -0
- package/dist/request.d.ts +135 -0
- package/dist/request.d.ts.map +1 -0
- package/dist/request.js +362 -0
- package/dist/request.js.map +1 -0
- package/dist/schemas/actions.d.ts +408 -0
- package/dist/schemas/actions.d.ts.map +1 -0
- package/dist/schemas/actions.js +389 -0
- package/dist/schemas/actions.js.map +1 -0
- package/dist/schemas/ci-publish-target.d.ts +38 -0
- package/dist/schemas/ci-publish-target.d.ts.map +1 -0
- package/dist/schemas/ci-publish-target.js +21 -0
- package/dist/schemas/ci-publish-target.js.map +1 -0
- package/dist/schemas/citations.d.ts +24 -0
- package/dist/schemas/citations.d.ts.map +1 -0
- package/dist/schemas/citations.js +15 -0
- package/dist/schemas/citations.js.map +1 -0
- package/dist/schemas/forge-cli-settings.d.ts +31 -0
- package/dist/schemas/forge-cli-settings.d.ts.map +1 -0
- package/dist/schemas/forge-cli-settings.js +38 -0
- package/dist/schemas/forge-cli-settings.js.map +1 -0
- package/dist/schemas/forge-smoke.d.ts +87 -0
- package/dist/schemas/forge-smoke.d.ts.map +1 -0
- package/dist/schemas/forge-smoke.js +27 -0
- package/dist/schemas/forge-smoke.js.map +1 -0
- package/dist/schemas/forge-tool-payload.d.ts +347 -0
- package/dist/schemas/forge-tool-payload.d.ts.map +1 -0
- package/dist/schemas/forge-tool-payload.js +309 -0
- package/dist/schemas/forge-tool-payload.js.map +1 -0
- package/dist/schemas/jwt-cache.d.ts +12 -0
- package/dist/schemas/jwt-cache.d.ts.map +1 -0
- package/dist/schemas/jwt-cache.js +6 -0
- package/dist/schemas/jwt-cache.js.map +1 -0
- package/dist/schemas/match.d.ts +204 -0
- package/dist/schemas/match.d.ts.map +1 -0
- package/dist/schemas/match.js +263 -0
- package/dist/schemas/match.js.map +1 -0
- package/dist/schemas/package-root.d.ts +24 -0
- package/dist/schemas/package-root.d.ts.map +1 -0
- package/dist/schemas/package-root.js +40 -0
- package/dist/schemas/package-root.js.map +1 -0
- package/dist/schemas/pr-boundary.d.ts +515 -0
- package/dist/schemas/pr-boundary.d.ts.map +1 -0
- package/dist/schemas/pr-boundary.js +16 -0
- package/dist/schemas/pr-boundary.js.map +1 -0
- package/dist/schemas/public-tracking.d.ts +243 -0
- package/dist/schemas/public-tracking.d.ts.map +1 -0
- package/dist/schemas/public-tracking.js +59 -0
- package/dist/schemas/public-tracking.js.map +1 -0
- package/dist/schemas/repo-pushed.d.ts +22 -0
- package/dist/schemas/repo-pushed.d.ts.map +1 -0
- package/dist/schemas/repo-pushed.js +41 -0
- package/dist/schemas/repo-pushed.js.map +1 -0
- package/dist/schemas/review-merge-evidence.d.ts +127 -0
- package/dist/schemas/review-merge-evidence.d.ts.map +1 -0
- package/dist/schemas/review-merge-evidence.js +77 -0
- package/dist/schemas/review-merge-evidence.js.map +1 -0
- package/dist/schemas/review-principal.d.ts +16 -0
- package/dist/schemas/review-principal.d.ts.map +1 -0
- package/dist/schemas/review-principal.js +18 -0
- package/dist/schemas/review-principal.js.map +1 -0
- package/dist/schemas/stack.d.ts +561 -0
- package/dist/schemas/stack.d.ts.map +1 -0
- package/dist/schemas/stack.js +292 -0
- package/dist/schemas/stack.js.map +1 -0
- package/dist/schemas/token-mint.d.ts +9 -0
- package/dist/schemas/token-mint.d.ts.map +1 -0
- package/dist/schemas/token-mint.js +9 -0
- package/dist/schemas/token-mint.js.map +1 -0
- package/dist/schemas/wire-contracts.d.ts +2474 -0
- package/dist/schemas/wire-contracts.d.ts.map +1 -0
- package/dist/schemas/wire-contracts.js +543 -0
- package/dist/schemas/wire-contracts.js.map +1 -0
- package/dist/schemas.d.ts +11 -0
- package/dist/schemas.d.ts.map +1 -0
- package/dist/schemas.js +11 -0
- package/dist/schemas.js.map +1 -0
- package/dist/storage/forge-pr-stacks.storage.descriptor.d.ts +42 -0
- package/dist/storage/forge-pr-stacks.storage.descriptor.d.ts.map +1 -0
- package/dist/storage/forge-pr-stacks.storage.descriptor.js +33 -0
- package/dist/storage/forge-pr-stacks.storage.descriptor.js.map +1 -0
- package/dist/storage/forge-pr-stacks.transform.d.ts +82 -0
- package/dist/storage/forge-pr-stacks.transform.d.ts.map +1 -0
- package/dist/storage/forge-pr-stacks.transform.js +96 -0
- package/dist/storage/forge-pr-stacks.transform.js.map +1 -0
- package/dist/storage/index.d.ts +3 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/index.js +3 -0
- package/dist/storage/index.js.map +1 -0
- package/dist/svelte/components/CommentThread.svelte +94 -0
- package/dist/svelte/components/CommentThread.svelte.d.ts +21 -0
- package/dist/svelte/components/CommentThread.svelte.d.ts.map +1 -0
- package/dist/svelte/components/ComparisonCard.svelte +331 -0
- package/dist/svelte/components/ComparisonCard.svelte.d.ts +16 -0
- package/dist/svelte/components/ComparisonCard.svelte.d.ts.map +1 -0
- package/dist/svelte/components/ForgeMarkdownComposer.svelte +101 -0
- package/dist/svelte/components/ForgeMarkdownComposer.svelte.d.ts +29 -0
- package/dist/svelte/components/ForgeMarkdownComposer.svelte.d.ts.map +1 -0
- package/dist/svelte/components/ForgeRunDetail.svelte +214 -0
- package/dist/svelte/components/ForgeRunDetail.svelte.d.ts +14 -0
- package/dist/svelte/components/ForgeRunDetail.svelte.d.ts.map +1 -0
- package/dist/svelte/components/ForgeRunStatusBadge.svelte +94 -0
- package/dist/svelte/components/ForgeRunStatusBadge.svelte.d.ts +18 -0
- package/dist/svelte/components/ForgeRunStatusBadge.svelte.d.ts.map +1 -0
- package/dist/svelte/components/ForgeRunsList.svelte +186 -0
- package/dist/svelte/components/ForgeRunsList.svelte.d.ts +21 -0
- package/dist/svelte/components/ForgeRunsList.svelte.d.ts.map +1 -0
- package/dist/svelte/components/InlineReplyBox.svelte +115 -0
- package/dist/svelte/components/InlineReplyBox.svelte.d.ts +24 -0
- package/dist/svelte/components/InlineReplyBox.svelte.d.ts.map +1 -0
- package/dist/svelte/components/IssueDetail.svelte +175 -0
- package/dist/svelte/components/IssueDetail.svelte.d.ts +19 -0
- package/dist/svelte/components/IssueDetail.svelte.d.ts.map +1 -0
- package/dist/svelte/components/IssueList.svelte +149 -0
- package/dist/svelte/components/IssueList.svelte.d.ts +19 -0
- package/dist/svelte/components/IssueList.svelte.d.ts.map +1 -0
- package/dist/svelte/components/IssueListSkeleton.svelte +65 -0
- package/dist/svelte/components/IssueListSkeleton.svelte.d.ts +7 -0
- package/dist/svelte/components/IssueListSkeleton.svelte.d.ts.map +1 -0
- package/dist/svelte/components/IssueStateBadge.svelte +35 -0
- package/dist/svelte/components/IssueStateBadge.svelte.d.ts +14 -0
- package/dist/svelte/components/IssueStateBadge.svelte.d.ts.map +1 -0
- package/dist/svelte/components/KanbanBoard.svelte +1265 -0
- package/dist/svelte/components/KanbanBoard.svelte.d.ts +51 -0
- package/dist/svelte/components/KanbanBoard.svelte.d.ts.map +1 -0
- package/dist/svelte/components/LabelChip.svelte +80 -0
- package/dist/svelte/components/LabelChip.svelte.d.ts +15 -0
- package/dist/svelte/components/LabelChip.svelte.d.ts.map +1 -0
- package/dist/svelte/components/MentionChip.svelte +194 -0
- package/dist/svelte/components/MentionChip.svelte.d.ts +17 -0
- package/dist/svelte/components/MentionChip.svelte.d.ts.map +1 -0
- package/dist/svelte/components/MentionPopover.svelte +116 -0
- package/dist/svelte/components/MentionPopover.svelte.d.ts +38 -0
- package/dist/svelte/components/MentionPopover.svelte.d.ts.map +1 -0
- package/dist/svelte/components/PRStatusBadge.svelte +38 -0
- package/dist/svelte/components/PRStatusBadge.svelte.d.ts +15 -0
- package/dist/svelte/components/PRStatusBadge.svelte.d.ts.map +1 -0
- package/dist/svelte/components/PRTimeline.svelte +187 -0
- package/dist/svelte/components/PRTimeline.svelte.d.ts +18 -0
- package/dist/svelte/components/PRTimeline.svelte.d.ts.map +1 -0
- package/dist/svelte/components/ProjectCard.svelte +139 -0
- package/dist/svelte/components/ProjectCard.svelte.d.ts +16 -0
- package/dist/svelte/components/ProjectCard.svelte.d.ts.map +1 -0
- package/dist/svelte/components/PullRequestList.svelte +167 -0
- package/dist/svelte/components/PullRequestList.svelte.d.ts +21 -0
- package/dist/svelte/components/PullRequestList.svelte.d.ts.map +1 -0
- package/dist/svelte/components/ReviewThread.svelte +81 -0
- package/dist/svelte/components/ReviewThread.svelte.d.ts +16 -0
- package/dist/svelte/components/ReviewThread.svelte.d.ts.map +1 -0
- package/dist/svelte/components/ReviewableDiff.svelte +430 -0
- package/dist/svelte/components/ReviewableDiff.svelte.d.ts +42 -0
- package/dist/svelte/components/ReviewableDiff.svelte.d.ts.map +1 -0
- package/dist/svelte/components/StackMap.svelte +470 -0
- package/dist/svelte/components/StackMap.svelte.d.ts +21 -0
- package/dist/svelte/components/StackMap.svelte.d.ts.map +1 -0
- package/dist/svelte/components/StatusCheckList.svelte +213 -0
- package/dist/svelte/components/StatusCheckList.svelte.d.ts +19 -0
- package/dist/svelte/components/StatusCheckList.svelte.d.ts.map +1 -0
- package/dist/svelte/components/UpgradePrompt.svelte +63 -0
- package/dist/svelte/components/UpgradePrompt.svelte.d.ts +23 -0
- package/dist/svelte/components/UpgradePrompt.svelte.d.ts.map +1 -0
- package/dist/svelte/components/UserChip.svelte +164 -0
- package/dist/svelte/components/UserChip.svelte.d.ts +30 -0
- package/dist/svelte/components/UserChip.svelte.d.ts.map +1 -0
- package/dist/svelte/drag-click-guard.d.ts +12 -0
- package/dist/svelte/drag-click-guard.d.ts.map +1 -0
- package/dist/svelte/drag-click-guard.js +41 -0
- package/dist/svelte/index.d.ts +15 -0
- package/dist/svelte/index.d.ts.map +1 -0
- package/dist/svelte/index.js +14 -0
- package/dist/svelte/plugin.d.ts +10 -0
- package/dist/svelte/plugin.d.ts.map +1 -0
- package/dist/svelte/plugin.js +83 -0
- package/dist/svelte/pr-state.guard.d.ts +25 -0
- package/dist/svelte/pr-state.guard.d.ts.map +1 -0
- package/dist/svelte/pr-state.guard.js +15 -0
- package/dist/svelte/styles.css +8 -0
- package/dist/svelte/submit-outcome.d.ts +19 -0
- package/dist/svelte/submit-outcome.d.ts.map +1 -0
- package/dist/svelte/submit-outcome.js +23 -0
- package/dist/svelte/tool-widgets/ForgeIssueToolCard.svelte +57 -0
- package/dist/svelte/tool-widgets/ForgeIssueToolCard.svelte.d.ts +5 -0
- package/dist/svelte/tool-widgets/ForgeIssueToolCard.svelte.d.ts.map +1 -0
- package/dist/svelte/tool-widgets/ForgePrStackToolCard.svelte +59 -0
- package/dist/svelte/tool-widgets/ForgePrStackToolCard.svelte.d.ts +5 -0
- package/dist/svelte/tool-widgets/ForgePrStackToolCard.svelte.d.ts.map +1 -0
- package/dist/svelte/tool-widgets/ForgePrToolCard.svelte +73 -0
- package/dist/svelte/tool-widgets/ForgePrToolCard.svelte.d.ts +5 -0
- package/dist/svelte/tool-widgets/ForgePrToolCard.svelte.d.ts.map +1 -0
- package/dist/svelte/tool-widgets/ForgeRepoToolCard.svelte +83 -0
- package/dist/svelte/tool-widgets/ForgeRepoToolCard.svelte.d.ts +5 -0
- package/dist/svelte/tool-widgets/ForgeRepoToolCard.svelte.d.ts.map +1 -0
- package/dist/svelte/tool-widgets/index.d.ts +5 -0
- package/dist/svelte/tool-widgets/index.d.ts.map +1 -0
- package/dist/svelte/tool-widgets/index.js +4 -0
- package/dist/tools/docs/forge.tools.docs.descriptor.d.ts +4 -0
- package/dist/tools/docs/forge.tools.docs.descriptor.d.ts.map +1 -0
- package/dist/tools/docs/forge.tools.docs.descriptor.js +92 -0
- package/dist/tools/docs/forge.tools.docs.descriptor.js.map +1 -0
- package/dist/tools/forge-tools.plugin.d.ts +17 -0
- package/dist/tools/forge-tools.plugin.d.ts.map +1 -0
- package/dist/tools/forge-tools.plugin.js +123 -0
- package/dist/tools/forge-tools.plugin.js.map +1 -0
- package/dist/tools/index.d.ts +44 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +44 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/lib/pull-request-automation.d.ts +8 -0
- package/dist/tools/lib/pull-request-automation.d.ts.map +1 -0
- package/dist/tools/lib/pull-request-automation.js +41 -0
- package/dist/tools/lib/pull-request-automation.js.map +1 -0
- package/dist/tools/lib/repo-context.d.ts +58 -0
- package/dist/tools/lib/repo-context.d.ts.map +1 -0
- package/dist/tools/lib/repo-context.js +92 -0
- package/dist/tools/lib/repo-context.js.map +1 -0
- package/dist/tools/lib/requests.d.ts +9 -0
- package/dist/tools/lib/requests.d.ts.map +1 -0
- package/dist/tools/lib/requests.js +8 -0
- package/dist/tools/lib/requests.js.map +1 -0
- package/dist/tools/lib/transport.d.ts +90 -0
- package/dist/tools/lib/transport.d.ts.map +1 -0
- package/dist/tools/lib/transport.js +259 -0
- package/dist/tools/lib/transport.js.map +1 -0
- package/dist/tools/tools/forge-issue-close.descriptor.d.ts +118 -0
- package/dist/tools/tools/forge-issue-close.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-issue-close.descriptor.js +23 -0
- package/dist/tools/tools/forge-issue-close.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-issue-close.impl.d.ts +13 -0
- package/dist/tools/tools/forge-issue-close.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-issue-close.impl.js +20 -0
- package/dist/tools/tools/forge-issue-close.impl.js.map +1 -0
- package/dist/tools/tools/forge-issue-comment.descriptor.d.ts +56 -0
- package/dist/tools/tools/forge-issue-comment.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-issue-comment.descriptor.js +24 -0
- package/dist/tools/tools/forge-issue-comment.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-issue-comment.impl.d.ts +14 -0
- package/dist/tools/tools/forge-issue-comment.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-issue-comment.impl.js +26 -0
- package/dist/tools/tools/forge-issue-comment.impl.js.map +1 -0
- package/dist/tools/tools/forge-issue-comments-list.descriptor.d.ts +54 -0
- package/dist/tools/tools/forge-issue-comments-list.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-issue-comments-list.descriptor.js +23 -0
- package/dist/tools/tools/forge-issue-comments-list.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-issue-comments-list.impl.d.ts +17 -0
- package/dist/tools/tools/forge-issue-comments-list.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-issue-comments-list.impl.js +29 -0
- package/dist/tools/tools/forge-issue-comments-list.impl.js.map +1 -0
- package/dist/tools/tools/forge-issue-create.descriptor.d.ts +164 -0
- package/dist/tools/tools/forge-issue-create.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-issue-create.descriptor.js +34 -0
- package/dist/tools/tools/forge-issue-create.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-issue-create.impl.d.ts +14 -0
- package/dist/tools/tools/forge-issue-create.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-issue-create.impl.js +26 -0
- package/dist/tools/tools/forge-issue-create.impl.js.map +1 -0
- package/dist/tools/tools/forge-issue-get.descriptor.d.ts +114 -0
- package/dist/tools/tools/forge-issue-get.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-issue-get.descriptor.js +23 -0
- package/dist/tools/tools/forge-issue-get.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-issue-get.impl.d.ts +17 -0
- package/dist/tools/tools/forge-issue-get.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-issue-get.impl.js +36 -0
- package/dist/tools/tools/forge-issue-get.impl.js.map +1 -0
- package/dist/tools/tools/forge-issue-list.descriptor.d.ts +132 -0
- package/dist/tools/tools/forge-issue-list.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-issue-list.descriptor.js +23 -0
- package/dist/tools/tools/forge-issue-list.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-issue-list.impl.d.ts +21 -0
- package/dist/tools/tools/forge-issue-list.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-issue-list.impl.js +35 -0
- package/dist/tools/tools/forge-issue-list.impl.js.map +1 -0
- package/dist/tools/tools/forge-issue-reopen.descriptor.d.ts +119 -0
- package/dist/tools/tools/forge-issue-reopen.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-issue-reopen.descriptor.js +23 -0
- package/dist/tools/tools/forge-issue-reopen.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-issue-reopen.impl.d.ts +13 -0
- package/dist/tools/tools/forge-issue-reopen.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-issue-reopen.impl.js +20 -0
- package/dist/tools/tools/forge-issue-reopen.impl.js.map +1 -0
- package/dist/tools/tools/forge-issue-search.descriptor.d.ts +129 -0
- package/dist/tools/tools/forge-issue-search.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-issue-search.descriptor.js +33 -0
- package/dist/tools/tools/forge-issue-search.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-issue-search.impl.d.ts +17 -0
- package/dist/tools/tools/forge-issue-search.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-issue-search.impl.js +38 -0
- package/dist/tools/tools/forge-issue-search.impl.js.map +1 -0
- package/dist/tools/tools/forge-issue-update.descriptor.d.ts +149 -0
- package/dist/tools/tools/forge-issue-update.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-issue-update.descriptor.js +23 -0
- package/dist/tools/tools/forge-issue-update.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-issue-update.impl.d.ts +13 -0
- package/dist/tools/tools/forge-issue-update.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-issue-update.impl.js +21 -0
- package/dist/tools/tools/forge-issue-update.impl.js.map +1 -0
- package/dist/tools/tools/forge-list-repos.descriptor.d.ts +50 -0
- package/dist/tools/tools/forge-list-repos.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-list-repos.descriptor.js +24 -0
- package/dist/tools/tools/forge-list-repos.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-list-repos.impl.d.ts +17 -0
- package/dist/tools/tools/forge-list-repos.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-list-repos.impl.js +52 -0
- package/dist/tools/tools/forge-list-repos.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-close.descriptor.d.ts +118 -0
- package/dist/tools/tools/forge-pr-close.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-close.descriptor.js +23 -0
- package/dist/tools/tools/forge-pr-close.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-pr-close.impl.d.ts +13 -0
- package/dist/tools/tools/forge-pr-close.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-close.impl.js +20 -0
- package/dist/tools/tools/forge-pr-close.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-create-from-branch.descriptor.d.ts +129 -0
- package/dist/tools/tools/forge-pr-create-from-branch.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-create-from-branch.descriptor.js +28 -0
- package/dist/tools/tools/forge-pr-create-from-branch.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-pr-create-from-branch.impl.d.ts +31 -0
- package/dist/tools/tools/forge-pr-create-from-branch.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-create-from-branch.impl.js +55 -0
- package/dist/tools/tools/forge-pr-create-from-branch.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-create.descriptor.d.ts +131 -0
- package/dist/tools/tools/forge-pr-create.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-create.descriptor.js +28 -0
- package/dist/tools/tools/forge-pr-create.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-pr-create.impl.d.ts +14 -0
- package/dist/tools/tools/forge-pr-create.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-create.impl.js +37 -0
- package/dist/tools/tools/forge-pr-create.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-files.descriptor.d.ts +61 -0
- package/dist/tools/tools/forge-pr-files.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-files.descriptor.js +23 -0
- package/dist/tools/tools/forge-pr-files.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-pr-files.impl.d.ts +17 -0
- package/dist/tools/tools/forge-pr-files.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-files.impl.js +31 -0
- package/dist/tools/tools/forge-pr-files.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-get.descriptor.d.ts +114 -0
- package/dist/tools/tools/forge-pr-get.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-get.descriptor.js +23 -0
- package/dist/tools/tools/forge-pr-get.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-pr-get.impl.d.ts +17 -0
- package/dist/tools/tools/forge-pr-get.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-get.impl.js +38 -0
- package/dist/tools/tools/forge-pr-get.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-list.descriptor.d.ts +134 -0
- package/dist/tools/tools/forge-pr-list.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-list.descriptor.js +23 -0
- package/dist/tools/tools/forge-pr-list.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-pr-list.impl.d.ts +17 -0
- package/dist/tools/tools/forge-pr-list.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-list.impl.js +30 -0
- package/dist/tools/tools/forge-pr-list.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-merge-status.descriptor.d.ts +78 -0
- package/dist/tools/tools/forge-pr-merge-status.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-merge-status.descriptor.js +23 -0
- package/dist/tools/tools/forge-pr-merge-status.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-pr-merge-status.impl.d.ts +17 -0
- package/dist/tools/tools/forge-pr-merge-status.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-merge-status.impl.js +31 -0
- package/dist/tools/tools/forge-pr-merge-status.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-merge.descriptor.d.ts +135 -0
- package/dist/tools/tools/forge-pr-merge.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-merge.descriptor.js +23 -0
- package/dist/tools/tools/forge-pr-merge.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-pr-merge.impl.d.ts +17 -0
- package/dist/tools/tools/forge-pr-merge.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-merge.impl.js +47 -0
- package/dist/tools/tools/forge-pr-merge.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-reopen.descriptor.d.ts +119 -0
- package/dist/tools/tools/forge-pr-reopen.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-reopen.descriptor.js +23 -0
- package/dist/tools/tools/forge-pr-reopen.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-pr-reopen.impl.d.ts +13 -0
- package/dist/tools/tools/forge-pr-reopen.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-reopen.impl.js +20 -0
- package/dist/tools/tools/forge-pr-reopen.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-review-comment.descriptor.d.ts +72 -0
- package/dist/tools/tools/forge-pr-review-comment.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-review-comment.descriptor.js +28 -0
- package/dist/tools/tools/forge-pr-review-comment.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-pr-review-comment.impl.d.ts +15 -0
- package/dist/tools/tools/forge-pr-review-comment.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-review-comment.impl.js +37 -0
- package/dist/tools/tools/forge-pr-review-comment.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-search.descriptor.d.ts +121 -0
- package/dist/tools/tools/forge-pr-search.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-search.descriptor.js +23 -0
- package/dist/tools/tools/forge-pr-search.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-pr-search.impl.d.ts +17 -0
- package/dist/tools/tools/forge-pr-search.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-search.impl.js +30 -0
- package/dist/tools/tools/forge-pr-search.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-stack-create.descriptor.d.ts +86 -0
- package/dist/tools/tools/forge-pr-stack-create.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-stack-create.descriptor.js +17 -0
- package/dist/tools/tools/forge-pr-stack-create.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-pr-stack-create.impl.d.ts +9 -0
- package/dist/tools/tools/forge-pr-stack-create.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-stack-create.impl.js +6 -0
- package/dist/tools/tools/forge-pr-stack-create.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-stack-dissolve.descriptor.d.ts +82 -0
- package/dist/tools/tools/forge-pr-stack-dissolve.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-stack-dissolve.descriptor.js +17 -0
- package/dist/tools/tools/forge-pr-stack-dissolve.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-pr-stack-dissolve.impl.d.ts +9 -0
- package/dist/tools/tools/forge-pr-stack-dissolve.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-stack-dissolve.impl.js +6 -0
- package/dist/tools/tools/forge-pr-stack-dissolve.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-stack-get.descriptor.d.ts +80 -0
- package/dist/tools/tools/forge-pr-stack-get.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-stack-get.descriptor.js +17 -0
- package/dist/tools/tools/forge-pr-stack-get.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-pr-stack-get.impl.d.ts +9 -0
- package/dist/tools/tools/forge-pr-stack-get.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-stack-get.impl.js +6 -0
- package/dist/tools/tools/forge-pr-stack-get.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-stack-list.descriptor.d.ts +87 -0
- package/dist/tools/tools/forge-pr-stack-list.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-stack-list.descriptor.js +17 -0
- package/dist/tools/tools/forge-pr-stack-list.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-pr-stack-list.impl.d.ts +9 -0
- package/dist/tools/tools/forge-pr-stack-list.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-stack-list.impl.js +6 -0
- package/dist/tools/tools/forge-pr-stack-list.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-stack-merge.descriptor.d.ts +76 -0
- package/dist/tools/tools/forge-pr-stack-merge.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-stack-merge.descriptor.js +17 -0
- package/dist/tools/tools/forge-pr-stack-merge.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-pr-stack-merge.impl.d.ts +9 -0
- package/dist/tools/tools/forge-pr-stack-merge.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-stack-merge.impl.js +6 -0
- package/dist/tools/tools/forge-pr-stack-merge.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-stack-restack.descriptor.d.ts +68 -0
- package/dist/tools/tools/forge-pr-stack-restack.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-stack-restack.descriptor.js +17 -0
- package/dist/tools/tools/forge-pr-stack-restack.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-pr-stack-restack.impl.d.ts +9 -0
- package/dist/tools/tools/forge-pr-stack-restack.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-stack-restack.impl.js +6 -0
- package/dist/tools/tools/forge-pr-stack-restack.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-stack-update.descriptor.d.ts +87 -0
- package/dist/tools/tools/forge-pr-stack-update.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-stack-update.descriptor.js +17 -0
- package/dist/tools/tools/forge-pr-stack-update.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-pr-stack-update.impl.d.ts +9 -0
- package/dist/tools/tools/forge-pr-stack-update.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-stack-update.impl.js +6 -0
- package/dist/tools/tools/forge-pr-stack-update.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-stack.shared.impl.d.ts +17 -0
- package/dist/tools/tools/forge-pr-stack.shared.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-stack.shared.impl.js +26 -0
- package/dist/tools/tools/forge-pr-stack.shared.impl.js.map +1 -0
- package/dist/tools/tools/forge-pr-update.descriptor.d.ts +135 -0
- package/dist/tools/tools/forge-pr-update.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-update.descriptor.js +23 -0
- package/dist/tools/tools/forge-pr-update.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-pr-update.impl.d.ts +13 -0
- package/dist/tools/tools/forge-pr-update.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-pr-update.impl.js +22 -0
- package/dist/tools/tools/forge-pr-update.impl.js.map +1 -0
- package/dist/tools/tools/forge-read-file.descriptor.d.ts +37 -0
- package/dist/tools/tools/forge-read-file.descriptor.d.ts.map +1 -0
- package/dist/tools/tools/forge-read-file.descriptor.js +28 -0
- package/dist/tools/tools/forge-read-file.descriptor.js.map +1 -0
- package/dist/tools/tools/forge-read-file.impl.d.ts +32 -0
- package/dist/tools/tools/forge-read-file.impl.d.ts.map +1 -0
- package/dist/tools/tools/forge-read-file.impl.js +69 -0
- package/dist/tools/tools/forge-read-file.impl.js.map +1 -0
- package/dist/tools/tools/forge-tracking-mutations.d.ts +31 -0
- package/dist/tools/tools/forge-tracking-mutations.d.ts.map +1 -0
- package/dist/tools/tools/forge-tracking-mutations.js +57 -0
- package/dist/tools/tools/forge-tracking-mutations.js.map +1 -0
- package/dist/tools/tools/schemas.d.ts +27 -0
- package/dist/tools/tools/schemas.d.ts.map +1 -0
- package/dist/tools/tools/schemas.js +29 -0
- package/dist/tools/tools/schemas.js.map +1 -0
- package/dist/tools/tracking-status-category.d.ts +10 -0
- package/dist/tools/tracking-status-category.d.ts.map +1 -0
- package/dist/tools/tracking-status-category.js +12 -0
- package/dist/tools/tracking-status-category.js.map +1 -0
- package/dist/tracking/index.d.ts +2 -0
- package/dist/tracking/index.d.ts.map +1 -0
- package/dist/tracking/index.js +2 -0
- package/dist/tracking/index.js.map +1 -0
- package/dist/tracking/vocabulary.d.ts +55 -0
- package/dist/tracking/vocabulary.d.ts.map +1 -0
- package/dist/tracking/vocabulary.js +28 -0
- package/dist/tracking/vocabulary.js.map +1 -0
- package/dist/tui/forge-status-repo.d.ts +8 -0
- package/dist/tui/forge-status-repo.d.ts.map +1 -0
- package/dist/tui/forge-status-repo.js +35 -0
- package/dist/tui/forge-status-repo.js.map +1 -0
- package/dist/tui/forge-tui.plugin.d.ts +3 -0
- package/dist/tui/forge-tui.plugin.d.ts.map +1 -0
- package/dist/tui/forge-tui.plugin.js +30 -0
- package/dist/tui/forge-tui.plugin.js.map +1 -0
- package/dist/tui/forge.tui-state.descriptor.d.ts +12 -0
- package/dist/tui/forge.tui-state.descriptor.d.ts.map +1 -0
- package/dist/tui/forge.tui-state.descriptor.js +33 -0
- package/dist/tui/forge.tui-state.descriptor.js.map +1 -0
- package/dist/tui/forge.tui-state.impl.consumer.d.ts +5 -0
- package/dist/tui/forge.tui-state.impl.consumer.d.ts.map +1 -0
- package/dist/tui/forge.tui-state.impl.consumer.js +118 -0
- package/dist/tui/forge.tui-state.impl.consumer.js.map +1 -0
- package/dist/tui/forge.tui-state.key.d.ts +27 -0
- package/dist/tui/forge.tui-state.key.d.ts.map +1 -0
- package/dist/tui/forge.tui-state.key.js +20 -0
- package/dist/tui/forge.tui-state.key.js.map +1 -0
- package/dist/tui/index.d.ts +4 -0
- package/dist/tui/index.d.ts.map +1 -0
- package/dist/tui/index.js +4 -0
- package/dist/tui/index.js.map +1 -0
- package/dist/tui/mount-client.d.ts +12 -0
- package/dist/tui/mount-client.d.ts.map +1 -0
- package/dist/tui/mount-client.js +30 -0
- package/dist/tui/mount-client.js.map +1 -0
- package/dist/tui/tool-widgets/ForgeIssueToolWidget.impl.consumer.d.ts +4 -0
- package/dist/tui/tool-widgets/ForgeIssueToolWidget.impl.consumer.d.ts.map +1 -0
- package/dist/tui/tool-widgets/ForgeIssueToolWidget.impl.consumer.js +27 -0
- package/dist/tui/tool-widgets/ForgeIssueToolWidget.impl.consumer.js.map +1 -0
- package/dist/tui/tool-widgets/ForgePrStackToolWidget.impl.consumer.d.ts +4 -0
- package/dist/tui/tool-widgets/ForgePrStackToolWidget.impl.consumer.d.ts.map +1 -0
- package/dist/tui/tool-widgets/ForgePrStackToolWidget.impl.consumer.js +20 -0
- package/dist/tui/tool-widgets/ForgePrStackToolWidget.impl.consumer.js.map +1 -0
- package/dist/tui/tool-widgets/ForgePrToolWidget.impl.consumer.d.ts +4 -0
- package/dist/tui/tool-widgets/ForgePrToolWidget.impl.consumer.d.ts.map +1 -0
- package/dist/tui/tool-widgets/ForgePrToolWidget.impl.consumer.js +27 -0
- package/dist/tui/tool-widgets/ForgePrToolWidget.impl.consumer.js.map +1 -0
- package/dist/tui/tool-widgets/ForgeRepoToolWidget.impl.consumer.d.ts +4 -0
- package/dist/tui/tool-widgets/ForgeRepoToolWidget.impl.consumer.d.ts.map +1 -0
- package/dist/tui/tool-widgets/ForgeRepoToolWidget.impl.consumer.js +21 -0
- package/dist/tui/tool-widgets/ForgeRepoToolWidget.impl.consumer.js.map +1 -0
- package/dist/tui/tool-widgets/families.d.ts +30 -0
- package/dist/tui/tool-widgets/families.d.ts.map +1 -0
- package/dist/tui/tool-widgets/families.js +66 -0
- package/dist/tui/tool-widgets/families.js.map +1 -0
- package/dist/tui/tool-widgets/forge-tool-payload.d.ts +5 -0
- package/dist/tui/tool-widgets/forge-tool-payload.d.ts.map +1 -0
- package/dist/tui/tool-widgets/forge-tool-payload.js +5 -0
- package/dist/tui/tool-widgets/forge-tool-payload.js.map +1 -0
- package/package.json +361 -4
|
@@ -0,0 +1,326 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The machine's Forge SSH identity: one ed25519 key, registered to the signed-in
|
|
3
|
+
* account, and pinned for git.vibes.dev in `~/.ssh/config`.
|
|
4
|
+
*
|
|
5
|
+
* Forge Git is SSH-only (`ssh://git@git.vibes.dev/…`), so a machine with no key,
|
|
6
|
+
* an unregistered key, or an unknown host key cannot clone, and each of those
|
|
7
|
+
* used to be a manual step (`ssh-keygen`, `vibes forge ssh-key add`, answering
|
|
8
|
+
* the host-key prompt). `ensureForgeSshIdentity` does all three, idempotently:
|
|
9
|
+
*
|
|
10
|
+
* - SELECT before creating. `~/.ssh/id_ed25519.pub` first (OpenSSH's own default
|
|
11
|
+
* identity), then any other `ssh-ed25519` public key in `~/.ssh`, sorted. A key
|
|
12
|
+
* is generated only when the machine has none, at the default path, so plain
|
|
13
|
+
* `ssh` and `git` use it too. The private key is never read or sent. A key
|
|
14
|
+
* file that is absent is expected; one that exists but cannot be read stops
|
|
15
|
+
* setup with its cause, because skipping it could hide the key the user meant
|
|
16
|
+
* and lead to generating over it.
|
|
17
|
+
* - REGISTER by fingerprint. A key the account already holds is left alone.
|
|
18
|
+
* - PIN the host in a marked block that is the only part of `~/.ssh/config` this
|
|
19
|
+
* module writes. `StrictHostKeyChecking accept-new` records git.vibes.dev's
|
|
20
|
+
* key on first contact and still refuses a CHANGED key.
|
|
21
|
+
*
|
|
22
|
+
* `~/.ssh` is the runtime's path-roots user home. Reads, listing, `mkdir` and
|
|
23
|
+
* writes go through the runtime's host-disk `filesystem/adapter`
|
|
24
|
+
* (`resolveSshHome`). Two steps do not: `ssh-keygen` writes the key pair
|
|
25
|
+
* itself, and the owner-only permission bits are set with node's `chmod`,
|
|
26
|
+
* because `filesystem/adapter` has no permission operation yet. That gap is
|
|
27
|
+
* `@vibesdotdev/filesystem`'s to close.
|
|
28
|
+
*/
|
|
29
|
+
import { chmodChecked, resolveFileSystemAdapter } from '@vibesdotdev/filesystem';
|
|
30
|
+
import { getPathRoots, getRuntimePath } from '@vibesdotdev/paths';
|
|
31
|
+
import { CapabilityError, CaughtFailureSchema } from '@vibesdotdev/kernel';
|
|
32
|
+
import { z } from 'zod';
|
|
33
|
+
import { fingerprintPublicKey, runtimeExec } from "./ssh-keygen.js";
|
|
34
|
+
import { sendForgeRequest } from "./transport.js";
|
|
35
|
+
export const FORGE_SSH_HOST = 'git.vibes.dev';
|
|
36
|
+
const BLOCK_BEGIN = '# BEGIN managed-by-vibes-forge';
|
|
37
|
+
const BLOCK_END = '# END managed-by-vibes-forge';
|
|
38
|
+
const DEFAULT_PUBLIC_KEY = 'id_ed25519.pub';
|
|
39
|
+
const FILESYSTEM_ADAPTER_KIND = 'filesystem/adapter';
|
|
40
|
+
/**
|
|
41
|
+
* The part of `filesystem/adapter` this module calls. Forge has no dependency
|
|
42
|
+
* on `@vibesdotdev/filesystem`, so it names these operations here and checks
|
|
43
|
+
* the resolved implementation against them.
|
|
44
|
+
*/
|
|
45
|
+
export const SshFilesSchema = z.object({
|
|
46
|
+
exists: z.custom((fn) => fn instanceof Function),
|
|
47
|
+
readFile: z.custom((fn) => fn instanceof Function),
|
|
48
|
+
list: z.custom((fn) => fn instanceof Function),
|
|
49
|
+
mkdir: z.custom((fn) => fn instanceof Function),
|
|
50
|
+
writeFile: z.custom((fn) => fn instanceof Function)
|
|
51
|
+
});
|
|
52
|
+
const SSH_FILE_OPERATIONS = ['exists', 'readFile', 'list', 'mkdir', 'writeFile'];
|
|
53
|
+
/** What a host-disk adapter must offer to reach `~/.ssh`. */
|
|
54
|
+
const HOST_DISK_CAPABILITIES = ['read', 'write', 'list'];
|
|
55
|
+
const AdapterDescriptorSchema = z.object({
|
|
56
|
+
enabled: z.boolean().optional(),
|
|
57
|
+
cloudNative: z.boolean().optional(),
|
|
58
|
+
capabilities: z.array(z.string()).optional()
|
|
59
|
+
});
|
|
60
|
+
/** An enabled adapter on this machine's disk that can read, write and list. */
|
|
61
|
+
function isHostDisk(descriptor) {
|
|
62
|
+
const parsed = AdapterDescriptorSchema.safeParse(descriptor);
|
|
63
|
+
if (!parsed.success)
|
|
64
|
+
return false;
|
|
65
|
+
const { enabled, cloudNative, capabilities = [] } = parsed.data;
|
|
66
|
+
return (enabled !== false &&
|
|
67
|
+
cloudNative !== true &&
|
|
68
|
+
HOST_DISK_CAPABILITIES.every((capability) => capabilities.includes(capability)));
|
|
69
|
+
}
|
|
70
|
+
function describeError(error) {
|
|
71
|
+
return error instanceof Error ? error.message : String(error);
|
|
72
|
+
}
|
|
73
|
+
/** The text of `path`, or null when it does not exist. Any other failure is reported. */
|
|
74
|
+
async function readIfPresent(files, path) {
|
|
75
|
+
let content;
|
|
76
|
+
try {
|
|
77
|
+
content = await files.readFile(path, 'utf8');
|
|
78
|
+
}
|
|
79
|
+
catch (error) {
|
|
80
|
+
// SAFETY: Error object from fs operations exposes node errno codes.
|
|
81
|
+
if (error.code === 'ENOENT')
|
|
82
|
+
return null;
|
|
83
|
+
throw new CapabilityError(`cannot read ${path}: ${describeError(CaughtFailureSchema.parse(error))}`, 'UNAVAILABLE', {
|
|
84
|
+
cause: error,
|
|
85
|
+
reason: 'ssh-file-read-failed'
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
return content instanceof Uint8Array ? new TextDecoder().decode(content) : content;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Public key file names in `~/.ssh`, or null when the directory does not exist.
|
|
92
|
+
*
|
|
93
|
+
* A listing can fail with ENOENT while `~/.ssh` exists, when a file inside it
|
|
94
|
+
* is removed mid-listing (ssh rewrites `known_hosts` through a temp file). Only
|
|
95
|
+
* a missing directory means "no key"; reading it as one would generate a key
|
|
96
|
+
* over the user's own.
|
|
97
|
+
*/
|
|
98
|
+
async function listPublicKeys(home) {
|
|
99
|
+
let entries;
|
|
100
|
+
try {
|
|
101
|
+
entries = await home.files.list(home.dir);
|
|
102
|
+
}
|
|
103
|
+
catch (error) {
|
|
104
|
+
// SAFETY: Error object from fs operations exposes node errno codes.
|
|
105
|
+
if (error.code === 'ENOENT' && !(await home.files.exists(home.dir)))
|
|
106
|
+
return null;
|
|
107
|
+
throw new CapabilityError(`cannot list ${home.dir}: ${describeError(CaughtFailureSchema.parse(error))}`, 'UNAVAILABLE', {
|
|
108
|
+
cause: error,
|
|
109
|
+
reason: 'ssh-file-list-failed'
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
return entries
|
|
113
|
+
.filter((entry) => entry.kind !== 'directory' && entry.name.endsWith('.pub'))
|
|
114
|
+
.map((entry) => entry.name)
|
|
115
|
+
.sort();
|
|
116
|
+
}
|
|
117
|
+
/** The public key to use: the default identity first, then any ed25519 key in `~/.ssh`. */
|
|
118
|
+
export async function selectEd25519PublicKey(home) {
|
|
119
|
+
const names = await listPublicKeys(home);
|
|
120
|
+
if (names === null)
|
|
121
|
+
return null;
|
|
122
|
+
const ordered = [DEFAULT_PUBLIC_KEY, ...names.filter((name) => name !== DEFAULT_PUBLIC_KEY)];
|
|
123
|
+
for (const name of ordered) {
|
|
124
|
+
const path = home.join(home.dir, name);
|
|
125
|
+
const text = await readIfPresent(home.files, path);
|
|
126
|
+
if (text?.trim().startsWith('ssh-ed25519 '))
|
|
127
|
+
return path;
|
|
128
|
+
}
|
|
129
|
+
return null;
|
|
130
|
+
}
|
|
131
|
+
/** The managed `Host git.vibes.dev` block for `identityFile`. */
|
|
132
|
+
export function renderSshConfigBlock(identityFile) {
|
|
133
|
+
return [
|
|
134
|
+
BLOCK_BEGIN,
|
|
135
|
+
`Host ${FORGE_SSH_HOST}`,
|
|
136
|
+
' User git',
|
|
137
|
+
` IdentityFile ${identityFile}`,
|
|
138
|
+
' IdentitiesOnly yes',
|
|
139
|
+
' StrictHostKeyChecking accept-new',
|
|
140
|
+
BLOCK_END
|
|
141
|
+
].join('\n');
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* `existing` with the managed block set to `block`, or null when it already is.
|
|
145
|
+
*
|
|
146
|
+
* The block is placed FIRST: ssh takes the first value it finds for each
|
|
147
|
+
* option, so a block appended after a `Host *` stanza would be shadowed by it.
|
|
148
|
+
*/
|
|
149
|
+
export function mergeSshConfig(existing, block) {
|
|
150
|
+
const begin = existing.indexOf(BLOCK_BEGIN);
|
|
151
|
+
const end = existing.indexOf(BLOCK_END);
|
|
152
|
+
if (begin >= 0 && end > begin) {
|
|
153
|
+
const current = existing.slice(begin, end + BLOCK_END.length);
|
|
154
|
+
if (current === block)
|
|
155
|
+
return null;
|
|
156
|
+
return existing.slice(0, begin) + block + existing.slice(end + BLOCK_END.length);
|
|
157
|
+
}
|
|
158
|
+
const rest = existing.replace(/^\s+/, '');
|
|
159
|
+
return `${block}\n${rest ? `\n${rest}` : ''}`;
|
|
160
|
+
}
|
|
161
|
+
/** Create `~/.ssh` owner-only when it is missing; an existing directory keeps its mode. */
|
|
162
|
+
async function ensureSshDir(home) {
|
|
163
|
+
if (await home.files.exists(home.dir))
|
|
164
|
+
return;
|
|
165
|
+
await home.files.mkdir(home.dir, { recursive: true });
|
|
166
|
+
await home.restrict(home.dir, 0o700);
|
|
167
|
+
}
|
|
168
|
+
async function generateKey(deps, home) {
|
|
169
|
+
await ensureSshDir(home);
|
|
170
|
+
const privateKey = home.join(home.dir, 'id_ed25519');
|
|
171
|
+
const result = await deps.exec('ssh-keygen', [
|
|
172
|
+
'-q',
|
|
173
|
+
'-t',
|
|
174
|
+
'ed25519',
|
|
175
|
+
'-N',
|
|
176
|
+
'',
|
|
177
|
+
'-C',
|
|
178
|
+
`vibes@${deps.hostname}`,
|
|
179
|
+
'-f',
|
|
180
|
+
privateKey
|
|
181
|
+
]);
|
|
182
|
+
if (result.code !== 0) {
|
|
183
|
+
throw new Error(`ssh-keygen could not create ${privateKey}: ${result.stderr.trim() || `exit ${result.code}`}`);
|
|
184
|
+
}
|
|
185
|
+
return `${privateKey}.pub`;
|
|
186
|
+
}
|
|
187
|
+
async function registerKey(deps, home, publicKeyPath, fingerprint, check) {
|
|
188
|
+
const listed = await deps.send({ method: 'GET', path: '/api/account/ssh-keys' });
|
|
189
|
+
if (!listed.ok)
|
|
190
|
+
throw new Error(`could not list your Forge SSH keys: ${listed.message}`);
|
|
191
|
+
if (listed.data.results.some((key) => key.fingerprint === fingerprint))
|
|
192
|
+
return 'already';
|
|
193
|
+
if (check)
|
|
194
|
+
return 'missing';
|
|
195
|
+
const publicKey = (await readIfPresent(home.files, publicKeyPath))?.trim();
|
|
196
|
+
if (!publicKey)
|
|
197
|
+
throw new Error(`${publicKeyPath} disappeared before it could be registered`);
|
|
198
|
+
const created = await deps.send({
|
|
199
|
+
method: 'POST',
|
|
200
|
+
path: '/api/account/ssh-keys',
|
|
201
|
+
body: { name: deps.hostname, publicKey }
|
|
202
|
+
});
|
|
203
|
+
if (created.ok)
|
|
204
|
+
return 'now';
|
|
205
|
+
if (created.status === 409) {
|
|
206
|
+
throw new Error(`${publicKeyPath} is registered to a different Vibes account. Sign in as that account, or remove the key there.`);
|
|
207
|
+
}
|
|
208
|
+
throw new Error(`could not register ${publicKeyPath}: ${created.message}`);
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Write the managed block into `~/.ssh/config`. The file is owner-only BEFORE
|
|
212
|
+
* the new text lands: a new config is created empty and restricted first,
|
|
213
|
+
* since the adapter cannot create a file with a mode.
|
|
214
|
+
*/
|
|
215
|
+
async function pinHost(home, identityFile, check) {
|
|
216
|
+
const path = home.join(home.dir, 'config');
|
|
217
|
+
const existing = await readIfPresent(home.files, path);
|
|
218
|
+
const next = mergeSshConfig(existing ?? '', renderSshConfigBlock(identityFile));
|
|
219
|
+
if (next === null)
|
|
220
|
+
return 'ready';
|
|
221
|
+
if (check)
|
|
222
|
+
return 'missing';
|
|
223
|
+
await ensureSshDir(home);
|
|
224
|
+
if (existing === null)
|
|
225
|
+
await home.files.writeFile(path, '');
|
|
226
|
+
await home.restrict(path, 0o600);
|
|
227
|
+
await home.files.writeFile(path, next);
|
|
228
|
+
return 'written';
|
|
229
|
+
}
|
|
230
|
+
/** Select or create, register, and pin. `check` reports without writing anything. */
|
|
231
|
+
export async function ensureForgeSshIdentity(deps, options) {
|
|
232
|
+
const home = await deps.home();
|
|
233
|
+
let publicKey = await selectEd25519PublicKey(home);
|
|
234
|
+
let generated = false;
|
|
235
|
+
if (!publicKey) {
|
|
236
|
+
if (options.check) {
|
|
237
|
+
return {
|
|
238
|
+
ok: false,
|
|
239
|
+
publicKey: null,
|
|
240
|
+
fingerprint: null,
|
|
241
|
+
generated: false,
|
|
242
|
+
registered: 'missing',
|
|
243
|
+
sshConfig: 'missing',
|
|
244
|
+
problem: 'this machine has no ed25519 SSH key'
|
|
245
|
+
};
|
|
246
|
+
}
|
|
247
|
+
publicKey = await generateKey(deps, home);
|
|
248
|
+
generated = true;
|
|
249
|
+
}
|
|
250
|
+
const fingerprint = await fingerprintPublicKey(publicKey, deps.exec);
|
|
251
|
+
const registered = await registerKey(deps, home, publicKey, fingerprint, options.check);
|
|
252
|
+
const sshConfig = await pinHost(home, publicKey.replace(/\.pub$/, ''), options.check);
|
|
253
|
+
const ok = registered !== 'missing' && sshConfig !== 'missing';
|
|
254
|
+
const report = {
|
|
255
|
+
ok,
|
|
256
|
+
publicKey,
|
|
257
|
+
fingerprint,
|
|
258
|
+
generated,
|
|
259
|
+
registered,
|
|
260
|
+
sshConfig
|
|
261
|
+
};
|
|
262
|
+
if (!ok) {
|
|
263
|
+
report.problem = [
|
|
264
|
+
registered === 'missing' ? `${publicKey} is not registered with Forge` : null,
|
|
265
|
+
sshConfig === 'missing' ? `~/.ssh/config does not pin ${FORGE_SSH_HOST}` : null
|
|
266
|
+
]
|
|
267
|
+
.filter(Boolean)
|
|
268
|
+
.join('; ');
|
|
269
|
+
}
|
|
270
|
+
return report;
|
|
271
|
+
}
|
|
272
|
+
/**
|
|
273
|
+
* The runtime's host-disk `filesystem/adapter`: enabled, not cloud-native, and
|
|
274
|
+
* able to read, write and list. The query goes to the adapter kind, never to a
|
|
275
|
+
* `filesystem/adapter-binding`: a workspace binding confines files to its
|
|
276
|
+
* workspace, and `~/.ssh` lies outside every workspace.
|
|
277
|
+
*/
|
|
278
|
+
async function resolveHostDiskFiles(runtime) {
|
|
279
|
+
if (!runtime.hasKind(FILESYSTEM_ADAPTER_KIND)) {
|
|
280
|
+
throw new Error(`No ${FILESYSTEM_ADAPTER_KIND} is registered on this runtime, so ~/.ssh cannot be read.`);
|
|
281
|
+
}
|
|
282
|
+
const wanted = `host-disk ${FILESYSTEM_ADAPTER_KIND} (enabled, not cloud-native, with ${HOST_DISK_CAPABILITIES.join(', ')})`;
|
|
283
|
+
const hostDisk = runtime.query(FILESYSTEM_ADAPTER_KIND).descriptors().find(isHostDisk);
|
|
284
|
+
if (!hostDisk)
|
|
285
|
+
throw new Error(`No ${wanted} is registered on this runtime, so ~/.ssh cannot be read.`);
|
|
286
|
+
let resolved;
|
|
287
|
+
try {
|
|
288
|
+
resolved = await runtime.query(FILESYSTEM_ADAPTER_KIND).withId(hostDisk.id).resolve();
|
|
289
|
+
}
|
|
290
|
+
catch (error) {
|
|
291
|
+
throw new CapabilityError(`The ${wanted} '${hostDisk.id}' did not load, so ~/.ssh cannot be read: ${describeError(CaughtFailureSchema.parse(error))}`, 'UNAVAILABLE', {
|
|
292
|
+
cause: error,
|
|
293
|
+
reason: 'filesystem-adapter-load-failed'
|
|
294
|
+
});
|
|
295
|
+
}
|
|
296
|
+
const files = SshFilesSchema.safeParse(resolved);
|
|
297
|
+
if (!files.success) {
|
|
298
|
+
throw new Error(`The runtime's ${FILESYSTEM_ADAPTER_KIND} does not implement ${SSH_FILE_OPERATIONS.join(', ')}.`);
|
|
299
|
+
}
|
|
300
|
+
return files.data;
|
|
301
|
+
}
|
|
302
|
+
/** `~/.ssh` under the runtime's path-roots user home, joined by its path service. */
|
|
303
|
+
export async function resolveSshHome(runtime) {
|
|
304
|
+
const path = await getRuntimePath(runtime);
|
|
305
|
+
return {
|
|
306
|
+
dir: path.join(getPathRoots(runtime).userHome, '.ssh'),
|
|
307
|
+
join: (...segments) => path.join(...segments),
|
|
308
|
+
files: await resolveHostDiskFiles(runtime),
|
|
309
|
+
restrict: async (target, mode) => {
|
|
310
|
+
// SAFETY: RuntimeRef in CLI execution context is a full VibesRuntime instance.
|
|
311
|
+
const adapter = await resolveFileSystemAdapter(runtime, { binding: false });
|
|
312
|
+
await chmodChecked(adapter, target, mode);
|
|
313
|
+
}
|
|
314
|
+
};
|
|
315
|
+
}
|
|
316
|
+
/** Production dependencies: the handed runtime's `~/.ssh`, real `ssh-keygen`, the Forge API. */
|
|
317
|
+
export function defaultSshIdentityDeps(runtime) {
|
|
318
|
+
const host = runtime.localEnvironment.getHostname?.() || 'localhost';
|
|
319
|
+
return {
|
|
320
|
+
home: () => resolveSshHome(runtime),
|
|
321
|
+
hostname: host.replace(/\.local$/, ''),
|
|
322
|
+
exec: runtimeExec(runtime),
|
|
323
|
+
send: (spec) => sendForgeRequest(runtime, spec)
|
|
324
|
+
};
|
|
325
|
+
}
|
|
326
|
+
//# sourceMappingURL=ssh-identity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ssh-identity.js","sourceRoot":"","sources":["../../../src/cli/lib/ssh-identity.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Local SSH key resolution for forge-cli (key add + credential-helper signing).
|
|
3
|
+
*
|
|
4
|
+
* The PRIVATE key never leaves the machine. `add` reads the PUBLIC key file and
|
|
5
|
+
* uploads it; the credential-helper shells out to `ssh-keygen -Y sign` against a
|
|
6
|
+
* signing-key selector to produce an SSHSIG over the server nonce — only that
|
|
7
|
+
* signature crosses the wire. A PUBLIC key selector lets OpenSSH use the matching
|
|
8
|
+
* key already loaded in ssh-agent without reading or prompting for the private key.
|
|
9
|
+
*
|
|
10
|
+
* Default key path mirrors OpenSSH's own default public identity,
|
|
11
|
+
* `~/.ssh/id_ed25519.pub`, under the runtime's path-roots user home. Override
|
|
12
|
+
* with `--key <path>`.
|
|
13
|
+
*/
|
|
14
|
+
import { type VibesRuntime } from '@vibesdotdev/kernel';
|
|
15
|
+
/**
|
|
16
|
+
* Where `~` and a relative `--key` resolve: the runtime's path-roots user home
|
|
17
|
+
* and the invocation's working directory. Nothing reads `homedir()` or
|
|
18
|
+
* `process.cwd()`.
|
|
19
|
+
*/
|
|
20
|
+
export interface KeyPathBase {
|
|
21
|
+
readonly userHome: string;
|
|
22
|
+
readonly cwd: string;
|
|
23
|
+
}
|
|
24
|
+
/** The key path base of `runtime`: `getPathRoots(runtime).userHome` and the host cwd. */
|
|
25
|
+
export declare function keyPathBase(runtime: VibesRuntime): KeyPathBase;
|
|
26
|
+
/** The default OpenSSH Ed25519 identity (private key path; `.pub` = public). */
|
|
27
|
+
export declare function defaultPrivateKeyPath(userHome: string): string;
|
|
28
|
+
export declare function defaultPublicKeyPath(userHome: string): string;
|
|
29
|
+
/** Expand a leading `~` and resolve to an absolute path. */
|
|
30
|
+
export declare function resolveKeyPath(input: string, base: KeyPathBase): string;
|
|
31
|
+
/**
|
|
32
|
+
* Resolve the key selector the credential-helper signs with. Honors an explicit
|
|
33
|
+
* `--key` pointing at either a private key or its `.pub` sibling. A public key path
|
|
34
|
+
* MUST remain public: `ssh-keygen -Y sign -f <public-key>` delegates to ssh-agent,
|
|
35
|
+
* avoiding an invisible passphrase prompt in this non-interactive CLI.
|
|
36
|
+
*/
|
|
37
|
+
export declare function resolveSigningKeyPath(keyOpt: string | undefined, base: KeyPathBase): string;
|
|
38
|
+
/**
|
|
39
|
+
* Resolve the PUBLIC key path for `ssh-key add`. Honors `--key` (a trailing `.pub`
|
|
40
|
+
* is added when missing), else the default `~/.ssh/id_ed25519.pub`.
|
|
41
|
+
*/
|
|
42
|
+
export declare function resolvePublicKeyPath(keyOpt: string | undefined, base: KeyPathBase): string;
|
|
43
|
+
/** The `.pub` sibling of an already-resolved key selector (a `.pub` path stays as-is). */
|
|
44
|
+
export declare function publicKeyPathOf(keyPath: string): string;
|
|
45
|
+
/** A minimal SSH key shape the resolver matches against (subset of the wire type). */
|
|
46
|
+
export interface SshKeyRef {
|
|
47
|
+
id: string;
|
|
48
|
+
name: string;
|
|
49
|
+
fingerprint: string;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Resolve a `<key>` ref (id | `SHA256:...` fingerprint | name) to a single key id.
|
|
53
|
+
* PURE — the caller fetches the owner's keys and passes them in, so this is
|
|
54
|
+
* directly unit-testable. Throws on no-match and on an ambiguous name (two keys
|
|
55
|
+
* sharing a label), so a `remove` never deletes the wrong key.
|
|
56
|
+
*/
|
|
57
|
+
export declare function matchSshKey(ref: string, keys: SshKeyRef[]): string;
|
|
58
|
+
/** Read + trim a public key file. Throws a friendly error when it's missing. */
|
|
59
|
+
export declare function readPublicKeyFile(path: string, runtime: VibesRuntime): Promise<string>;
|
|
60
|
+
//# sourceMappingURL=ssh-key-source.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ssh-key-source.d.ts","sourceRoot":"","sources":["../../../src/cli/lib/ssh-key-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,EAAsC,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAE5F;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACrB;AAED,yFAAyF;AACzF,wBAAgB,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,WAAW,CAE9D;AAED,gFAAgF;AAChF,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED,4DAA4D;AAC5D,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,MAAM,CAIvE;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,WAAW,GAAG,MAAM,CAG3F;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,WAAW,GAAG,MAAM,CAG1F;AAED,0FAA0F;AAC1F,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED,sFAAsF;AACtF,MAAM,WAAW,SAAS;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACpB;AAID;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM,CAkBlE;AAED,gFAAgF;AAChF,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAiB5F"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Local SSH key resolution for forge-cli (key add + credential-helper signing).
|
|
3
|
+
*
|
|
4
|
+
* The PRIVATE key never leaves the machine. `add` reads the PUBLIC key file and
|
|
5
|
+
* uploads it; the credential-helper shells out to `ssh-keygen -Y sign` against a
|
|
6
|
+
* signing-key selector to produce an SSHSIG over the server nonce — only that
|
|
7
|
+
* signature crosses the wire. A PUBLIC key selector lets OpenSSH use the matching
|
|
8
|
+
* key already loaded in ssh-agent without reading or prompting for the private key.
|
|
9
|
+
*
|
|
10
|
+
* Default key path mirrors OpenSSH's own default public identity,
|
|
11
|
+
* `~/.ssh/id_ed25519.pub`, under the runtime's path-roots user home. Override
|
|
12
|
+
* with `--key <path>`.
|
|
13
|
+
*/
|
|
14
|
+
import { isAbsolute, join, resolveFileSystemAdapter } from '@vibesdotdev/filesystem';
|
|
15
|
+
import { getPathRoots } from '@vibesdotdev/paths';
|
|
16
|
+
import { requireRuntimeCwd, CapabilityError } from '@vibesdotdev/kernel';
|
|
17
|
+
/** The key path base of `runtime`: `getPathRoots(runtime).userHome` and the host cwd. */
|
|
18
|
+
export function keyPathBase(runtime) {
|
|
19
|
+
return { userHome: getPathRoots(runtime).userHome, cwd: requireRuntimeCwd(runtime) };
|
|
20
|
+
}
|
|
21
|
+
/** The default OpenSSH Ed25519 identity (private key path; `.pub` = public). */
|
|
22
|
+
export function defaultPrivateKeyPath(userHome) {
|
|
23
|
+
return join(userHome, '.ssh', 'id_ed25519');
|
|
24
|
+
}
|
|
25
|
+
export function defaultPublicKeyPath(userHome) {
|
|
26
|
+
return `${defaultPrivateKeyPath(userHome)}.pub`;
|
|
27
|
+
}
|
|
28
|
+
/** Expand a leading `~` and resolve to an absolute path. */
|
|
29
|
+
export function resolveKeyPath(input, base) {
|
|
30
|
+
if (input.startsWith('~/'))
|
|
31
|
+
return join(base.userHome, input.slice(2));
|
|
32
|
+
if (input === '~')
|
|
33
|
+
return base.userHome;
|
|
34
|
+
return isAbsolute(input) ? input : join(base.cwd, input);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Resolve the key selector the credential-helper signs with. Honors an explicit
|
|
38
|
+
* `--key` pointing at either a private key or its `.pub` sibling. A public key path
|
|
39
|
+
* MUST remain public: `ssh-keygen -Y sign -f <public-key>` delegates to ssh-agent,
|
|
40
|
+
* avoiding an invisible passphrase prompt in this non-interactive CLI.
|
|
41
|
+
*/
|
|
42
|
+
export function resolveSigningKeyPath(keyOpt, base) {
|
|
43
|
+
if (!keyOpt)
|
|
44
|
+
return defaultPublicKeyPath(base.userHome);
|
|
45
|
+
return resolveKeyPath(keyOpt, base);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Resolve the PUBLIC key path for `ssh-key add`. Honors `--key` (a trailing `.pub`
|
|
49
|
+
* is added when missing), else the default `~/.ssh/id_ed25519.pub`.
|
|
50
|
+
*/
|
|
51
|
+
export function resolvePublicKeyPath(keyOpt, base) {
|
|
52
|
+
if (!keyOpt)
|
|
53
|
+
return defaultPublicKeyPath(base.userHome);
|
|
54
|
+
return publicKeyPathOf(resolveKeyPath(keyOpt, base));
|
|
55
|
+
}
|
|
56
|
+
/** The `.pub` sibling of an already-resolved key selector (a `.pub` path stays as-is). */
|
|
57
|
+
export function publicKeyPathOf(keyPath) {
|
|
58
|
+
return keyPath.endsWith('.pub') ? keyPath : `${keyPath}.pub`;
|
|
59
|
+
}
|
|
60
|
+
const UUID_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
|
|
61
|
+
/**
|
|
62
|
+
* Resolve a `<key>` ref (id | `SHA256:...` fingerprint | name) to a single key id.
|
|
63
|
+
* PURE — the caller fetches the owner's keys and passes them in, so this is
|
|
64
|
+
* directly unit-testable. Throws on no-match and on an ambiguous name (two keys
|
|
65
|
+
* sharing a label), so a `remove` never deletes the wrong key.
|
|
66
|
+
*/
|
|
67
|
+
export function matchSshKey(ref, keys) {
|
|
68
|
+
const trimmed = ref.trim();
|
|
69
|
+
if (UUID_RE.test(trimmed))
|
|
70
|
+
return trimmed; // an id is used as-is
|
|
71
|
+
if (trimmed.startsWith('SHA256:')) {
|
|
72
|
+
const byFp = keys.filter((k) => k.fingerprint === trimmed);
|
|
73
|
+
if (byFp.length === 1)
|
|
74
|
+
return byFp[0].id;
|
|
75
|
+
if (byFp.length === 0)
|
|
76
|
+
throw new Error(`No SSH key with fingerprint "${trimmed}".`);
|
|
77
|
+
// fingerprints are UNIQUE server-side, so >1 is impossible, but fail safe.
|
|
78
|
+
throw new Error(`Fingerprint "${trimmed}" matched multiple keys; pass the id.`);
|
|
79
|
+
}
|
|
80
|
+
const byName = keys.filter((k) => k.name === trimmed);
|
|
81
|
+
if (byName.length === 1)
|
|
82
|
+
return byName[0].id;
|
|
83
|
+
if (byName.length === 0)
|
|
84
|
+
throw new Error(`No SSH key named "${trimmed}".`);
|
|
85
|
+
throw new Error(`Name "${trimmed}" matched ${byName.length} keys; pass the id or fingerprint to disambiguate.`);
|
|
86
|
+
}
|
|
87
|
+
/** Read + trim a public key file. Throws a friendly error when it's missing. */
|
|
88
|
+
export async function readPublicKeyFile(path, runtime) {
|
|
89
|
+
try {
|
|
90
|
+
const fs = await resolveFileSystemAdapter(runtime, { binding: false });
|
|
91
|
+
const raw = await fs.readFile(path, 'utf8');
|
|
92
|
+
const contents = raw instanceof Uint8Array ? new TextDecoder().decode(raw) : String(raw);
|
|
93
|
+
const line = contents.trim();
|
|
94
|
+
if (!line)
|
|
95
|
+
throw new Error('file is empty');
|
|
96
|
+
return line;
|
|
97
|
+
}
|
|
98
|
+
catch (err) {
|
|
99
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
100
|
+
throw new CapabilityError(`Could not read SSH public key at ${path}: ${message}. ` +
|
|
101
|
+
`Pass --key <path> or generate one with \`ssh-keygen -t ed25519\`.`, 'INVALID_INPUT', { cause: err, reason: 'ssh-public-key-unreadable' });
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
//# sourceMappingURL=ssh-key-source.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ssh-key-source.js","sourceRoot":"","sources":["../../../src/cli/lib/ssh-key-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAqB,MAAM,qBAAqB,CAAC;AAY5F,yFAAyF;AACzF,MAAM,UAAU,WAAW,CAAC,OAAqB;IAChD,OAAO,EAAE,QAAQ,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;AACtF,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,qBAAqB,CAAC,QAAgB;IACrD,OAAO,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,QAAgB;IACpD,OAAO,GAAG,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CAAC;AACjD,CAAC;AAED,4DAA4D;AAC5D,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,IAAiB;IAC9D,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACvE,IAAI,KAAK,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC,QAAQ,CAAC;IACxC,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAA0B,EAAE,IAAiB;IAClF,IAAI,CAAC,MAAM;QAAE,OAAO,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxD,OAAO,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AACrC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAA0B,EAAE,IAAiB;IACjF,IAAI,CAAC,MAAM;QAAE,OAAO,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxD,OAAO,eAAe,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;AACtD,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,eAAe,CAAC,OAAe;IAC9C,OAAO,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,MAAM,CAAC;AAC9D,CAAC;AASD,MAAM,OAAO,GAAG,iEAAiE,CAAC;AAElF;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW,EAAE,IAAiB;IACzD,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAC3B,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAC,CAAC,sBAAsB;IAEjE,IAAI,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,OAAO,CAAC,CAAC;QAC3D,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,OAAO,IAAI,CAAC,CAAC;QACpF,2EAA2E;QAC3E,MAAM,IAAI,KAAK,CAAC,gBAAgB,OAAO,uCAAuC,CAAC,CAAC;IACjF,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;IACtD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,OAAO,IAAI,CAAC,CAAC;IAC3E,MAAM,IAAI,KAAK,CACd,SAAS,OAAO,aAAa,MAAM,CAAC,MAAM,oDAAoD,CAC9F,CAAC;AACH,CAAC;AAED,gFAAgF;AAChF,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAY,EAAE,OAAqB;IAC1E,IAAI,CAAC;QACJ,MAAM,EAAE,GAAG,MAAM,wBAAwB,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QACvE,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,GAAG,YAAY,UAAU,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACzF,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC;IACb,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjE,MAAM,IAAI,eAAe,CACxB,oCAAoC,IAAI,KAAK,OAAO,IAAI;YACvD,mEAAmE,EACpE,eAAe,EACf,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,2BAA2B,EAAE,CACnD,CAAC;IACH,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Thin wrappers over the local `ssh-keygen` binary for the credential-helper.
|
|
3
|
+
*
|
|
4
|
+
* We deliberately shell out to `ssh-keygen -Y sign` rather than reimplementing
|
|
5
|
+
* SSHSIG signing in JS: the produced bytes are then BYTE-FOR-BYTE the format the
|
|
6
|
+
* platform verifier was golden-vector-tested against (`ssh-keygen -Y sign -n
|
|
7
|
+
* vibes-git`). The fingerprint comes from `ssh-keygen -lf <pub>`, matching the
|
|
8
|
+
* `SHA256:...` form the server stores and resolves by.
|
|
9
|
+
*
|
|
10
|
+
* The `exec` boundary is injectable so the flow is unit-testable without a real
|
|
11
|
+
* ssh-keygen (and so a CI box without ssh-keygen fails with a clear message rather
|
|
12
|
+
* than a crash).
|
|
13
|
+
*/
|
|
14
|
+
import { type VibesRuntime } from '@vibesdotdev/kernel';
|
|
15
|
+
/** The SSHSIG namespace — MUST match the platform verifier's pin. */
|
|
16
|
+
export declare const SSHSIG_NAMESPACE = "vibes-git";
|
|
17
|
+
export interface ExecResult {
|
|
18
|
+
code: number;
|
|
19
|
+
stdout: string;
|
|
20
|
+
stderr: string;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Injectable exec: run a command with args + optional stdin, capture output.
|
|
24
|
+
*
|
|
25
|
+
* `cwd` sets the spawned process's working directory. It matters for tools that
|
|
26
|
+
* read config/overrides from the CWD rather than from a flag — notably `npm`,
|
|
27
|
+
* which resolves a project's `package.json` `overrides` and `.npmrc` hierarchy
|
|
28
|
+
* from its CWD (so `--prefix` alone does NOT isolate it from a surrounding
|
|
29
|
+
* repository). `git` callers instead use `git -C <dir>`, so they pass no `cwd`.
|
|
30
|
+
*
|
|
31
|
+
* `env` merges additional env vars into the subprocess environment. Used by the
|
|
32
|
+
* registry smoke to inject the publish token into npm's env without writing it
|
|
33
|
+
* to disk or passing it via argv (secrets leverage contract).
|
|
34
|
+
*/
|
|
35
|
+
export type ExecLike = (command: string, args: string[], stdin?: string | Record<string, string>, cwd?: string) => Promise<ExecResult>;
|
|
36
|
+
export declare function runtimeExec(runtime: VibesRuntime): ExecLike;
|
|
37
|
+
/**
|
|
38
|
+
* Compute the `SHA256:...` fingerprint of a public key file via `ssh-keygen -lf`.
|
|
39
|
+
* Parses the second whitespace field of the output (`<bits> SHA256:... comment`).
|
|
40
|
+
*/
|
|
41
|
+
export declare function fingerprintPublicKey(publicKeyPath: string, exec: ExecLike): Promise<string>;
|
|
42
|
+
/**
|
|
43
|
+
* Produce an armored SSHSIG over `message` using `signingKeyPath`, with namespace
|
|
44
|
+
* `vibes-git`. The selector may be a private key or a public key whose private half
|
|
45
|
+
* is loaded in ssh-agent. Signs stdin (`-Y sign -f key -`) so no temp file is
|
|
46
|
+
* written. The returned blob is exactly what `/api/git-auth/verify` expects.
|
|
47
|
+
*/
|
|
48
|
+
export declare function signSshSig(signingKeyPath: string, message: string, exec: ExecLike): Promise<string>;
|
|
49
|
+
//# sourceMappingURL=ssh-keygen.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ssh-keygen.d.ts","sourceRoot":"","sources":["../../../src/cli/lib/ssh-keygen.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,EAA8D,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAKpH,qEAAqE;AACrE,eAAO,MAAM,gBAAgB,cAAc,CAAC;AAE5C,MAAM,WAAW,UAAU;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,QAAQ,GAAG,CACtB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACvC,GAAG,CAAC,EAAE,MAAM,KACR,OAAO,CAAC,UAAU,CAAC,CAAC;AAYzB,wBAAgB,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,QAAQ,CAsB3D;AAgBD;;;GAGG;AACH,wBAAsB,oBAAoB,CACzC,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,QAAQ,GACZ,OAAO,CAAC,MAAM,CAAC,CAUjB;AAED;;;;;GAKG;AACH,wBAAsB,UAAU,CAC/B,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,QAAQ,GACZ,OAAO,CAAC,MAAM,CAAC,CAcjB"}
|