run402-mcp 4.93.1 → 4.94.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +75 -73
- package/core/dist/config.d.ts +16 -2
- package/core/dist/config.d.ts.map +1 -1
- package/core/dist/config.js +52 -18
- package/core/dist/config.js.map +1 -1
- package/core/dist/control-plane-session.d.ts +29 -14
- package/core/dist/control-plane-session.d.ts.map +1 -1
- package/core/dist/control-plane-session.js +31 -6
- package/core/dist/control-plane-session.js.map +1 -1
- package/core/dist/keystore.js +7 -7
- package/core/dist/keystore.js.map +1 -1
- package/core/dist/profiles.d.ts +3 -3
- package/core/dist/profiles.d.ts.map +1 -1
- package/core/dist/profiles.js +9 -7
- package/core/dist/profiles.js.map +1 -1
- package/core/dist/{allowance-auth.d.ts → wallet-auth.d.ts} +6 -6
- package/core/dist/wallet-auth.d.ts.map +1 -0
- package/{sdk/core-dist/allowance-auth.js → core/dist/wallet-auth.js} +15 -15
- package/core/dist/wallet-auth.js.map +1 -0
- package/core/dist/wallet.d.ts +22 -0
- package/core/dist/wallet.d.ts.map +1 -0
- package/core/dist/{allowance.js → wallet.js} +20 -20
- package/core/dist/wallet.js.map +1 -0
- package/core/dist/{write-auth-session.d.ts → write-approvals.d.ts} +28 -26
- package/core/dist/write-approvals.d.ts.map +1 -0
- package/{sdk/core-dist/write-auth-session.js → core/dist/write-approvals.js} +19 -19
- package/core/dist/write-approvals.js.map +1 -0
- package/dist/config.d.ts +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +1 -1
- package/dist/config.js.map +1 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +14 -9
- package/dist/errors.js.map +1 -1
- package/dist/format-bytes.d.ts +2 -0
- package/dist/format-bytes.d.ts.map +1 -0
- package/dist/format-bytes.js +24 -0
- package/dist/format-bytes.js.map +1 -0
- package/dist/index.js +66 -63
- package/dist/index.js.map +1 -1
- package/dist/sdk.js +2 -2
- package/dist/sdk.js.map +1 -1
- package/dist/tool-profiles.d.ts +6 -6
- package/dist/tool-profiles.d.ts.map +1 -1
- package/dist/tool-profiles.js +11 -11
- package/dist/tool-profiles.js.map +1 -1
- package/dist/tools/admin-reactivate-project.js +1 -1
- package/dist/tools/admin-reactivate-project.js.map +1 -1
- package/dist/tools/admin-set-lease-perpetual.js +1 -1
- package/dist/tools/admin-set-lease-perpetual.js.map +1 -1
- package/dist/tools/check-balance.js +4 -4
- package/dist/tools/check-balance.js.map +1 -1
- package/dist/tools/ci.js +1 -1
- package/dist/tools/ci.js.map +1 -1
- package/dist/tools/create-email-organization.js +1 -1
- package/dist/tools/create-email-organization.js.map +1 -1
- package/dist/tools/create-notification-rule.js +3 -3
- package/dist/tools/create-notification-rule.js.map +1 -1
- package/dist/tools/delete-notification-rule.js +2 -2
- package/dist/tools/delete-notification-rule.js.map +1 -1
- package/dist/tools/deploy-events.js +2 -2
- package/dist/tools/deploy-events.js.map +1 -1
- package/dist/tools/deploy-list.js +2 -2
- package/dist/tools/deploy-list.js.map +1 -1
- package/dist/tools/deploy-rehearse.js +2 -2
- package/dist/tools/deploy-rehearse.js.map +1 -1
- package/dist/tools/{deploy-release.d.ts → deploy-releases.d.ts} +9 -9
- package/dist/tools/deploy-releases.d.ts.map +1 -0
- package/dist/tools/{deploy-release.js → deploy-releases.js} +9 -9
- package/dist/tools/deploy-releases.js.map +1 -0
- package/dist/tools/{deploy-diagnose-url.d.ts → deploy-resolve.d.ts} +4 -4
- package/dist/tools/deploy-resolve.d.ts.map +1 -0
- package/dist/tools/{deploy-diagnose-url.js → deploy-resolve.js} +6 -6
- package/dist/tools/deploy-resolve.js.map +1 -0
- package/dist/tools/deploy-resume.js +2 -2
- package/dist/tools/deploy-resume.js.map +1 -1
- package/dist/tools/deploy-site-dir.js +2 -2
- package/dist/tools/deploy-site-dir.js.map +1 -1
- package/dist/tools/deploy-site.js +2 -2
- package/dist/tools/deploy-site.js.map +1 -1
- package/dist/tools/deploy-verify-edge.js +2 -2
- package/dist/tools/deploy-verify-edge.js.map +1 -1
- package/dist/tools/deploy.js +3 -3
- package/dist/tools/deploy.js.map +1 -1
- package/dist/tools/fork-app.js +2 -2
- package/dist/tools/fork-app.js.map +1 -1
- package/dist/tools/generate-image.js +5 -5
- package/dist/tools/generate-image.js.map +1 -1
- package/dist/tools/get-agent-contact-status.js +2 -2
- package/dist/tools/get-agent-contact-status.js.map +1 -1
- package/dist/tools/get-notification-preferences.js +2 -2
- package/dist/tools/get-notification-preferences.js.map +1 -1
- package/dist/tools/get-quote.js +3 -3
- package/dist/tools/get-quote.js.map +1 -1
- package/dist/tools/get-room.d.ts +20 -0
- package/dist/tools/get-room.d.ts.map +1 -0
- package/dist/tools/get-room.js +25 -0
- package/dist/tools/get-room.js.map +1 -0
- package/dist/tools/get-usage.d.ts.map +1 -1
- package/dist/tools/get-usage.js +4 -3
- package/dist/tools/get-usage.js.map +1 -1
- package/dist/tools/init.js +36 -36
- package/dist/tools/init.js.map +1 -1
- package/dist/tools/leave-room.d.ts +22 -0
- package/dist/tools/leave-room.d.ts.map +1 -0
- package/dist/tools/leave-room.js +40 -0
- package/dist/tools/leave-room.js.map +1 -0
- package/dist/tools/lightning-topup.js +1 -1
- package/dist/tools/lightning-topup.js.map +1 -1
- package/dist/tools/lightning-wallet.d.ts +2 -2
- package/dist/tools/lightning-wallet.js +9 -9
- package/dist/tools/lightning-wallet.js.map +1 -1
- package/dist/tools/link-wallet-to-organization.d.ts.map +1 -1
- package/dist/tools/link-wallet-to-organization.js +4 -3
- package/dist/tools/link-wallet-to-organization.js.map +1 -1
- package/dist/tools/list-notification-channels.js +2 -2
- package/dist/tools/list-notification-channels.js.map +1 -1
- package/dist/tools/list-notification-rules.js +2 -2
- package/dist/tools/list-notification-rules.js.map +1 -1
- package/dist/tools/list-notifications.js +2 -2
- package/dist/tools/list-notifications.js.map +1 -1
- package/dist/tools/list-projects.js +1 -1
- package/dist/tools/list-projects.js.map +1 -1
- package/dist/tools/list-rooms.d.ts +18 -0
- package/dist/tools/list-rooms.d.ts.map +1 -0
- package/dist/tools/list-rooms.js +28 -0
- package/dist/tools/list-rooms.js.map +1 -0
- package/dist/tools/list-subdomains.js +1 -1
- package/dist/tools/list-subdomains.js.map +1 -1
- package/dist/tools/orgs.d.ts +4 -4
- package/dist/tools/orgs.d.ts.map +1 -1
- package/dist/tools/orgs.js +28 -7
- package/dist/tools/orgs.js.map +1 -1
- package/dist/tools/provision-signer.js +1 -1
- package/dist/tools/provision-signer.js.map +1 -1
- package/dist/tools/provision.js +3 -3
- package/dist/tools/provision.js.map +1 -1
- package/dist/tools/redeem-voucher.js +5 -5
- package/dist/tools/redeem-voucher.js.map +1 -1
- package/dist/tools/request-faucet.js +9 -9
- package/dist/tools/request-faucet.js.map +1 -1
- package/dist/tools/rotate-webhook-secret.js +2 -2
- package/dist/tools/rotate-webhook-secret.js.map +1 -1
- package/dist/tools/send-feedback.js +3 -3
- package/dist/tools/send-feedback.js.map +1 -1
- package/dist/tools/set-agent-contact.js +2 -2
- package/dist/tools/set-agent-contact.js.map +1 -1
- package/dist/tools/set-notification-preferences.js +3 -3
- package/dist/tools/set-notification-preferences.js.map +1 -1
- package/dist/tools/start-contact-passkey-enrollment.d.ts +9 -0
- package/dist/tools/start-contact-passkey-enrollment.d.ts.map +1 -0
- package/dist/tools/start-contact-passkey-enrollment.js +18 -0
- package/dist/tools/start-contact-passkey-enrollment.js.map +1 -0
- package/dist/tools/status.d.ts.map +1 -1
- package/dist/tools/status.js +17 -16
- package/dist/tools/status.js.map +1 -1
- package/dist/tools/subdomain.d.ts +2 -2
- package/dist/tools/subdomain.d.ts.map +1 -1
- package/dist/tools/subdomain.js +4 -4
- package/dist/tools/subdomain.js.map +1 -1
- package/dist/tools/test-notification.js +2 -2
- package/dist/tools/test-notification.js.map +1 -1
- package/dist/tools/{set-tier.d.ts → tier-set.d.ts} +3 -3
- package/dist/tools/{set-tier.d.ts.map → tier-set.d.ts.map} +1 -1
- package/dist/tools/{set-tier.js → tier-set.js} +14 -8
- package/dist/tools/tier-set.js.map +1 -0
- package/dist/tools/tier-status.d.ts.map +1 -1
- package/dist/tools/tier-status.js +6 -4
- package/dist/tools/tier-status.js.map +1 -1
- package/dist/tools/transfers.d.ts +9 -15
- package/dist/tools/transfers.d.ts.map +1 -1
- package/dist/tools/transfers.js +39 -53
- package/dist/tools/transfers.js.map +1 -1
- package/dist/tools/{app-up.d.ts → up.d.ts} +3 -3
- package/dist/tools/up.d.ts.map +1 -0
- package/dist/tools/{app-up.js → up.js} +6 -6
- package/dist/tools/up.js.map +1 -0
- package/dist/tools/verify-agent-contact-email.js +2 -2
- package/dist/tools/verify-agent-contact-email.js.map +1 -1
- package/dist/tools/wallet-create.d.ts +9 -0
- package/dist/tools/wallet-create.d.ts.map +1 -0
- package/dist/tools/{allowance-create.js → wallet-create.js} +8 -8
- package/dist/tools/wallet-create.js.map +1 -0
- package/dist/tools/wallet-export.d.ts +9 -0
- package/dist/tools/wallet-export.d.ts.map +1 -0
- package/dist/tools/{allowance-export.js → wallet-export.js} +6 -6
- package/dist/tools/wallet-export.js.map +1 -0
- package/dist/tools/wallet-status.d.ts +9 -0
- package/dist/tools/wallet-status.d.ts.map +1 -0
- package/dist/tools/wallet-status.js +33 -0
- package/dist/tools/wallet-status.js.map +1 -0
- package/dist/wallet-auth.d.ts +21 -0
- package/dist/wallet-auth.d.ts.map +1 -0
- package/dist/wallet-auth.js +32 -0
- package/dist/wallet-auth.js.map +1 -0
- package/dist/wallet.d.ts +3 -0
- package/dist/wallet.d.ts.map +1 -0
- package/dist/wallet.js +2 -0
- package/dist/wallet.js.map +1 -0
- package/package.json +3 -3
- package/sdk/README.md +21 -19
- package/sdk/core-dist/config.d.ts +16 -2
- package/sdk/core-dist/config.js +52 -18
- package/sdk/core-dist/control-plane-session.d.ts +29 -14
- package/sdk/core-dist/control-plane-session.js +31 -6
- package/sdk/core-dist/keystore.js +7 -7
- package/sdk/core-dist/profiles.d.ts +3 -3
- package/sdk/core-dist/profiles.js +9 -7
- package/sdk/core-dist/{allowance-auth.d.ts → wallet-auth.d.ts} +6 -6
- package/{core/dist/allowance-auth.js → sdk/core-dist/wallet-auth.js} +15 -15
- package/sdk/core-dist/wallet.d.ts +22 -0
- package/sdk/core-dist/{allowance.js → wallet.js} +20 -20
- package/sdk/core-dist/{write-auth-session.d.ts → write-approvals.d.ts} +28 -26
- package/{core/dist/write-auth-session.js → sdk/core-dist/write-approvals.js} +19 -19
- package/sdk/dist/actions.d.ts +1 -1
- package/sdk/dist/actions.d.ts.map +1 -1
- package/sdk/dist/control-plane-credentials.d.ts +8 -8
- package/sdk/dist/control-plane-credentials.js +7 -7
- package/sdk/dist/credentials.d.ts +19 -19
- package/sdk/dist/credentials.d.ts.map +1 -1
- package/sdk/dist/credentials.js +1 -1
- package/sdk/dist/errors.d.ts +24 -26
- package/sdk/dist/errors.d.ts.map +1 -1
- package/sdk/dist/errors.js +34 -37
- package/sdk/dist/errors.js.map +1 -1
- package/sdk/dist/index.d.ts +29 -16
- package/sdk/dist/index.d.ts.map +1 -1
- package/sdk/dist/index.js +29 -16
- package/sdk/dist/index.js.map +1 -1
- package/sdk/dist/kernel.d.ts +1 -1
- package/sdk/dist/kernel.d.ts.map +1 -1
- package/sdk/dist/kernel.js +10 -9
- package/sdk/dist/kernel.js.map +1 -1
- package/sdk/dist/namespaces/admin.d.ts +51 -120
- package/sdk/dist/namespaces/admin.d.ts.map +1 -1
- package/sdk/dist/namespaces/admin.js +41 -45
- package/sdk/dist/namespaces/admin.js.map +1 -1
- package/sdk/dist/namespaces/agent.d.ts +2 -2
- package/sdk/dist/namespaces/agent.d.ts.map +1 -1
- package/sdk/dist/namespaces/agent.js +2 -2
- package/sdk/dist/namespaces/agent.js.map +1 -1
- package/sdk/dist/namespaces/ai.d.ts +1 -1
- package/sdk/dist/namespaces/ai.js +1 -1
- package/sdk/dist/namespaces/billing.d.ts +6 -3
- package/sdk/dist/namespaces/billing.d.ts.map +1 -1
- package/sdk/dist/namespaces/billing.js.map +1 -1
- package/sdk/dist/namespaces/buzz-notifications.types.d.ts +1 -1
- package/sdk/dist/namespaces/buzz.d.ts +2 -2
- package/sdk/dist/namespaces/buzz.d.ts.map +1 -1
- package/sdk/dist/namespaces/buzz.js +2 -2
- package/sdk/dist/namespaces/buzz.js.map +1 -1
- package/sdk/dist/namespaces/buzz.types.d.ts +2 -2
- package/sdk/dist/namespaces/buzz.types.d.ts.map +1 -1
- package/sdk/dist/namespaces/credentials.types.d.ts +1 -1
- package/sdk/dist/namespaces/deploy.d.ts +1 -1
- package/sdk/dist/namespaces/deploy.js +5 -5
- package/sdk/dist/namespaces/deploy.js.map +1 -1
- package/sdk/dist/namespaces/deploy.types.d.ts +4 -4
- package/sdk/dist/namespaces/escalations.d.ts +1 -1
- package/sdk/dist/namespaces/escalations.js +1 -1
- package/sdk/dist/namespaces/escalations.types.d.ts +2 -2
- package/sdk/dist/namespaces/escalations.types.d.ts.map +1 -1
- package/sdk/dist/namespaces/events.types.d.ts +1 -1
- package/sdk/dist/namespaces/functions.d.ts +1 -1
- package/sdk/dist/namespaces/functions.js +1 -1
- package/sdk/dist/namespaces/gitvault.crypto.d.ts +1 -1
- package/sdk/dist/namespaces/gitvault.d.ts +24 -24
- package/sdk/dist/namespaces/gitvault.d.ts.map +1 -1
- package/sdk/dist/namespaces/gitvault.js +109 -109
- package/sdk/dist/namespaces/gitvault.js.map +1 -1
- package/sdk/dist/namespaces/me.d.ts +120 -0
- package/sdk/dist/namespaces/me.d.ts.map +1 -0
- package/sdk/dist/namespaces/me.js +34 -0
- package/sdk/dist/namespaces/me.js.map +1 -0
- package/sdk/dist/namespaces/org.d.ts +108 -6
- package/sdk/dist/namespaces/org.d.ts.map +1 -1
- package/sdk/dist/namespaces/org.js +63 -7
- package/sdk/dist/namespaces/org.js.map +1 -1
- package/sdk/dist/namespaces/org.types.d.ts +29 -9
- package/sdk/dist/namespaces/org.types.d.ts.map +1 -1
- package/sdk/dist/namespaces/pay.js +3 -3
- package/sdk/dist/namespaces/pay.js.map +1 -1
- package/sdk/dist/namespaces/projects.d.ts +9 -9
- package/sdk/dist/namespaces/projects.js +15 -15
- package/sdk/dist/namespaces/projects.js.map +1 -1
- package/sdk/dist/namespaces/projects.types.d.ts +28 -12
- package/sdk/dist/namespaces/projects.types.d.ts.map +1 -1
- package/sdk/dist/namespaces/rooms.d.ts +7 -7
- package/sdk/dist/namespaces/rooms.js +17 -17
- package/sdk/dist/namespaces/rooms.js.map +1 -1
- package/sdk/dist/namespaces/rooms.types.d.ts +9 -9
- package/sdk/dist/namespaces/rooms.types.d.ts.map +1 -1
- package/sdk/dist/namespaces/service.d.ts +1 -1
- package/sdk/dist/namespaces/service.js +1 -1
- package/sdk/dist/namespaces/{operator-session.d.ts → session.d.ts} +135 -51
- package/sdk/dist/namespaces/session.d.ts.map +1 -0
- package/sdk/dist/namespaces/{operator-session.js → session.js} +118 -30
- package/sdk/dist/namespaces/session.js.map +1 -0
- package/sdk/dist/namespaces/subdomains.d.ts +5 -5
- package/sdk/dist/namespaces/subdomains.d.ts.map +1 -1
- package/sdk/dist/namespaces/subdomains.js +6 -6
- package/sdk/dist/namespaces/subdomains.js.map +1 -1
- package/sdk/dist/namespaces/tier.d.ts +43 -20
- package/sdk/dist/namespaces/tier.d.ts.map +1 -1
- package/sdk/dist/namespaces/tier.js +7 -7
- package/sdk/dist/namespaces/tier.js.map +1 -1
- package/sdk/dist/namespaces/transfers.d.ts +74 -71
- package/sdk/dist/namespaces/transfers.d.ts.map +1 -1
- package/sdk/dist/namespaces/transfers.js +31 -38
- package/sdk/dist/namespaces/transfers.js.map +1 -1
- package/sdk/dist/namespaces/vouchers.d.ts +9 -10
- package/sdk/dist/namespaces/vouchers.d.ts.map +1 -1
- package/sdk/dist/namespaces/vouchers.js +4 -5
- package/sdk/dist/namespaces/vouchers.js.map +1 -1
- package/sdk/dist/namespaces/wallets.d.ts +72 -3
- package/sdk/dist/namespaces/wallets.d.ts.map +1 -1
- package/sdk/dist/namespaces/wallets.js +141 -3
- package/sdk/dist/namespaces/wallets.js.map +1 -1
- package/sdk/dist/namespaces/write-approval.d.ts +101 -0
- package/sdk/dist/namespaces/write-approval.d.ts.map +1 -0
- package/sdk/dist/namespaces/write-approval.js +62 -0
- package/sdk/dist/namespaces/write-approval.js.map +1 -0
- package/sdk/dist/node/actions-node.d.ts +3 -3
- package/sdk/dist/node/actions-node.d.ts.map +1 -1
- package/sdk/dist/node/actions-node.js +36 -36
- package/sdk/dist/node/actions-node.js.map +1 -1
- package/sdk/dist/node/{bearer-claim-key.d.ts → bearer-redeem-key.d.ts} +12 -12
- package/sdk/dist/node/bearer-redeem-key.d.ts.map +1 -0
- package/sdk/dist/node/{bearer-claim-key.js → bearer-redeem-key.js} +21 -21
- package/sdk/dist/node/bearer-redeem-key.js.map +1 -0
- package/sdk/dist/node/ci.d.ts +1 -1
- package/sdk/dist/node/ci.d.ts.map +1 -1
- package/sdk/dist/node/ci.js +6 -6
- package/sdk/dist/node/ci.js.map +1 -1
- package/sdk/dist/node/credentials.d.ts +17 -16
- package/sdk/dist/node/credentials.d.ts.map +1 -1
- package/sdk/dist/node/credentials.js +28 -27
- package/sdk/dist/node/credentials.js.map +1 -1
- package/sdk/dist/node/funding-recovery.d.ts +1 -1
- package/sdk/dist/node/funding-recovery.d.ts.map +1 -1
- package/sdk/dist/node/funding-recovery.js +1 -1
- package/sdk/dist/node/funding-recovery.js.map +1 -1
- package/sdk/dist/node/gitvault-apply.d.ts +1 -1
- package/sdk/dist/node/gitvault-apply.d.ts.map +1 -1
- package/sdk/dist/node/gitvault-handoff.d.ts +22 -22
- package/sdk/dist/node/gitvault-handoff.d.ts.map +1 -1
- package/sdk/dist/node/gitvault-handoff.js +45 -45
- package/sdk/dist/node/gitvault-handoff.js.map +1 -1
- package/sdk/dist/node/gitvault-prewarm.js +7 -7
- package/sdk/dist/node/gitvault-prewarm.js.map +1 -1
- package/sdk/dist/node/gitvault-restore.d.ts +1 -1
- package/sdk/dist/node/gitvault-restore.js +1 -1
- package/sdk/dist/node/index.d.ts +16 -16
- package/sdk/dist/node/index.d.ts.map +1 -1
- package/sdk/dist/node/index.js +15 -15
- package/sdk/dist/node/index.js.map +1 -1
- package/sdk/dist/node/org-adopt.d.ts +49 -0
- package/sdk/dist/node/org-adopt.d.ts.map +1 -0
- package/sdk/dist/node/org-adopt.js +77 -0
- package/sdk/dist/node/org-adopt.js.map +1 -0
- package/sdk/dist/node/paid-fetch.d.ts +7 -7
- package/sdk/dist/node/paid-fetch.d.ts.map +1 -1
- package/sdk/dist/node/paid-fetch.js +54 -54
- package/sdk/dist/node/paid-fetch.js.map +1 -1
- package/sdk/dist/node/preflight.d.ts +1 -1
- package/sdk/dist/node/preflight.d.ts.map +1 -1
- package/sdk/dist/node/preflight.js +1 -1
- package/sdk/dist/node/preflight.js.map +1 -1
- package/sdk/dist/node/source-scan.d.ts +1 -1
- package/sdk/dist/node/source-scan.js +2 -2
- package/sdk/dist/node/source-scan.js.map +1 -1
- package/sdk/dist/scoped.d.ts +3 -3
- package/sdk/dist/scoped.d.ts.map +1 -1
- package/sdk/dist/scoped.js +2 -2
- package/sdk/dist/scoped.js.map +1 -1
- package/core/dist/allowance-auth.d.ts.map +0 -1
- package/core/dist/allowance-auth.js.map +0 -1
- package/core/dist/allowance.d.ts +0 -22
- package/core/dist/allowance.d.ts.map +0 -1
- package/core/dist/allowance.js.map +0 -1
- package/core/dist/operator-session.d.ts +0 -80
- package/core/dist/operator-session.d.ts.map +0 -1
- package/core/dist/operator-session.js +0 -154
- package/core/dist/operator-session.js.map +0 -1
- package/core/dist/write-auth-session.d.ts.map +0 -1
- package/core/dist/write-auth-session.js.map +0 -1
- package/dist/allowance-auth.d.ts +0 -21
- package/dist/allowance-auth.d.ts.map +0 -1
- package/dist/allowance-auth.js +0 -32
- package/dist/allowance-auth.js.map +0 -1
- package/dist/allowance.d.ts +0 -3
- package/dist/allowance.d.ts.map +0 -1
- package/dist/allowance.js +0 -2
- package/dist/allowance.js.map +0 -1
- package/dist/tools/allowance-create.d.ts +0 -9
- package/dist/tools/allowance-create.d.ts.map +0 -1
- package/dist/tools/allowance-create.js.map +0 -1
- package/dist/tools/allowance-export.d.ts +0 -9
- package/dist/tools/allowance-export.d.ts.map +0 -1
- package/dist/tools/allowance-export.js.map +0 -1
- package/dist/tools/allowance-status.d.ts +0 -9
- package/dist/tools/allowance-status.d.ts.map +0 -1
- package/dist/tools/allowance-status.js +0 -33
- package/dist/tools/allowance-status.js.map +0 -1
- package/dist/tools/app-up.d.ts.map +0 -1
- package/dist/tools/app-up.js.map +0 -1
- package/dist/tools/deploy-diagnose-url.d.ts.map +0 -1
- package/dist/tools/deploy-diagnose-url.js.map +0 -1
- package/dist/tools/deploy-release.d.ts.map +0 -1
- package/dist/tools/deploy-release.js.map +0 -1
- package/dist/tools/get-operator-status.d.ts +0 -9
- package/dist/tools/get-operator-status.d.ts.map +0 -1
- package/dist/tools/get-operator-status.js +0 -17
- package/dist/tools/get-operator-status.js.map +0 -1
- package/dist/tools/set-tier.js.map +0 -1
- package/dist/tools/start-operator-passkey-enrollment.d.ts +0 -9
- package/dist/tools/start-operator-passkey-enrollment.d.ts.map +0 -1
- package/dist/tools/start-operator-passkey-enrollment.js +0 -18
- package/dist/tools/start-operator-passkey-enrollment.js.map +0 -1
- package/sdk/core-dist/allowance.d.ts +0 -22
- package/sdk/core-dist/operator-session.d.ts +0 -80
- package/sdk/core-dist/operator-session.js +0 -154
- package/sdk/dist/namespaces/allowance.d.ts +0 -79
- package/sdk/dist/namespaces/allowance.d.ts.map +0 -1
- package/sdk/dist/namespaces/allowance.js +0 -149
- package/sdk/dist/namespaces/allowance.js.map +0 -1
- package/sdk/dist/namespaces/operator-session.d.ts.map +0 -1
- package/sdk/dist/namespaces/operator-session.js.map +0 -1
- package/sdk/dist/namespaces/operator.d.ts +0 -359
- package/sdk/dist/namespaces/operator.d.ts.map +0 -1
- package/sdk/dist/namespaces/operator.js +0 -272
- package/sdk/dist/namespaces/operator.js.map +0 -1
- package/sdk/dist/node/bearer-claim-key.d.ts.map +0 -1
- package/sdk/dist/node/bearer-claim-key.js.map +0 -1
- package/sdk/dist/node/operator-claim.d.ts +0 -49
- package/sdk/dist/node/operator-claim.d.ts.map +0 -1
- package/sdk/dist/node/operator-claim.js +0 -77
- package/sdk/dist/node/operator-claim.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,gBAAgB,2BAA2B,CAAC;AAEzD,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;AAEzD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAoCD,wBAAgB,UAAU,IAAI,MAAM,CAGnC;AAED,wBAAgB,gBAAgB,IAAI,KAAK,GAAG,SAAS,GAAG,SAAS,CAGhE;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAIzC;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAED,eAAO,MAAM,eAAe,YAAY,CAAC;AASzC,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAExD;AA2BD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAMzC;AAED,8DAA8D;AAC9D,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAIrC;AAED,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED,wBAAgB,yBAAyB,IAAI,MAAM,CAElD;AAED,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C;AAED,wBAAgB,mBAAmB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAmBzE;AAeD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,eAAe,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAGhF;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,IAAI,CAAC,eAAe,EAAE,UAAU,GAAG,YAAY,CAAC,GAAG;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAO,GACvF,eAAe,CAiBjB;AAED,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,IAAI,CAKpD;AAED,wBAAgB,gBAAgB,IAAI,aAAa,CAGhD;AAeD,wBAAgB,eAAe,IAAI,OAAO,CAQzC;AAED,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,gBAAgB,2BAA2B,CAAC;AAEzD,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;AAEzD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAoCD,wBAAgB,UAAU,IAAI,MAAM,CAGnC;AAED,wBAAgB,gBAAgB,IAAI,KAAK,GAAG,SAAS,GAAG,SAAS,CAGhE;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAIzC;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAED,eAAO,MAAM,eAAe,YAAY,CAAC;AASzC,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAExD;AA2BD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAMzC;AAED,8DAA8D;AAC9D,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAIrC;AAED,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED,wBAAgB,yBAAyB,IAAI,MAAM,CAElD;AAED,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C;AAED,wBAAgB,mBAAmB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAmBzE;AAeD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,eAAe,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAGhF;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,IAAI,CAAC,eAAe,EAAE,UAAU,GAAG,YAAY,CAAC,GAAG;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAO,GACvF,eAAe,CAiBjB;AAED,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,IAAI,CAKpD;AAED,wBAAgB,gBAAgB,IAAI,aAAa,CAGhD;AAeD,wBAAgB,eAAe,IAAI,OAAO,CAQzC;AAED;;;GAGG;AACH,eAAO,MAAM,gBAAgB,gBAAgB,CAAC;AAO9C;;;;;;;GAOG;AACH,wBAAgB,eAAe,IAAI,IAAI,CA4BtC;AAED,wBAAgB,aAAa,IAAI,MAAM,CAItC"}
|
package/core/dist/config.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { homedir } from "node:os";
|
|
2
2
|
import { dirname, join } from "node:path";
|
|
3
|
-
import { existsSync, renameSync, mkdirSync, chmodSync, readFileSync, writeFileSync } from "node:fs";
|
|
3
|
+
import { existsSync, renameSync, mkdirSync, chmodSync, readFileSync, readdirSync, writeFileSync } from "node:fs";
|
|
4
4
|
import { randomBytes } from "node:crypto";
|
|
5
5
|
import { describeRejectedValue } from "./redact.js";
|
|
6
6
|
export const DEFAULT_API_BASE = "https://api.run402.com";
|
|
@@ -118,7 +118,7 @@ export function getProfilesDir() {
|
|
|
118
118
|
* The effective config directory for the *active* wallet. The `default` wallet
|
|
119
119
|
* resolves to the base dir (zero migration for existing single-wallet
|
|
120
120
|
* installs); any named wallet resolves to `{base}/profiles/<name>`. Because
|
|
121
|
-
* keystore,
|
|
121
|
+
* keystore, wallet, and meta paths all derive from this, switching the
|
|
122
122
|
* profile env var moves the whole wallet bundle atomically — and the SDK/MCP
|
|
123
123
|
* inherit profile selection for free.
|
|
124
124
|
*/
|
|
@@ -232,27 +232,61 @@ export function isCoreApiTarget() {
|
|
|
232
232
|
return true;
|
|
233
233
|
return false;
|
|
234
234
|
}
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
235
|
+
/**
|
|
236
|
+
* The file that holds a wallet's key, in the base config dir (the `default`
|
|
237
|
+
* wallet) and in each `profiles/<name>/` directory.
|
|
238
|
+
*/
|
|
239
|
+
export const WALLET_FILE_NAME = "wallet.json";
|
|
240
|
+
/** The name the wallet key file had before it was `wallet.json`. */
|
|
241
|
+
const PREVIOUS_WALLET_FILE_NAME = "allowance.json";
|
|
242
|
+
const walletFilesMovedFor = new Set();
|
|
243
|
+
/**
|
|
244
|
+
* One-time local move of the wallet key file to its current name: in the base
|
|
245
|
+
* config dir and every `profiles/<name>/` directory, `allowance.json` is
|
|
246
|
+
* renamed to `wallet.json` (an atomic same-directory rename) when
|
|
247
|
+
* `wallet.json` is absent, then tightened to 0600. A directory that already
|
|
248
|
+
* holds `wallet.json` is left untouched. Runs once per base dir per process;
|
|
249
|
+
* nothing reads the previous name afterwards.
|
|
250
|
+
*/
|
|
251
|
+
export function moveWalletFiles() {
|
|
252
|
+
const base = getConfigBaseDir();
|
|
253
|
+
if (walletFilesMovedFor.has(base))
|
|
254
|
+
return;
|
|
255
|
+
walletFilesMovedFor.add(base);
|
|
256
|
+
const dirs = [base];
|
|
257
|
+
try {
|
|
258
|
+
for (const entry of readdirSync(join(base, "profiles"), { withFileTypes: true })) {
|
|
259
|
+
if (entry.isDirectory())
|
|
260
|
+
dirs.push(join(base, "profiles", entry.name));
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
catch {
|
|
264
|
+
// No profiles directory yet.
|
|
265
|
+
}
|
|
266
|
+
for (const dir of dirs) {
|
|
267
|
+
const from = join(dir, PREVIOUS_WALLET_FILE_NAME);
|
|
268
|
+
const to = join(dir, WALLET_FILE_NAME);
|
|
269
|
+
if (existsSync(to) || !existsSync(from))
|
|
270
|
+
continue;
|
|
271
|
+
try {
|
|
272
|
+
renameSync(from, to);
|
|
273
|
+
}
|
|
274
|
+
catch {
|
|
275
|
+
continue;
|
|
276
|
+
}
|
|
248
277
|
try {
|
|
249
|
-
chmodSync(
|
|
278
|
+
chmodSync(to, 0o600);
|
|
250
279
|
}
|
|
251
280
|
catch {
|
|
252
281
|
// Best-effort (e.g. Windows / exotic filesystems). Read-time self-heal
|
|
253
|
-
// in
|
|
282
|
+
// in readWallet() is the backstop.
|
|
254
283
|
}
|
|
255
284
|
}
|
|
256
|
-
|
|
285
|
+
}
|
|
286
|
+
export function getWalletPath() {
|
|
287
|
+
if (process.env.RUN402_WALLET_PATH)
|
|
288
|
+
return process.env.RUN402_WALLET_PATH;
|
|
289
|
+
moveWalletFiles();
|
|
290
|
+
return join(getConfigDir(), WALLET_FILE_NAME);
|
|
257
291
|
}
|
|
258
292
|
//# sourceMappingURL=config.js.map
|
package/core/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,33 +1,40 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* (`
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
2
|
+
* The cached **sign-in session** — a person's one Run402 session, bound to
|
|
3
|
+
* their principal and graded by how it was minted: `loopback` (`run402 login`,
|
|
4
|
+
* the loopback-PKCE browser ceremony; full, step-up-able) or `device`
|
|
5
|
+
* (`run402 login --device`, RFC 8628; read-only — the gateway refuses every
|
|
6
|
+
* mutation with `SESSION_READ_ONLY`). The wire token class is
|
|
7
|
+
* `control_plane_session`. The session authorizes most control-plane writes,
|
|
8
|
+
* but provisioning, deploying, and writing secrets additionally need a
|
|
9
|
+
* passkey-signed **write approval** (`X-Run402-Write-Approval`, minted by
|
|
10
|
+
* `run402 approve`; see `write-approvals.ts`). Cached at the BASE config dir
|
|
11
|
+
* (principal-scoped, shared across local named wallets), mode 0600 — the token
|
|
12
|
+
* is as sensitive as the wallet key.
|
|
12
13
|
*
|
|
13
14
|
* Stored shape vs the gateway payload: the gateway returns a relative
|
|
14
15
|
* `expires_in` (seconds); we persist the absolute `expires_at` (epoch ms) so a
|
|
15
16
|
* cached session can be expiry-checked without knowing when it was written.
|
|
16
17
|
*/
|
|
18
|
+
/** How a sign-in session was minted, as the gateway reports it. */
|
|
19
|
+
export type SessionGrade = "browser" | "loopback" | "device";
|
|
17
20
|
export interface ControlPlaneSessionCache {
|
|
18
21
|
control_plane_session_token: string;
|
|
19
22
|
token_type: string;
|
|
20
|
-
|
|
23
|
+
grade: SessionGrade;
|
|
21
24
|
principal_id: string;
|
|
22
25
|
amr: string[];
|
|
23
26
|
/** Epoch ms when the session expires (issued_at + expires_in). */
|
|
24
27
|
expires_at: number;
|
|
25
28
|
}
|
|
26
|
-
/**
|
|
29
|
+
/**
|
|
30
|
+
* The token payload returned by `POST /agent/v1/control-plane/cli/token`
|
|
31
|
+
* (grade `loopback`) and `POST /agent/v1/control-plane/cli/device/token`
|
|
32
|
+
* (grade `device`).
|
|
33
|
+
*/
|
|
27
34
|
export interface ControlPlaneSessionTokenResponse {
|
|
28
35
|
control_plane_session_token: string;
|
|
29
36
|
token_type?: string;
|
|
30
|
-
|
|
37
|
+
grade?: string;
|
|
31
38
|
principal_id?: string;
|
|
32
39
|
amr?: string[];
|
|
33
40
|
expires_in?: number;
|
|
@@ -45,7 +52,7 @@ export declare function getControlPlaneSessionPath(): string;
|
|
|
45
52
|
export declare function readControlPlaneSession(path?: string): ControlPlaneSessionCache | null;
|
|
46
53
|
/** Persist a control-plane session atomically (temp-file + rename), mode 0600. */
|
|
47
54
|
export declare function saveControlPlaneSession(data: ControlPlaneSessionCache, path?: string): void;
|
|
48
|
-
/** Delete the cached
|
|
55
|
+
/** Delete the cached sign-in session — local half of `run402 logout`. Idempotent. */
|
|
49
56
|
export declare function clearControlPlaneSession(path?: string): void;
|
|
50
57
|
/** Whether a cached session is past its usable life (with a small skew buffer). */
|
|
51
58
|
export declare function isControlPlaneSessionExpired(session: ControlPlaneSessionCache, nowMs?: number, skewMs?: number): boolean;
|
|
@@ -53,4 +60,12 @@ export declare function isControlPlaneSessionExpired(session: ControlPlaneSessio
|
|
|
53
60
|
export declare function loadLiveControlPlaneSession(path?: string, nowMs?: number): ControlPlaneSessionCache | null;
|
|
54
61
|
/** Map a gateway token payload (relative `expires_in`) into the cached shape (absolute `expires_at`). */
|
|
55
62
|
export declare function controlPlaneSessionFromTokenResponse(resp: ControlPlaneSessionTokenResponse, nowMs?: number): ControlPlaneSessionCache;
|
|
63
|
+
/**
|
|
64
|
+
* Delete the session caches of the retired email-scoped session
|
|
65
|
+
* (`{base}/operator-session.json`) and the retired approval cache file
|
|
66
|
+
* (`{base}/write-auth-session.json`). Neither is read any more; `run402 login`
|
|
67
|
+
* and `run402 logout` call this so a stale token does not linger on disk.
|
|
68
|
+
* Best-effort and idempotent.
|
|
69
|
+
*/
|
|
70
|
+
export declare function clearRetiredSessionCaches(): void;
|
|
56
71
|
//# sourceMappingURL=control-plane-session.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"control-plane-session.d.ts","sourceRoot":"","sources":["../src/control-plane-session.ts"],"names":[],"mappings":"AAcA
|
|
1
|
+
{"version":3,"file":"control-plane-session.d.ts","sourceRoot":"","sources":["../src/control-plane-session.ts"],"names":[],"mappings":"AAcA;;;;;;;;;;;;;;;;GAgBG;AACH,mEAAmE;AACnE,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE7D,MAAM,WAAW,wBAAwB;IACvC,2BAA2B,EAAE,MAAM,CAAC;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,YAAY,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,kEAAkE;IAClE,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,MAAM,WAAW,gCAAgC;IAC/C,2BAA2B,EAAE,MAAM,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,IAAI,MAAM,CAKnD;AA2BD;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,wBAAwB,GAAG,IAAI,CA2CtF;AAED,kFAAkF;AAClF,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,wBAAwB,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAQ3F;AAED,qFAAqF;AACrF,wBAAgB,wBAAwB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAO5D;AAED,mFAAmF;AACnF,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,wBAAwB,EACjC,KAAK,GAAE,MAAmB,EAC1B,MAAM,SAAS,GACd,OAAO,CAET;AAED,+FAA+F;AAC/F,wBAAgB,2BAA2B,CACzC,IAAI,CAAC,EAAE,MAAM,EACb,KAAK,GAAE,MAAmB,GACzB,wBAAwB,GAAG,IAAI,CAIjC;AAED,yGAAyG;AACzG,wBAAgB,oCAAoC,CAClD,IAAI,EAAE,gCAAgC,EACtC,KAAK,GAAE,MAAmB,GACzB,wBAAwB,CAS1B;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,IAAI,IAAI,CAQhD"}
|
|
@@ -10,6 +10,14 @@ export function getControlPlaneSessionPath() {
|
|
|
10
10
|
return (process.env.RUN402_CONTROL_PLANE_SESSION_PATH ||
|
|
11
11
|
join(getConfigBaseDir(), "control-plane-session.json"));
|
|
12
12
|
}
|
|
13
|
+
/**
|
|
14
|
+
* Read a wire grade. An unknown or absent value is treated as `device` (the
|
|
15
|
+
* read-only grade) so a cache the client cannot classify never claims more
|
|
16
|
+
* authority than the gateway will grant.
|
|
17
|
+
*/
|
|
18
|
+
function toGrade(raw) {
|
|
19
|
+
return raw === "browser" || raw === "loopback" || raw === "device" ? raw : "device";
|
|
20
|
+
}
|
|
13
21
|
/** Tighten 0600 if group/other-readable, warning once. Best-effort, POSIX-only. */
|
|
14
22
|
function selfHealPermissions(p) {
|
|
15
23
|
if (process.platform === "win32")
|
|
@@ -50,20 +58,20 @@ export function readControlPlaneSession(path) {
|
|
|
50
58
|
return null;
|
|
51
59
|
}
|
|
52
60
|
if (parsed === null || typeof parsed !== "object" || Array.isArray(parsed)) {
|
|
53
|
-
throw new Error("control-plane-session.json must contain a JSON object. Delete it and run 'run402
|
|
61
|
+
throw new Error("control-plane-session.json must contain a JSON object. Delete it and run 'run402 login' to recreate it.");
|
|
54
62
|
}
|
|
55
63
|
const data = parsed;
|
|
56
64
|
if (typeof data.control_plane_session_token !== "string" ||
|
|
57
65
|
data.control_plane_session_token.length === 0) {
|
|
58
|
-
throw new Error("control-plane-session.json missing valid 'control_plane_session_token'. Run 'run402
|
|
66
|
+
throw new Error("control-plane-session.json missing valid 'control_plane_session_token'. Run 'run402 login' to refresh it.");
|
|
59
67
|
}
|
|
60
68
|
if (typeof data.expires_at !== "number" || !Number.isFinite(data.expires_at)) {
|
|
61
|
-
throw new Error("control-plane-session.json missing valid 'expires_at'. Run 'run402
|
|
69
|
+
throw new Error("control-plane-session.json missing valid 'expires_at'. Run 'run402 login' to refresh it.");
|
|
62
70
|
}
|
|
63
71
|
return {
|
|
64
72
|
control_plane_session_token: data.control_plane_session_token,
|
|
65
73
|
token_type: typeof data.token_type === "string" ? data.token_type : "Bearer",
|
|
66
|
-
|
|
74
|
+
grade: toGrade(data.grade),
|
|
67
75
|
principal_id: typeof data.principal_id === "string" ? data.principal_id : "",
|
|
68
76
|
amr: Array.isArray(data.amr) ? data.amr.filter((a) => typeof a === "string") : [],
|
|
69
77
|
expires_at: data.expires_at,
|
|
@@ -79,7 +87,7 @@ export function saveControlPlaneSession(data, path) {
|
|
|
79
87
|
renameSync(tmp, p);
|
|
80
88
|
chmodSync(p, 0o600);
|
|
81
89
|
}
|
|
82
|
-
/** Delete the cached
|
|
90
|
+
/** Delete the cached sign-in session — local half of `run402 logout`. Idempotent. */
|
|
83
91
|
export function clearControlPlaneSession(path) {
|
|
84
92
|
const p = path ?? getControlPlaneSessionPath();
|
|
85
93
|
try {
|
|
@@ -105,10 +113,27 @@ export function controlPlaneSessionFromTokenResponse(resp, nowMs = Date.now()) {
|
|
|
105
113
|
return {
|
|
106
114
|
control_plane_session_token: resp.control_plane_session_token,
|
|
107
115
|
token_type: resp.token_type ?? "Bearer",
|
|
108
|
-
|
|
116
|
+
grade: toGrade(resp.grade),
|
|
109
117
|
principal_id: resp.principal_id ?? "",
|
|
110
118
|
amr: Array.isArray(resp.amr) ? resp.amr.filter((a) => typeof a === "string") : [],
|
|
111
119
|
expires_at: nowMs + (typeof resp.expires_in === "number" ? resp.expires_in : 0) * 1000,
|
|
112
120
|
};
|
|
113
121
|
}
|
|
122
|
+
/**
|
|
123
|
+
* Delete the session caches of the retired email-scoped session
|
|
124
|
+
* (`{base}/operator-session.json`) and the retired approval cache file
|
|
125
|
+
* (`{base}/write-auth-session.json`). Neither is read any more; `run402 login`
|
|
126
|
+
* and `run402 logout` call this so a stale token does not linger on disk.
|
|
127
|
+
* Best-effort and idempotent.
|
|
128
|
+
*/
|
|
129
|
+
export function clearRetiredSessionCaches() {
|
|
130
|
+
for (const name of ["operator-session.json", "write-auth-session.json"]) {
|
|
131
|
+
try {
|
|
132
|
+
rmSync(join(getConfigBaseDir(), name), { force: true });
|
|
133
|
+
}
|
|
134
|
+
catch {
|
|
135
|
+
// Best-effort: a failed unlink never blocks login or logout.
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
114
139
|
//# sourceMappingURL=control-plane-session.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"control-plane-session.js","sourceRoot":"","sources":["../src/control-plane-session.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,aAAa,EACb,SAAS,EACT,UAAU,EACV,SAAS,EACT,UAAU,EACV,QAAQ,EACR,MAAM,GACP,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"control-plane-session.js","sourceRoot":"","sources":["../src/control-plane-session.ts"],"names":[],"mappings":"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"}
|
package/core/dist/keystore.js
CHANGED
|
@@ -3,7 +3,7 @@ import { dirname, join } from "node:path";
|
|
|
3
3
|
import { randomBytes } from "node:crypto";
|
|
4
4
|
import { getLegacyProjectsPath, getProjectCredentialsPath } from "./config.js";
|
|
5
5
|
import { clearActiveProjectId as clearProfileActiveProjectId, getActiveProjectId as getProfileActiveProjectId, recordMigration, setActiveProjectId as setProfileActiveProjectId, } from "./profile-state.js";
|
|
6
|
-
import {
|
|
6
|
+
import { readWallet } from "./wallet.js";
|
|
7
7
|
function withFileLock(path, fn, { retries = 200, delayMs = 20 } = {}) {
|
|
8
8
|
const lockDir = path + ".lock";
|
|
9
9
|
mkdirSync(dirname(path), { recursive: true });
|
|
@@ -99,7 +99,7 @@ function migrateLegacyProjectsJson(targetPath) {
|
|
|
99
99
|
// Scoped the same way every other write in this module now is (see
|
|
100
100
|
// `currentPrincipal`'s doc comment) — an unscoped write here is exactly
|
|
101
101
|
// what poisons the "unknown"-principal bucket for good on a machine that
|
|
102
|
-
// migrates before its wallet
|
|
102
|
+
// migrates before its wallet exists yet.
|
|
103
103
|
setProfileActiveProjectId(legacy.active_project_id, undefined, { principal: currentPrincipal() });
|
|
104
104
|
}
|
|
105
105
|
recordMigration("projects_json_import", {
|
|
@@ -174,7 +174,7 @@ export function removeProject(projectId, path) {
|
|
|
174
174
|
}
|
|
175
175
|
/**
|
|
176
176
|
* The active-project scope's `principal`, derived from the CURRENT wallet's
|
|
177
|
-
*
|
|
177
|
+
* wallet — matching exactly what `NodeCredentialsProvider.setActiveProject`
|
|
178
178
|
* (sdk/src/node/credentials.ts) writes after `projects.provision` /
|
|
179
179
|
* `projects.use`. Without this, every reader here used the profile-state
|
|
180
180
|
* module's own default (empty) scope, which resolves to a FIXED
|
|
@@ -185,7 +185,7 @@ export function removeProject(projectId, path) {
|
|
|
185
185
|
* `profile-state.ts#getActiveProjectId` happens to agree), but once the
|
|
186
186
|
* "unknown" bucket is EVER populated by any principal-less write — the
|
|
187
187
|
* one-time legacy `projects.json` migration below, or any provision/`use`
|
|
188
|
-
* call made before this machine had a wallet
|
|
188
|
+
* call made before this machine had a wallet — it never gets
|
|
189
189
|
* updated again (real wallet operations write to the principal-keyed
|
|
190
190
|
* bucket, not "unknown") and PERMANENTLY shadows every later wallet-scoped
|
|
191
191
|
* activation for every caller that reads through this module: `resolveProjectId`
|
|
@@ -197,13 +197,13 @@ export function removeProject(projectId, path) {
|
|
|
197
197
|
* stale "unknown"-bucket entry first and never falls through to the
|
|
198
198
|
* freshly-updated flat value.
|
|
199
199
|
*
|
|
200
|
-
* Best-effort: an unreadable/malformed
|
|
200
|
+
* Best-effort: an unreadable/malformed wallet degrades to `null` (the
|
|
201
201
|
* "unknown" bucket callers tolerate), never a
|
|
202
|
-
* throw — this is a read-scoping concern, not
|
|
202
|
+
* throw — this is a read-scoping concern, not a wallet-validity one.
|
|
203
203
|
*/
|
|
204
204
|
function currentPrincipal() {
|
|
205
205
|
try {
|
|
206
|
-
return
|
|
206
|
+
return readWallet()?.address ?? null;
|
|
207
207
|
}
|
|
208
208
|
catch {
|
|
209
209
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keystore.js","sourceRoot":"","sources":["../src/keystore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC/G,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EACL,oBAAoB,IAAI,2BAA2B,EACnD,kBAAkB,IAAI,yBAAyB,EAC/C,eAAe,EACf,kBAAkB,IAAI,yBAAyB,GAChD,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"keystore.js","sourceRoot":"","sources":["../src/keystore.ts"],"names":[],"mappings":"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"}
|
package/core/dist/profiles.d.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* A "wallet" is a whole config directory. The reserved `default` wallet lives
|
|
5
5
|
* at the base config dir (zero migration for existing installs); every named
|
|
6
|
-
* wallet lives under `{base}/profiles/<name>/` with its own `
|
|
6
|
+
* wallet lives under `{base}/profiles/<name>/` with its own `wallet.json`,
|
|
7
7
|
* `projects.json`, and this module's non-secret `meta.json`.
|
|
8
8
|
*
|
|
9
9
|
* Two levels of active state, mirroring the wallet → project model:
|
|
@@ -40,10 +40,10 @@ export declare function profileDir(name: string): string;
|
|
|
40
40
|
export declare function ensureProfileDir(name: string): string;
|
|
41
41
|
export declare function readMeta(name: string): ProfileMeta | null;
|
|
42
42
|
export declare function writeMeta(name: string, meta: ProfileMeta): void;
|
|
43
|
-
/** True when a wallet's `
|
|
43
|
+
/** True when a wallet's `wallet.json` exists on disk. */
|
|
44
44
|
export declare function profileExists(name: string): boolean;
|
|
45
45
|
/**
|
|
46
|
-
* All wallet names on disk: `default` (only if a root
|
|
46
|
+
* All wallet names on disk: `default` (only if a root wallet.json exists)
|
|
47
47
|
* plus every valid directory under `profiles/`.
|
|
48
48
|
*/
|
|
49
49
|
export declare function listProfileNames(): string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profiles.d.ts","sourceRoot":"","sources":["../src/profiles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;
|
|
1
|
+
{"version":3,"file":"profiles.d.ts","sourceRoot":"","sources":["../src/profiles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAwBH,MAAM,WAAW,UAAU;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAqBD,wBAAgB,cAAc,IAAI,UAAU,CAU3C;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI,CAErD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAGzC;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAInD;AAID,sFAAsF;AACtF,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,4EAA4E;AAC5E,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAoBrD;AAMD,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAUzD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,CAG/D;AAID,yDAAyD;AACzD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGnD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAc3C;AAED,iFAAiF;AACjF,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAKhD;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CA0CpE"}
|
package/core/dist/profiles.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* A "wallet" is a whole config directory. The reserved `default` wallet lives
|
|
5
5
|
* at the base config dir (zero migration for existing installs); every named
|
|
6
|
-
* wallet lives under `{base}/profiles/<name>/` with its own `
|
|
6
|
+
* wallet lives under `{base}/profiles/<name>/` with its own `wallet.json`,
|
|
7
7
|
* `projects.json`, and this module's non-secret `meta.json`.
|
|
8
8
|
*
|
|
9
9
|
* Two levels of active state, mirroring the wallet → project model:
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
import { readFileSync, writeFileSync, mkdirSync, renameSync, chmodSync, existsSync, readdirSync, rmSync, } from "node:fs";
|
|
18
18
|
import { dirname, join } from "node:path";
|
|
19
19
|
import { randomBytes } from "node:crypto";
|
|
20
|
-
import { getConfigBaseDir, getProfilesDir, DEFAULT_PROFILE, isValidProfileName, } from "./config.js";
|
|
20
|
+
import { getConfigBaseDir, getProfilesDir, DEFAULT_PROFILE, isValidProfileName, moveWalletFiles, WALLET_FILE_NAME, } from "./config.js";
|
|
21
21
|
import { describeRejectedValue } from "./redact.js";
|
|
22
22
|
function atomicWrite(p, content, mode) {
|
|
23
23
|
const dir = dirname(p);
|
|
@@ -114,17 +114,19 @@ export function writeMeta(name, meta) {
|
|
|
114
114
|
atomicWrite(metaPath(name), JSON.stringify(meta, null, 2), 0o600);
|
|
115
115
|
}
|
|
116
116
|
// --- enumeration + lifecycle ---
|
|
117
|
-
/** True when a wallet's `
|
|
117
|
+
/** True when a wallet's `wallet.json` exists on disk. */
|
|
118
118
|
export function profileExists(name) {
|
|
119
|
-
|
|
119
|
+
moveWalletFiles();
|
|
120
|
+
return existsSync(join(profileDir(name), WALLET_FILE_NAME));
|
|
120
121
|
}
|
|
121
122
|
/**
|
|
122
|
-
* All wallet names on disk: `default` (only if a root
|
|
123
|
+
* All wallet names on disk: `default` (only if a root wallet.json exists)
|
|
123
124
|
* plus every valid directory under `profiles/`.
|
|
124
125
|
*/
|
|
125
126
|
export function listProfileNames() {
|
|
127
|
+
moveWalletFiles();
|
|
126
128
|
const names = [];
|
|
127
|
-
if (existsSync(join(getConfigBaseDir(),
|
|
129
|
+
if (existsSync(join(getConfigBaseDir(), WALLET_FILE_NAME))) {
|
|
128
130
|
names.push(DEFAULT_PROFILE);
|
|
129
131
|
}
|
|
130
132
|
try {
|
|
@@ -184,7 +186,7 @@ export function renameProfile(oldName, newName) {
|
|
|
184
186
|
/* best-effort */
|
|
185
187
|
}
|
|
186
188
|
const base = getConfigBaseDir();
|
|
187
|
-
for (const f of [
|
|
189
|
+
for (const f of [WALLET_FILE_NAME, "projects.json", "meta.json"]) {
|
|
188
190
|
const src = join(base, f);
|
|
189
191
|
if (existsSync(src))
|
|
190
192
|
renameSync(src, join(dest, f));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profiles.js","sourceRoot":"","sources":["../src/profiles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EACL,YAAY,EACZ,aAAa,EACb,SAAS,EACT,UAAU,EACV,SAAS,EACT,UAAU,EACV,WAAW,EACX,MAAM,GACP,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,kBAAkB,
|
|
1
|
+
{"version":3,"file":"profiles.js","sourceRoot":"","sources":["../src/profiles.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* SIWX auth helper — generates SIWX (Sign-In With X / EIP-4361) headers for Run402 API.
|
|
3
3
|
* Uses @noble/curves (lighter than viem) for signing.
|
|
4
4
|
*/
|
|
5
|
-
import type {
|
|
5
|
+
import type { WalletData } from "./wallet.js";
|
|
6
6
|
export interface SIWxAuthHeaders {
|
|
7
7
|
"SIGN-IN-WITH-X": string;
|
|
8
8
|
}
|
|
@@ -22,7 +22,7 @@ interface SIWEMessageOpts {
|
|
|
22
22
|
resources?: string[];
|
|
23
23
|
}
|
|
24
24
|
export interface SIWxAuthOptions extends SIWEMessageOpts {
|
|
25
|
-
|
|
25
|
+
wallet: Pick<WalletData, "address" | "privateKey">;
|
|
26
26
|
type?: "eip191";
|
|
27
27
|
}
|
|
28
28
|
/**
|
|
@@ -33,10 +33,10 @@ export declare function formatSIWEMessage(opts: SIWEMessageOpts, address: string
|
|
|
33
33
|
export declare function buildSIWxAuthHeaders(opts: SIWxAuthOptions): SIWxAuthHeaders;
|
|
34
34
|
/**
|
|
35
35
|
* Get SIWX auth headers for the Run402 API.
|
|
36
|
-
* Returns null if no
|
|
36
|
+
* Returns null if no local wallet is configured.
|
|
37
37
|
*
|
|
38
38
|
* @param path - API path (e.g. "/projects/v1") used to build the SIWE uri field.
|
|
39
39
|
*/
|
|
40
|
-
export declare function
|
|
40
|
+
export declare function getWalletAuthHeaders(path: string, walletPath?: string): SIWxAuthHeaders | null;
|
|
41
41
|
export {};
|
|
42
|
-
//# sourceMappingURL=
|
|
42
|
+
//# sourceMappingURL=wallet-auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wallet-auth.d.ts","sourceRoot":"","sources":["../src/wallet-auth.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,WAAW,eAAe;IAC9B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAQzD;AA4CD,UAAU,eAAe;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,eAAgB,SAAQ,eAAe;IACtD,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,SAAS,GAAG,YAAY,CAAC,CAAC;IACnD,IAAI,CAAC,EAAE,QAAQ,CAAC;CACjB;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAsBhF;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,eAAe,GAAG,eAAe,CAwB3E;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CA4B9F"}
|