@capxul/sandbox 4.20.0-beta.6 → 4.20.0-beta.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/main.mjs +409 -25
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -15,7 +15,7 @@ npx @capxul/sandbox faucet send
|
|
|
15
15
|
vp run --filter @capxul/sandbox dev -- --help
|
|
16
16
|
```
|
|
17
17
|
|
|
18
|
-
`key create` uses the
|
|
18
|
+
`key create` uses the Coolify public staging Site endpoint and
|
|
19
19
|
needs no operator secret. `APP_ENV` does not retarget this public command; use
|
|
20
20
|
the returned key only with the staging tuple.
|
|
21
21
|
`faucet send` invokes the canonical Convex deployment and requires operator
|
package/dist/main.mjs
CHANGED
|
@@ -2021,6 +2021,28 @@ const toFunctionSelector = (fn) => slice(toSignatureHash(fn), 0, 4);
|
|
|
2021
2021
|
//#region ../../packages/config/src/org-payments.ts
|
|
2022
2022
|
/** Zodiac MultiSendCallOnly module on Base Sepolia. */
|
|
2023
2023
|
const MULTI_SEND_CALL_ONLY = "0x9641d764fc13c8b624c04430c7356c1c7c8102e2";
|
|
2024
|
+
/** Supported Organization permission identities, newest first. */
|
|
2025
|
+
const ORG_PERMISSION_IDENTITY_PROFILES = [{
|
|
2026
|
+
id: "zodiac-roles-2.1.1",
|
|
2027
|
+
moduleFactoryRuntimeKeccak256: "0x01623cbcf010a1c326230f1b2d5f48a66b440232ee49096102bc84967dc5f21e",
|
|
2028
|
+
mastercopy: "0xf2964ce6161ce0e75964fe7927ce114cb0b283d5",
|
|
2029
|
+
mastercopyRuntimeKeccak256: "0x471d8b3b419f1eb955230c0326c8812176df49bf3c7b414a563fda5a3c6c10b6",
|
|
2030
|
+
proxyRuntimeKeccak256: "0x248f9591f94c24c199ade3e73feb477cf02d387b2bea91f2f931a0deb094f163",
|
|
2031
|
+
multiSendUnwrapper: "0xb4cd4bb764c089f20da18700ce8bc5e49f369efd",
|
|
2032
|
+
multiSendUnwrapperRuntimeKeccak256: "0x1f6e088be5e6ef9d0fbe0547d3fa9a9e40d823433fd8a4449215b5663209a1eb"
|
|
2033
|
+
}, {
|
|
2034
|
+
id: "zodiac-roles-2.1.0",
|
|
2035
|
+
moduleFactoryRuntimeKeccak256: "0x01623cbcf010a1c326230f1b2d5f48a66b440232ee49096102bc84967dc5f21e",
|
|
2036
|
+
mastercopy: "0x9646fdad06d3e24444381f44362a3b0eb343d337",
|
|
2037
|
+
mastercopyRuntimeKeccak256: "0x87911cbc6aa0496e6bcb07dab2462b9c76daea130dede6dcc57d0adf307fa7ec",
|
|
2038
|
+
proxyRuntimeKeccak256: "0x9d4059abf46db50e4b48d9b6404b1f200cb5a1efeb3725be2de630a2a9001944",
|
|
2039
|
+
multiSendUnwrapper: "0x93b7fcbc63ed8a3a24b59e1c3e6649d50b7427c0",
|
|
2040
|
+
multiSendUnwrapperRuntimeKeccak256: "0x4d8d8608b70a6e2f40726b9dd74406bbf73e90cac58e23ee953e2b45ad7dc3df"
|
|
2041
|
+
}];
|
|
2042
|
+
const CURRENT_ORG_PERMISSION_IDENTITY = ORG_PERMISSION_IDENTITY_PROFILES[0];
|
|
2043
|
+
ORG_PERMISSION_IDENTITY_PROFILES[1];
|
|
2044
|
+
CURRENT_ORG_PERMISSION_IDENTITY.mastercopy;
|
|
2045
|
+
CURRENT_ORG_PERMISSION_IDENTITY.multiSendUnwrapper;
|
|
2024
2046
|
//#endregion
|
|
2025
2047
|
//#region ../../packages/config/src/capxul-payments-v2.ts
|
|
2026
2048
|
/** The exact compiled CapxulPaymentsV2 ABI. */
|
|
@@ -14174,10 +14196,12 @@ const CAPXUL_OPERATIONS = {
|
|
|
14174
14196
|
prepareOrganizationPaymentExecution: "moneyExecution.prepareOrganizationPaymentExecution",
|
|
14175
14197
|
preparePaymentExecution: "moneyExecution.preparePaymentExecution",
|
|
14176
14198
|
preparePaymentLifecycleExecution: "moneyExecution.preparePaymentLifecycleExecution",
|
|
14199
|
+
prepareInvitationConfiguration: "moneyExecution.prepareInvitationConfiguration",
|
|
14177
14200
|
preparePermissionExecution: "moneyExecution.preparePermissionExecution",
|
|
14178
14201
|
recoverSubmissionClaims: "moneyExecution.recoverSubmissionClaims",
|
|
14179
14202
|
submit: "moneyExecution.submit",
|
|
14180
14203
|
submitPaymentCommandExecution: "moneyExecution.submitPaymentCommandExecution",
|
|
14204
|
+
submitInvitationConfigurationExecution: "moneyExecution.submitInvitationConfigurationExecution",
|
|
14181
14205
|
submitPaymentExecution: "moneyExecution.submitPaymentExecution",
|
|
14182
14206
|
submitPermissionExecution: "moneyExecution.submitPermissionExecution"
|
|
14183
14207
|
},
|
|
@@ -14199,20 +14223,52 @@ const CAPXUL_OPERATIONS = {
|
|
|
14199
14223
|
completePerson: "onboarding.completePerson"
|
|
14200
14224
|
},
|
|
14201
14225
|
org: {
|
|
14202
|
-
acceptInvitations: "org.acceptInvitations",
|
|
14203
14226
|
account: { get: "org.account.get" },
|
|
14204
|
-
activateMember: "org.activateMember",
|
|
14205
14227
|
auditLog: "org.auditLog",
|
|
14206
14228
|
confirmBootstrap: "org.confirmBootstrap",
|
|
14207
14229
|
createOrg: "org.createOrg",
|
|
14208
14230
|
create: "org.create",
|
|
14209
|
-
|
|
14231
|
+
/**
|
|
14232
|
+
* §11: the consent mutation reports `org_invite_accepted` through its own
|
|
14233
|
+
* scheduled emitter. It is named for the emit, not the acceptance, because
|
|
14234
|
+
* the interactive acceptance itself owns `org.invitations.accept`.
|
|
14235
|
+
*/
|
|
14236
|
+
emitInviteAccepted: "org.emitInviteAccepted",
|
|
14210
14237
|
emitInviteProgressed: "org.emitInviteProgressed",
|
|
14211
14238
|
expireInvitations: "org.expireInvitations",
|
|
14212
14239
|
getLifecycle: "org.getLifecycle",
|
|
14213
14240
|
getProofReceipt: "org.getProofReceipt",
|
|
14214
14241
|
invite: "org.invite",
|
|
14215
|
-
|
|
14242
|
+
/** D8 invitation lifecycle: preview, own list, read, and the four transitions. */
|
|
14243
|
+
invitations: {
|
|
14244
|
+
/** The exact grantee's consent commit (§8): one accepted digest, once. */
|
|
14245
|
+
accept: "org.invitations.accept",
|
|
14246
|
+
/**
|
|
14247
|
+
* The authoring write. It is named `authorize`, not `invite`, because the
|
|
14248
|
+
* backend already uses `org.invitations.invite` as a refusal label and
|
|
14249
|
+
* `lint:telemetry-spine` refuses a label that collides with an operation.
|
|
14250
|
+
*/
|
|
14251
|
+
authorize: "org.invitations.authorize",
|
|
14252
|
+
cancel: "org.invitations.cancel",
|
|
14253
|
+
decline: "org.invitations.decline",
|
|
14254
|
+
get: "org.invitations.get",
|
|
14255
|
+
list: "org.invitations.list",
|
|
14256
|
+
/**
|
|
14257
|
+
* The Admin-scoped Organization list. It is named `listScoped`, not
|
|
14258
|
+
* `list`, because the own-offer list already owns `org.invitations.list`.
|
|
14259
|
+
*/
|
|
14260
|
+
listScoped: "org.invitations.listScoped",
|
|
14261
|
+
/**
|
|
14262
|
+
* The authoring write's inner hops: the SDK drives the backend's existing
|
|
14263
|
+
* prepare/submit pair, and these names label the two Convex calls. The
|
|
14264
|
+
* owning `capxul_sdk_operation` record stays `org.invitations.authorize`.
|
|
14265
|
+
*/
|
|
14266
|
+
prepareConfiguration: "org.invitations.prepareConfiguration",
|
|
14267
|
+
preview: "org.invitations.preview",
|
|
14268
|
+
resend: "org.invitations.resend",
|
|
14269
|
+
retry: "org.invitations.retry",
|
|
14270
|
+
submitConfiguration: "org.invitations.submitConfiguration"
|
|
14271
|
+
},
|
|
14216
14272
|
list: "org.list",
|
|
14217
14273
|
load: "org.load",
|
|
14218
14274
|
me: "org.me",
|
|
@@ -14271,7 +14327,6 @@ const CAPXUL_OPERATIONS = {
|
|
|
14271
14327
|
},
|
|
14272
14328
|
recordFailure: "org.recordFailure",
|
|
14273
14329
|
recordProgress: "org.recordProgress",
|
|
14274
|
-
resendInviteToken: "org.resendInviteToken",
|
|
14275
14330
|
resumeBootstrapSubmission: "org.resumeBootstrapSubmission",
|
|
14276
14331
|
retry: "org.retry",
|
|
14277
14332
|
retrySetup: "org.retrySetup",
|
|
@@ -14288,7 +14343,6 @@ const CAPXUL_OPERATIONS = {
|
|
|
14288
14343
|
retry: "organizationPayments.retry"
|
|
14289
14344
|
},
|
|
14290
14345
|
organizationSetup: { getProofReceipt: "organizationSetup.getProofReceipt" },
|
|
14291
|
-
organizations: { detectAndAcceptPendingInvitations: "orgs.detectAndAcceptPendingInvitations" },
|
|
14292
14346
|
payments: {
|
|
14293
14347
|
cancel: "payments.cancel",
|
|
14294
14348
|
claim: "payments.claim",
|
|
@@ -14326,6 +14380,7 @@ const CAPXUL_OPERATIONS = {
|
|
|
14326
14380
|
terms: "payroll.terms"
|
|
14327
14381
|
},
|
|
14328
14382
|
permission: {
|
|
14383
|
+
verifyInvitationConfiguration: "permission.verifyInvitationConfiguration",
|
|
14329
14384
|
command: "permission.command",
|
|
14330
14385
|
retryVerification: "permission.retryVerification",
|
|
14331
14386
|
verify: "permission.verify",
|
|
@@ -14862,6 +14917,11 @@ const OrgCreateFailedProps = Struct({
|
|
|
14862
14917
|
const OrgInviteSentProps = Struct({
|
|
14863
14918
|
...TelemetryEnvelopeProps,
|
|
14864
14919
|
org_id: OptionalOrgId,
|
|
14920
|
+
invitation_id: OptionalString,
|
|
14921
|
+
generation: OptionalString,
|
|
14922
|
+
command_id: OptionalString,
|
|
14923
|
+
subject_party_id: OptionalString,
|
|
14924
|
+
persisted_at: OptionalEpochMs,
|
|
14865
14925
|
email_domain: OptionalString,
|
|
14866
14926
|
role: OptionalString,
|
|
14867
14927
|
status: OptionalString
|
|
@@ -14869,6 +14929,11 @@ const OrgInviteSentProps = Struct({
|
|
|
14869
14929
|
const OrgInviteAcceptedProps = Struct({
|
|
14870
14930
|
...TelemetryEnvelopeProps,
|
|
14871
14931
|
org_id: OptionalOrgId,
|
|
14932
|
+
invitation_id: OptionalString,
|
|
14933
|
+
accepted_at: OptionalEpochMs,
|
|
14934
|
+
generation: OptionalString,
|
|
14935
|
+
command_id: OptionalString,
|
|
14936
|
+
subject_party_id: OptionalString,
|
|
14872
14937
|
role: OptionalString,
|
|
14873
14938
|
status: OptionalString
|
|
14874
14939
|
});
|
|
@@ -14876,6 +14941,7 @@ const OrgInviteExpiredProps = Struct({
|
|
|
14876
14941
|
...TelemetryEnvelopeProps,
|
|
14877
14942
|
org_id: OptionalOrgId,
|
|
14878
14943
|
email_domain: OptionalString,
|
|
14944
|
+
invitation_id: OptionalString,
|
|
14879
14945
|
reason: OptionalString,
|
|
14880
14946
|
role: OptionalString,
|
|
14881
14947
|
status: OptionalString
|
|
@@ -15028,9 +15094,24 @@ const PermissionMirrorVerificationProps = Struct({
|
|
|
15028
15094
|
"applied",
|
|
15029
15095
|
"replayed",
|
|
15030
15096
|
"conflicting_replay",
|
|
15031
|
-
"revision_mismatch"
|
|
15097
|
+
"revision_mismatch",
|
|
15098
|
+
"cleanup_required",
|
|
15099
|
+
"not_applied",
|
|
15100
|
+
"application_failure",
|
|
15101
|
+
"mismatch",
|
|
15102
|
+
"refused"
|
|
15032
15103
|
])),
|
|
15104
|
+
command_kind: optional(Literals(["invitation_configuration", "invitation_eoa"])),
|
|
15033
15105
|
command_id: OptionalString,
|
|
15106
|
+
invitation_id: OptionalString,
|
|
15107
|
+
generation: OptionalString,
|
|
15108
|
+
purpose: optional(Literals([
|
|
15109
|
+
"configure",
|
|
15110
|
+
"grant",
|
|
15111
|
+
"disable",
|
|
15112
|
+
"compensate"
|
|
15113
|
+
])),
|
|
15114
|
+
$insert_id: OptionalString,
|
|
15034
15115
|
/**
|
|
15035
15116
|
* #1961 R03. The authorized stored row names the Permission it changed; the
|
|
15036
15117
|
* verified receipt names the chain facts that prove it. Every field is
|
|
@@ -15417,6 +15498,13 @@ const CLI_COMMAND_NAMES = [
|
|
|
15417
15498
|
"auth.profile",
|
|
15418
15499
|
"auth.status",
|
|
15419
15500
|
"auth.logout",
|
|
15501
|
+
"contact",
|
|
15502
|
+
"contact.list",
|
|
15503
|
+
"contact.get",
|
|
15504
|
+
"contact.add",
|
|
15505
|
+
"contact.label",
|
|
15506
|
+
"contact.hide",
|
|
15507
|
+
"contact.unhide",
|
|
15420
15508
|
"org",
|
|
15421
15509
|
CAPXUL_OPERATIONS.org.list,
|
|
15422
15510
|
"org.use",
|
|
@@ -15425,6 +15513,24 @@ const CLI_COMMAND_NAMES = [
|
|
|
15425
15513
|
CAPXUL_OPERATIONS.org.members,
|
|
15426
15514
|
"org.member",
|
|
15427
15515
|
"org.member.get",
|
|
15516
|
+
"org.member.invite",
|
|
15517
|
+
"org.contact",
|
|
15518
|
+
"org.contact.list",
|
|
15519
|
+
"org.contact.get",
|
|
15520
|
+
"org.contact.add",
|
|
15521
|
+
"org.contact.label",
|
|
15522
|
+
"org.contact.hide",
|
|
15523
|
+
"org.contact.unhide",
|
|
15524
|
+
CAPXUL_OPERATIONS.org.invite,
|
|
15525
|
+
"org.invite.list",
|
|
15526
|
+
"org.invite.get",
|
|
15527
|
+
"org.invite.wait",
|
|
15528
|
+
"org.invite.review",
|
|
15529
|
+
"org.invite.accept",
|
|
15530
|
+
"org.invite.decline",
|
|
15531
|
+
"org.invite.cancel",
|
|
15532
|
+
"org.invite.resend",
|
|
15533
|
+
"org.invite.retry",
|
|
15428
15534
|
"org.wait",
|
|
15429
15535
|
CAPXUL_OPERATIONS.org.create,
|
|
15430
15536
|
CAPXUL_OPERATIONS.org.retry,
|
|
@@ -15435,7 +15541,8 @@ const CLI_CAPABILITIES = [
|
|
|
15435
15541
|
"diagnostics",
|
|
15436
15542
|
"collection",
|
|
15437
15543
|
"authentication",
|
|
15438
|
-
"organization"
|
|
15544
|
+
"organization",
|
|
15545
|
+
"contacts"
|
|
15439
15546
|
];
|
|
15440
15547
|
const CLI_INVOCATION_KINDS = [
|
|
15441
15548
|
"command",
|
|
@@ -15677,6 +15784,7 @@ Struct({
|
|
|
15677
15784
|
...TelemetryEnvelopeProps,
|
|
15678
15785
|
organization_id: OrgIdTelemetrySchema,
|
|
15679
15786
|
progress: Literals([
|
|
15787
|
+
"configuration_authorized",
|
|
15680
15788
|
"account_ready",
|
|
15681
15789
|
"permission_applied",
|
|
15682
15790
|
"membership_activated",
|
|
@@ -15684,6 +15792,9 @@ Struct({
|
|
|
15684
15792
|
]),
|
|
15685
15793
|
/** The invited Party. The initiating actor stays on the envelope's identity. */
|
|
15686
15794
|
member_party_id: String$1,
|
|
15795
|
+
invitation_id: optional(String$1),
|
|
15796
|
+
generation: optional(String$1),
|
|
15797
|
+
command_id: optional(String$1),
|
|
15687
15798
|
occurred_at: Number$1
|
|
15688
15799
|
})
|
|
15689
15800
|
});
|
|
@@ -15977,8 +16088,10 @@ const CAPXUL_FUNCTIONS = {
|
|
|
15977
16088
|
"movement/annotations": { overlay: "movement/annotations:overlay" },
|
|
15978
16089
|
"moneyExecution/actions": {
|
|
15979
16090
|
abandonPaymentExecution: "moneyExecution/actions:abandonPaymentExecution",
|
|
16091
|
+
prepareInvitationConfiguration: "moneyExecution/actions:prepareInvitationConfiguration",
|
|
15980
16092
|
preparePermissionExecution: "moneyExecution/actions:preparePermissionExecution",
|
|
15981
16093
|
preparePaymentExecution: "moneyExecution/actions:preparePaymentExecution",
|
|
16094
|
+
submitInvitationConfigurationExecution: "moneyExecution/actions:submitInvitationConfigurationExecution",
|
|
15982
16095
|
submitPermissionExecution: "moneyExecution/actions:submitPermissionExecution",
|
|
15983
16096
|
submitPaymentExecution: "moneyExecution/actions:submitPaymentExecution"
|
|
15984
16097
|
},
|
|
@@ -15995,8 +16108,6 @@ const CAPXUL_FUNCTIONS = {
|
|
|
15995
16108
|
},
|
|
15996
16109
|
"org/actions": {
|
|
15997
16110
|
confirmBootstrap: "org/actions:confirmBootstrap",
|
|
15998
|
-
detectAndAcceptPendingInvitations: "org/actions:detectAndAcceptPendingInvitations",
|
|
15999
|
-
inviteMember: "org/actions:inviteMember",
|
|
16000
16111
|
prepareBootstrap: "org/actions:prepareBootstrap",
|
|
16001
16112
|
prepareFounderAccount: "org/actions:prepareFounderAccount",
|
|
16002
16113
|
readTreasury: "org/actions:readTreasury",
|
|
@@ -16027,16 +16138,25 @@ const CAPXUL_FUNCTIONS = {
|
|
|
16027
16138
|
startOrResume: "org/lifecycle:startOrResume"
|
|
16028
16139
|
},
|
|
16029
16140
|
"org/mutations": {
|
|
16141
|
+
accept: "org/mutations:accept",
|
|
16142
|
+
cancel: "org/mutations:cancel",
|
|
16030
16143
|
createOrg: "org/mutations:createOrg",
|
|
16031
|
-
|
|
16144
|
+
decline: "org/mutations:decline",
|
|
16145
|
+
invite: "org/mutations:invite",
|
|
16146
|
+
resend: "org/mutations:resend",
|
|
16147
|
+
retry: "org/mutations:retry"
|
|
16032
16148
|
},
|
|
16033
16149
|
"org/queries": {
|
|
16150
|
+
getInvitation: "org/queries:getInvitation",
|
|
16034
16151
|
listAll: "org/queries:listAll",
|
|
16152
|
+
listInvitations: "org/queries:listInvitations",
|
|
16035
16153
|
listMembersByOrgId: "org/queries:listMembersByOrgId",
|
|
16036
16154
|
listMine: "org/queries:listMine",
|
|
16155
|
+
listMyInvitations: "org/queries:listMyInvitations",
|
|
16037
16156
|
listRolesByOrgId: "org/queries:listRolesByOrgId",
|
|
16038
16157
|
loadByOrgId: "org/queries:loadByOrgId",
|
|
16039
|
-
me: "org/queries:me"
|
|
16158
|
+
me: "org/queries:me",
|
|
16159
|
+
previewInvite: "org/queries:previewInvite"
|
|
16040
16160
|
},
|
|
16041
16161
|
"smartAccount/actions": {
|
|
16042
16162
|
claim: "smartAccount/actions:claim",
|
|
@@ -16972,6 +17092,93 @@ const EventRefSchema = Struct({
|
|
|
16972
17092
|
topic0: Bytes32Schema,
|
|
16973
17093
|
dataHash: Bytes32Schema
|
|
16974
17094
|
});
|
|
17095
|
+
const InvitationEoaReceiptSchema = Struct({
|
|
17096
|
+
kind: Literal("invitation_eoa"),
|
|
17097
|
+
chainId: BaseSepoliaChainIdSchema,
|
|
17098
|
+
transactionHash: TxHashSchema,
|
|
17099
|
+
blockNumber: BlockNumberSchema,
|
|
17100
|
+
blockHash: Bytes32Schema,
|
|
17101
|
+
sender: AddressSchema,
|
|
17102
|
+
nonce: String$1.pipe(refine((value) => /^(0|[1-9][0-9]*)$/.test(value)))
|
|
17103
|
+
});
|
|
17104
|
+
const PermissionEventRefSchema = Struct({
|
|
17105
|
+
receipt: Union([Struct({
|
|
17106
|
+
kind: Literal("user_operation"),
|
|
17107
|
+
...ReceiptRefSchema.fields
|
|
17108
|
+
}), InvitationEoaReceiptSchema]),
|
|
17109
|
+
emitter: AddressSchema,
|
|
17110
|
+
transactionIndex: LogIndexSchema,
|
|
17111
|
+
logIndex: LogIndexSchema,
|
|
17112
|
+
topic0: Bytes32Schema,
|
|
17113
|
+
dataHash: Bytes32Schema
|
|
17114
|
+
});
|
|
17115
|
+
Union([
|
|
17116
|
+
Struct({
|
|
17117
|
+
status: Literal("pending"),
|
|
17118
|
+
reason: Literal("receipt_missing")
|
|
17119
|
+
}),
|
|
17120
|
+
Struct({
|
|
17121
|
+
status: Literal("provider_failure"),
|
|
17122
|
+
retryable: Literal(true)
|
|
17123
|
+
}),
|
|
17124
|
+
Struct({
|
|
17125
|
+
status: Literal("mismatch"),
|
|
17126
|
+
code: Literals([
|
|
17127
|
+
"wrong_chain",
|
|
17128
|
+
"wrong_sender",
|
|
17129
|
+
"wrong_transaction",
|
|
17130
|
+
"failed_transaction",
|
|
17131
|
+
"non_canonical_block",
|
|
17132
|
+
"wrong_contract_identity",
|
|
17133
|
+
"missing_event",
|
|
17134
|
+
"extra_authority_event",
|
|
17135
|
+
"wrong_fact_tuple",
|
|
17136
|
+
"wrong_state",
|
|
17137
|
+
"conflicting_replay"
|
|
17138
|
+
]),
|
|
17139
|
+
attemptTransactionHash: optional(TxHashSchema),
|
|
17140
|
+
receipt: optional(InvitationEoaReceiptSchema)
|
|
17141
|
+
}),
|
|
17142
|
+
Struct({
|
|
17143
|
+
status: Literal("verified"),
|
|
17144
|
+
commandId: PaymentCommandIdSchema,
|
|
17145
|
+
receipt: InvitationEoaReceiptSchema,
|
|
17146
|
+
events: ArraySchema(PermissionEventRefSchema),
|
|
17147
|
+
factsHash: Bytes32Schema
|
|
17148
|
+
})
|
|
17149
|
+
]);
|
|
17150
|
+
/**
|
|
17151
|
+
* One stored `setAllowance` call inside a command's expected authority set.
|
|
17152
|
+
*
|
|
17153
|
+
* The pinned Roles module emits `SetAllowance` as *post-state*, not as the call
|
|
17154
|
+
* arguments: `maxRefill = 0` becomes `type(uint128).max`, and `timestamp = 0`
|
|
17155
|
+
* becomes the receipt block's timestamp. A hash over the call arguments can
|
|
17156
|
+
* therefore never match that receipt. `index` names the entry in
|
|
17157
|
+
* `expectedAuthorityEvents` the call produced, and `data` is the call's own
|
|
17158
|
+
* calldata, so the verifier can rebuild the one hash the module actually emits.
|
|
17159
|
+
* The rule is pinned by `test:invitation-conformance`.
|
|
17160
|
+
*/
|
|
17161
|
+
const AllowanceExpectationSchema = Struct({
|
|
17162
|
+
index: nonNegativeInteger("index"),
|
|
17163
|
+
data: String$1.pipe(refine((value) => /^0x[0-9a-fA-F]+$/u.test(value), { message: "data must be 0x-prefixed hex" }))
|
|
17164
|
+
});
|
|
17165
|
+
Struct({
|
|
17166
|
+
commandId: PaymentCommandIdSchema,
|
|
17167
|
+
userOpHash: Bytes32Schema,
|
|
17168
|
+
generationHash: Bytes32Schema,
|
|
17169
|
+
chainId: BaseSepoliaChainIdSchema,
|
|
17170
|
+
organizationSafe: SafeAddressSchema,
|
|
17171
|
+
rolesModule: ModuleAddressSchema,
|
|
17172
|
+
userOpSenderSafe: SafeAddressSchema,
|
|
17173
|
+
expectedAuthorityEvents: ArraySchema(Bytes32Schema),
|
|
17174
|
+
/**
|
|
17175
|
+
* Absent means "no normalization": every expected hash is compared as stored.
|
|
17176
|
+
* A command whose set contains `setAllowance` then refuses (`wrong_fact_tuple`)
|
|
17177
|
+
* rather than passing on a weakened proof, so an incomplete caller fails
|
|
17178
|
+
* closed.
|
|
17179
|
+
*/
|
|
17180
|
+
allowanceExpectations: optional(ArraySchema(AllowanceExpectationSchema))
|
|
17181
|
+
});
|
|
16975
17182
|
const PermissionOperationSchema = Literals([
|
|
16976
17183
|
"create",
|
|
16977
17184
|
"change",
|
|
@@ -17014,7 +17221,9 @@ Struct({
|
|
|
17014
17221
|
originatingAuthUserId: optional(String$1),
|
|
17015
17222
|
originatingObservationContext: optional(Unknown)
|
|
17016
17223
|
}),
|
|
17017
|
-
userOpHash: Bytes32Schema
|
|
17224
|
+
userOpHash: Bytes32Schema,
|
|
17225
|
+
/** The stored `setAllowance` calls of this command's own expectation. */
|
|
17226
|
+
allowanceExpectations: optional(ArraySchema(AllowanceExpectationSchema))
|
|
17018
17227
|
});
|
|
17019
17228
|
Union([
|
|
17020
17229
|
Struct({
|
|
@@ -17850,6 +18059,27 @@ Struct({
|
|
|
17850
18059
|
digest: Bytes32Schema,
|
|
17851
18060
|
value: PermissionResourceSchema
|
|
17852
18061
|
});
|
|
18062
|
+
Struct({
|
|
18063
|
+
commandId: PaymentCommandIdSchema,
|
|
18064
|
+
signerAddress: AddressSchema
|
|
18065
|
+
});
|
|
18066
|
+
Struct({
|
|
18067
|
+
executionId: MoneyExecutionIdSchema,
|
|
18068
|
+
commandId: PaymentCommandIdSchema,
|
|
18069
|
+
orgId: nonEmpty("orgId"),
|
|
18070
|
+
invitationId: nonEmpty("invitationId"),
|
|
18071
|
+
generationHash: Bytes32Schema,
|
|
18072
|
+
chainId: BaseSepoliaChainIdSchema,
|
|
18073
|
+
signerAddress: AddressSchema,
|
|
18074
|
+
userOpSenderSafe: SafeAddressSchema,
|
|
18075
|
+
digest: Bytes32Schema
|
|
18076
|
+
});
|
|
18077
|
+
Struct({
|
|
18078
|
+
status: Literal("submitted"),
|
|
18079
|
+
executionId: MoneyExecutionIdSchema,
|
|
18080
|
+
commandId: PaymentCommandIdSchema,
|
|
18081
|
+
userOpHash: Bytes32Schema
|
|
18082
|
+
});
|
|
17853
18083
|
Struct({
|
|
17854
18084
|
status: Literal("submitted"),
|
|
17855
18085
|
executionId: MoneyExecutionIdSchema,
|
|
@@ -18354,6 +18584,158 @@ const CurrentPolicySchema = Union([Struct({
|
|
|
18354
18584
|
actions: NonEmptyArray(Literals(["pay", "commitments"]))
|
|
18355
18585
|
})
|
|
18356
18586
|
}), Struct({ type: Literal("managePeople") })]);
|
|
18587
|
+
const BudgetIntentSchema = CurrentPolicySchema.pipe(refine((value) => {
|
|
18588
|
+
if (value.type !== "budget") return false;
|
|
18589
|
+
const { actions, recipients } = value.scope;
|
|
18590
|
+
if (new Set(actions).size !== actions.length) return false;
|
|
18591
|
+
return recipients.type === "anyone" || recipients.accounts.length >= 1 && recipients.accounts.length <= 32 && new Set(recipients.accounts).size === recipients.accounts.length;
|
|
18592
|
+
}));
|
|
18593
|
+
const InvitationIdSchema = NonEmptyString;
|
|
18594
|
+
Struct({
|
|
18595
|
+
...Struct({ invitationId: InvitationIdSchema }).fields,
|
|
18596
|
+
expectedOfferDigest: Bytes32Schema
|
|
18597
|
+
});
|
|
18598
|
+
/** The requested grantee of one invitation. */
|
|
18599
|
+
const GranteeRefSchema = Union([Struct({
|
|
18600
|
+
type: Literal("email"),
|
|
18601
|
+
email: NonEmptyString
|
|
18602
|
+
}), Struct({
|
|
18603
|
+
type: Literal("account"),
|
|
18604
|
+
accountId: AccountIdSchema
|
|
18605
|
+
})]);
|
|
18606
|
+
Struct({
|
|
18607
|
+
requestKey: String$1.pipe(refine((value) => /^[\x20-\x7e]{1,128}$/.test(value))),
|
|
18608
|
+
to: GranteeRefSchema,
|
|
18609
|
+
grants: ArraySchema(Union([
|
|
18610
|
+
Struct({
|
|
18611
|
+
type: Literal("budget"),
|
|
18612
|
+
budgetId: PermissionIdSchema
|
|
18613
|
+
}),
|
|
18614
|
+
Struct({
|
|
18615
|
+
type: Literal("managePeople"),
|
|
18616
|
+
permissionId: PermissionIdSchema
|
|
18617
|
+
}),
|
|
18618
|
+
Struct({
|
|
18619
|
+
type: Literal("new_budget"),
|
|
18620
|
+
label: String$1.pipe(refine((value) => value.trim().length >= 1 && value.trim().length <= 128)),
|
|
18621
|
+
intent: BudgetIntentSchema
|
|
18622
|
+
})
|
|
18623
|
+
]))
|
|
18624
|
+
}).pipe(refine((value) => {
|
|
18625
|
+
if (value.grants.length < 1 || value.grants.length > 16) return false;
|
|
18626
|
+
const existing = value.grants.flatMap((grant) => grant.type === "new_budget" ? [] : [grant.type === "budget" ? grant.budgetId : grant.permissionId]);
|
|
18627
|
+
return new Set(existing).size === existing.length && value.grants.filter((grant) => grant.type === "new_budget").length <= 4;
|
|
18628
|
+
}));
|
|
18629
|
+
const InvitationPhaseSchema = Literals([
|
|
18630
|
+
"authorizing",
|
|
18631
|
+
"pending",
|
|
18632
|
+
"pending_grant",
|
|
18633
|
+
"active",
|
|
18634
|
+
"revoking",
|
|
18635
|
+
"declined",
|
|
18636
|
+
"cancelled",
|
|
18637
|
+
"expired",
|
|
18638
|
+
"revoked"
|
|
18639
|
+
]);
|
|
18640
|
+
const EndingReasonSchema = Literals([
|
|
18641
|
+
"declined",
|
|
18642
|
+
"cancelled",
|
|
18643
|
+
"expired",
|
|
18644
|
+
"revoked"
|
|
18645
|
+
]);
|
|
18646
|
+
const OfferedAuthoritySchema = Union([Struct({
|
|
18647
|
+
type: Literal("budget"),
|
|
18648
|
+
budgetId: NonEmptyString.pipe(refine((value) => value.length > 0)),
|
|
18649
|
+
label: String$1,
|
|
18650
|
+
policy: BudgetIntentSchema,
|
|
18651
|
+
policyDigest: Bytes32Schema
|
|
18652
|
+
}), Struct({
|
|
18653
|
+
type: Literal("managePeople"),
|
|
18654
|
+
permissionId: PermissionIdSchema,
|
|
18655
|
+
label: String$1
|
|
18656
|
+
})]);
|
|
18657
|
+
const NewBudgetOfferSchema = Struct({
|
|
18658
|
+
type: Literal("new_budget"),
|
|
18659
|
+
label: String$1,
|
|
18660
|
+
policy: BudgetIntentSchema,
|
|
18661
|
+
policyDigest: Bytes32Schema
|
|
18662
|
+
});
|
|
18663
|
+
const PreviewGranteeSchema = Struct({
|
|
18664
|
+
partyId: NullOr(PartyIdSchema),
|
|
18665
|
+
accountId: NullOr(AccountIdSchema),
|
|
18666
|
+
safeAddress: AddressSchema,
|
|
18667
|
+
accountReady: NullOr(Boolean)
|
|
18668
|
+
});
|
|
18669
|
+
Struct({
|
|
18670
|
+
orgId: NonEmptyString.pipe(refine((value) => value.length > 0)),
|
|
18671
|
+
grantee: PreviewGranteeSchema,
|
|
18672
|
+
grants: ArraySchema(Union([OfferedAuthoritySchema, NewBudgetOfferSchema])),
|
|
18673
|
+
existingAssignments: ArraySchema(PermissionAssignmentIdSchema),
|
|
18674
|
+
includesManagement: Boolean,
|
|
18675
|
+
observedAt: EpochMsSchema
|
|
18676
|
+
});
|
|
18677
|
+
Struct({
|
|
18678
|
+
cursor: optional(NonEmptyString),
|
|
18679
|
+
limit: optional(Number$1.pipe(refine((value) => Number.isSafeInteger(value) && value >= 1 && value <= 100))),
|
|
18680
|
+
phases: optional(ArraySchema(InvitationPhaseSchema).pipe(refine((value) => new Set(value).size === value.length)))
|
|
18681
|
+
});
|
|
18682
|
+
const InvitationRecoverySchema = Struct({
|
|
18683
|
+
actor: Literals([
|
|
18684
|
+
"system",
|
|
18685
|
+
"invitee",
|
|
18686
|
+
"admin"
|
|
18687
|
+
]),
|
|
18688
|
+
action: Literals([
|
|
18689
|
+
"wait",
|
|
18690
|
+
"retry",
|
|
18691
|
+
"review_offer",
|
|
18692
|
+
"reauthorize"
|
|
18693
|
+
]),
|
|
18694
|
+
reason: Literals([
|
|
18695
|
+
"configuration_pending",
|
|
18696
|
+
"grant_pending",
|
|
18697
|
+
"provider_unavailable",
|
|
18698
|
+
"policy_changed",
|
|
18699
|
+
"cleanup_pending",
|
|
18700
|
+
"signer_unavailable"
|
|
18701
|
+
])
|
|
18702
|
+
});
|
|
18703
|
+
Struct({
|
|
18704
|
+
items: ArraySchema(Struct({
|
|
18705
|
+
id: InvitationIdSchema,
|
|
18706
|
+
orgId: NonEmptyString.pipe(refine((value) => value.length > 0)),
|
|
18707
|
+
organizationName: String$1,
|
|
18708
|
+
grantee: Struct({
|
|
18709
|
+
partyId: PartyIdSchema,
|
|
18710
|
+
accountId: NullOr(AccountIdSchema),
|
|
18711
|
+
safeAddress: AddressSchema,
|
|
18712
|
+
accountReady: NullOr(Boolean)
|
|
18713
|
+
}),
|
|
18714
|
+
phase: InvitationPhaseSchema,
|
|
18715
|
+
grants: ArraySchema(Union([Struct({
|
|
18716
|
+
type: Literal("budget"),
|
|
18717
|
+
budgetId: NonEmptyString.pipe(refine((value) => value.length > 0))
|
|
18718
|
+
}), Struct({
|
|
18719
|
+
type: Literal("managePeople"),
|
|
18720
|
+
permissionId: PermissionIdSchema
|
|
18721
|
+
})])),
|
|
18722
|
+
offers: ArraySchema(OfferedAuthoritySchema),
|
|
18723
|
+
recovery: NullOr(InvitationRecoverySchema),
|
|
18724
|
+
offerDigest: Bytes32Schema,
|
|
18725
|
+
authorizedAt: NullOr(EpochMsSchema),
|
|
18726
|
+
acceptedAt: NullOr(EpochMsSchema),
|
|
18727
|
+
expiresAt: NullOr(EpochMsSchema),
|
|
18728
|
+
commandId: NullOr(PaymentCommandIdSchema),
|
|
18729
|
+
endingReason: NullOr(EndingReasonSchema),
|
|
18730
|
+
delivery: Literals([
|
|
18731
|
+
"not_confirmed",
|
|
18732
|
+
"sent",
|
|
18733
|
+
"failed"
|
|
18734
|
+
])
|
|
18735
|
+
})),
|
|
18736
|
+
nextCursor: NullOr(NonEmptyString),
|
|
18737
|
+
observedAt: EpochMsSchema
|
|
18738
|
+
});
|
|
18357
18739
|
const ActiveBudgetSchema = Struct({
|
|
18358
18740
|
id: PermissionIdSchema,
|
|
18359
18741
|
label: String$1,
|
|
@@ -18627,7 +19009,7 @@ function statusFromAccount(account, requirement) {
|
|
|
18627
19009
|
}
|
|
18628
19010
|
makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/addressBook"].list), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/addressBook"].get), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/addressBook"].add), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/addressBook"].hide), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/addressBook"].unhide), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/addressBook"].label), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/requestsInbox"].issue), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/requestsInbox"].list), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/requestsInbox"].get), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/requestsInbox"].cancel), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/requestsInbox"].inboxList), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/requestsInbox"].approve), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/requestsInbox"].decline);
|
|
18629
19011
|
makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/queries"].me), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/queries"].depositInstructions), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/queries"].resolveRecipient), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/destinations"].add), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/destinations"].list), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/destinations"].remove), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/queries"].listPayments), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/queries"].getPayment), makeFunctionReference(CAPXUL_FUNCTIONS["movement/activity"].list), makeFunctionReference(CAPXUL_FUNCTIONS["movement/activity"].summary), makeFunctionReference(CAPXUL_FUNCTIONS["movement/activity"].get), makeFunctionReference(CAPXUL_FUNCTIONS["movement/activity"].annotate), makeFunctionReference(CAPXUL_FUNCTIONS["movement/annotations"].overlay), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/queries"].getPaymentDocument), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/queries"].verifyPaymentDocument), makeFunctionReference(CAPXUL_FUNCTIONS["financialOps/queries"].renderStoredDocument);
|
|
18630
|
-
makeFunctionReference(CAPXUL_FUNCTIONS["moneyExecution/actions"].abandonPaymentExecution), makeFunctionReference(CAPXUL_FUNCTIONS["moneyExecution/actions"].preparePermissionExecution), makeFunctionReference(CAPXUL_FUNCTIONS["moneyExecution/actions"].preparePaymentExecution), makeFunctionReference(CAPXUL_FUNCTIONS["moneyExecution/paymentCommandActions"].prepareOrganizationPaymentExecution), makeFunctionReference(CAPXUL_FUNCTIONS["moneyExecution/paymentCommandActions"].preparePaymentLifecycleExecution), makeFunctionReference(CAPXUL_FUNCTIONS["moneyExecution/actions"].submitPaymentExecution), makeFunctionReference(CAPXUL_FUNCTIONS["moneyExecution/actions"].submitPermissionExecution), makeFunctionReference(CAPXUL_FUNCTIONS["moneyExecution/paymentCommandActions"].submitPaymentCommandExecution);
|
|
19012
|
+
makeFunctionReference(CAPXUL_FUNCTIONS["moneyExecution/actions"].abandonPaymentExecution), makeFunctionReference(CAPXUL_FUNCTIONS["moneyExecution/actions"].prepareInvitationConfiguration), makeFunctionReference(CAPXUL_FUNCTIONS["moneyExecution/actions"].preparePermissionExecution), makeFunctionReference(CAPXUL_FUNCTIONS["moneyExecution/actions"].preparePaymentExecution), makeFunctionReference(CAPXUL_FUNCTIONS["moneyExecution/paymentCommandActions"].prepareOrganizationPaymentExecution), makeFunctionReference(CAPXUL_FUNCTIONS["moneyExecution/paymentCommandActions"].preparePaymentLifecycleExecution), makeFunctionReference(CAPXUL_FUNCTIONS["moneyExecution/actions"].submitPaymentExecution), makeFunctionReference(CAPXUL_FUNCTIONS["moneyExecution/actions"].submitInvitationConfigurationExecution), makeFunctionReference(CAPXUL_FUNCTIONS["moneyExecution/actions"].submitPermissionExecution), makeFunctionReference(CAPXUL_FUNCTIONS["moneyExecution/paymentCommandActions"].submitPaymentCommandExecution);
|
|
18631
19013
|
TaggedError("IndexerReadError");
|
|
18632
19014
|
Service()("@capxul/sdk/ports/IndexerReadPort");
|
|
18633
19015
|
//#endregion
|
|
@@ -18925,7 +19307,7 @@ var SmartAccountPortTag = class extends Service()("@capxul/sdk/ports/SmartAccoun
|
|
|
18925
19307
|
makeFunctionReference(CAPXUL_FUNCTIONS["smartAccount/queries"].loadByAuthUserId), makeFunctionReference(CAPXUL_FUNCTIONS["smartAccount/queries"].loadBySmartAccountAddress), makeFunctionReference(CAPXUL_FUNCTIONS["smartAccount/mutations"].provision), makeFunctionReference(CAPXUL_FUNCTIONS["smartAccount/actions"].confirmDeployment), makeFunctionReference(CAPXUL_FUNCTIONS["smartAccount/actions"].claim);
|
|
18926
19308
|
TaggedError("OrgError");
|
|
18927
19309
|
Service()("@capxul/sdk/ports/OrgPort");
|
|
18928
|
-
makeFunctionReference(CAPXUL_FUNCTIONS["org/queries"].listAll), makeFunctionReference(CAPXUL_FUNCTIONS["org/queries"].listRolesByOrgId), makeFunctionReference(CAPXUL_FUNCTIONS["org/queries"].listMembersByOrgId), makeFunctionReference(CAPXUL_FUNCTIONS["org/actions"].readTreasury)
|
|
19310
|
+
makeFunctionReference(CAPXUL_FUNCTIONS["org/queries"].listAll), makeFunctionReference(CAPXUL_FUNCTIONS["org/queries"].listRolesByOrgId), makeFunctionReference(CAPXUL_FUNCTIONS["org/queries"].listMembersByOrgId), makeFunctionReference(CAPXUL_FUNCTIONS["org/actions"].readTreasury);
|
|
18929
19311
|
makeFunctionReference(CAPXUL_FUNCTIONS["org/lifecycle"].startOrResume), makeFunctionReference(CAPXUL_FUNCTIONS["org/actions"].prepareFounderAccount), makeFunctionReference(CAPXUL_FUNCTIONS["org/actions"].prepareBootstrap), makeFunctionReference(CAPXUL_FUNCTIONS["org/actions"].submitBootstrap), makeFunctionReference(CAPXUL_FUNCTIONS["org/actions"].resumeBootstrapSubmission), makeFunctionReference(CAPXUL_FUNCTIONS["org/actions"].confirmBootstrap), makeFunctionReference(CAPXUL_FUNCTIONS["org/lifecycle"].recordFailure), makeFunctionReference(CAPXUL_FUNCTIONS["org/lifecycle"].load), makeFunctionReference(CAPXUL_FUNCTIONS["org/lifecycle"].retry);
|
|
18930
19312
|
//#endregion
|
|
18931
19313
|
//#region ../../packages/sdk/src/flows/identity.ts
|
|
@@ -19078,6 +19460,8 @@ gen(function* () {
|
|
|
19078
19460
|
makeFunctionReference(CAPXUL_FUNCTIONS.media.generateUploadUrl), makeFunctionReference(CAPXUL_FUNCTIONS.media.setProfileImage), makeFunctionReference(CAPXUL_FUNCTIONS.media.setOrgLogo);
|
|
19079
19461
|
makeFunctionReference(CAPXUL_FUNCTIONS.system.healthObserved);
|
|
19080
19462
|
makeFunctionReference(CAPXUL_FUNCTIONS["org/queries"].me);
|
|
19463
|
+
makeFunctionReference(CAPXUL_FUNCTIONS["org/queries"].previewInvite), makeFunctionReference(CAPXUL_FUNCTIONS["org/queries"].listMyInvitations), makeFunctionReference(CAPXUL_FUNCTIONS["org/queries"].listInvitations), makeFunctionReference(CAPXUL_FUNCTIONS["org/queries"].getInvitation), makeFunctionReference(CAPXUL_FUNCTIONS["org/mutations"].invite), makeFunctionReference(CAPXUL_FUNCTIONS["org/mutations"].accept), makeFunctionReference(CAPXUL_FUNCTIONS["org/mutations"].decline), makeFunctionReference(CAPXUL_FUNCTIONS["org/mutations"].cancel), makeFunctionReference(CAPXUL_FUNCTIONS["org/mutations"].resend), makeFunctionReference(CAPXUL_FUNCTIONS["org/mutations"].retry);
|
|
19464
|
+
CAPXUL_OPERATIONS.org.invitations;
|
|
19081
19465
|
makeFunctionReference(CAPXUL_FUNCTIONS["permission/queries"].read);
|
|
19082
19466
|
makeFunctionReference(CAPXUL_FUNCTIONS["payroll/actions"].authorizeRun), makeFunctionReference(CAPXUL_FUNCTIONS["payroll/queries"].runs), makeFunctionReference(CAPXUL_FUNCTIONS["payroll/queries"].groups), makeFunctionReference(CAPXUL_FUNCTIONS["payroll/queries"].terms), makeFunctionReference(CAPXUL_FUNCTIONS["payroll/mutations"].saveGroup), makeFunctionReference(CAPXUL_FUNCTIONS["payroll/mutations"].removeGroup);
|
|
19083
19467
|
CAPXUL_OPERATIONS.payroll.authorizeRun;
|
|
@@ -19160,15 +19544,15 @@ var deployment_topology_default = {
|
|
|
19160
19544
|
"staging": {
|
|
19161
19545
|
"appEnv": "staging",
|
|
19162
19546
|
"productRole": "staging",
|
|
19163
|
-
"substrate": "self-hosted-
|
|
19164
|
-
"convexProject": "
|
|
19165
|
-
"deployment": "self-hosted:
|
|
19547
|
+
"substrate": "self-hosted-coolify",
|
|
19548
|
+
"convexProject": "capxul-staging",
|
|
19549
|
+
"deployment": "self-hosted:coolify",
|
|
19166
19550
|
"deploymentReference": "production",
|
|
19167
|
-
"name": "
|
|
19551
|
+
"name": "capxul-staging",
|
|
19168
19552
|
"convexType": "self-hosted",
|
|
19169
|
-
"convexUrl": "https://convex
|
|
19553
|
+
"convexUrl": "https://convex.staging.capxul.com",
|
|
19170
19554
|
"convexSiteUrl": "https://api.staging.capxul.com",
|
|
19171
|
-
"authProviderJwksUrl": "https://
|
|
19555
|
+
"authProviderJwksUrl": "https://api.staging.capxul.com/api/auth/convex/jwks",
|
|
19172
19556
|
"chainId": 84532,
|
|
19173
19557
|
"expectedFingerprints": {
|
|
19174
19558
|
"applicationId": "8a99496340f792f4",
|
|
@@ -19197,7 +19581,7 @@ function resolveDeploymentTier(appEnv) {
|
|
|
19197
19581
|
}
|
|
19198
19582
|
function assertDeploymentTuple(appEnv, values) {
|
|
19199
19583
|
const tier = resolveDeploymentTier(appEnv);
|
|
19200
|
-
const selfHosted = tier.
|
|
19584
|
+
const selfHosted = tier.convexType === "self-hosted";
|
|
19201
19585
|
const expected = {
|
|
19202
19586
|
CONVEX_URL: tier.convexUrl,
|
|
19203
19587
|
CONVEX_SITE_URL: tier.convexSiteUrl,
|
|
@@ -19303,7 +19687,7 @@ const PLATFORM_ENV_NAMES = [
|
|
|
19303
19687
|
"windir"
|
|
19304
19688
|
];
|
|
19305
19689
|
function convexArgsForTarget(args, target, hasDeployKey) {
|
|
19306
|
-
if (target.substrate
|
|
19690
|
+
if (target.substrate !== "convex-cloud") return [...args];
|
|
19307
19691
|
if (hasDeployKey) return [...args];
|
|
19308
19692
|
if (args[0] === "run") return [
|
|
19309
19693
|
"run",
|
|
@@ -19324,7 +19708,7 @@ function convexChildEnv(target, sourceEnv) {
|
|
|
19324
19708
|
PATH: process.env.PATH ?? "",
|
|
19325
19709
|
TMPDIR: process.env.TMPDIR ?? tmpdir()
|
|
19326
19710
|
};
|
|
19327
|
-
if (target.substrate
|
|
19711
|
+
if (target.substrate !== "convex-cloud") {
|
|
19328
19712
|
env.CONVEX_SELF_HOSTED_URL = target.convexUrl;
|
|
19329
19713
|
const adminKey = sourceEnv.CONVEX_SELF_HOSTED_ADMIN_KEY?.trim();
|
|
19330
19714
|
if (adminKey !== void 0 && adminKey.length > 0) env.CONVEX_SELF_HOSTED_ADMIN_KEY = adminKey;
|
|
@@ -19498,7 +19882,7 @@ async function runFaucetSend() {
|
|
|
19498
19882
|
return 0;
|
|
19499
19883
|
} catch (error) {
|
|
19500
19884
|
s.stop("Faucet send failed");
|
|
19501
|
-
const hint = process.env.CONVEX_SELF_HOSTED_ADMIN_KEY === void 0 ? "\nHint: CONVEX_SELF_HOSTED_ADMIN_KEY is not set — the faucet needs operator access to
|
|
19885
|
+
const hint = process.env.CONVEX_SELF_HOSTED_ADMIN_KEY === void 0 ? "\nHint: CONVEX_SELF_HOSTED_ADMIN_KEY is not set — the faucet needs operator access to Coolify staging. Supply it directly or, inside the infrastructure repo, run `APP_ENV=staging vp exec bash scripts/capxul-env.sh npx @capxul/sandbox faucet send`." : "";
|
|
19502
19886
|
cancel(errorMessage(error) + hint);
|
|
19503
19887
|
return 1;
|
|
19504
19888
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@capxul/sandbox",
|
|
3
|
-
"version": "4.20.0-beta.
|
|
3
|
+
"version": "4.20.0-beta.8",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Capxul sandbox CLI for canonical quickstart keys and testnet faucet funds.",
|
|
6
6
|
"keywords": [
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"typescript": "npm:@typescript/typescript6@6.0.2",
|
|
43
43
|
"vite": "npm:@voidzero-dev/vite-plus-core@0.3.0",
|
|
44
44
|
"vite-plus": "0.3.0",
|
|
45
|
-
"@capxul/sdk": "4.20.0-beta.
|
|
45
|
+
"@capxul/sdk": "4.20.0-beta.8",
|
|
46
46
|
"@capxul/typescript-config": "0.0.0"
|
|
47
47
|
},
|
|
48
48
|
"scripts": {
|