@agent-vm/agent-portal-sdk 0.0.141 → 0.0.142

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.
Files changed (120) hide show
  1. package/contract-fixtures/portable-contracts/approval/decision-request-approved.fixture.json +18 -0
  2. package/contract-fixtures/portable-contracts/approval/decision-result-recorded.fixture.json +18 -0
  3. package/contract-fixtures/portable-contracts/approval/presentation-outcome-approved.fixture.json +16 -0
  4. package/contract-fixtures/portable-contracts/approval/presentation-request.fixture.json +32 -0
  5. package/contract-fixtures/portable-contracts/discovery/describe-result.fixture.json +7 -3
  6. package/contract-fixtures/portable-contracts/discovery/list-result.fixture.json +15 -3
  7. package/contract-fixtures/portable-contracts/discovery/search-result.fixture.json +7 -3
  8. package/contract-fixtures/portable-contracts/gateway/managed-agent-projection-hermes-valid.fixture.json +7 -4
  9. package/contract-fixtures/portable-contracts/gateway/managed-agent-projection-long-namespace-name.fixture.json +13 -6
  10. package/contract-fixtures/portable-contracts/gateway/managed-agent-projection-namespace-names-code-point-order.fixture.json +7 -4
  11. package/contract-fixtures/portable-contracts/gateway/managed-agent-projection-namespace-names-code-point-reverse.fixture.json +6 -3
  12. package/contract-fixtures/portable-contracts/gateway/managed-agent-projection-namespace-names-duplicate.fixture.json +6 -3
  13. package/contract-fixtures/portable-contracts/gateway/managed-agent-projection-namespace-names-unsorted.fixture.json +6 -3
  14. package/contract-fixtures/portable-contracts/gateway/managed-agent-projection-old-authority-rejected.fixture.json +5 -2
  15. package/contract-fixtures/portable-contracts/gateway/managed-agent-projection-openclaw-valid.fixture.json +7 -4
  16. package/contract-fixtures/portable-contracts/gateway/managed-agent-projection-self-root-rejected.fixture.json +5 -2
  17. package/contract-fixtures/portable-contracts/gateway/managed-agent-projection-work-root-rejected.fixture.json +5 -2
  18. package/dist/adapter-boundary/index.d.ts +1 -1
  19. package/dist/approval-surface/index.d.ts +2 -2
  20. package/dist/approval-surface/index.js +2 -2
  21. package/dist/approval-surface-Cqk_hAtN.js +132 -0
  22. package/dist/approval-surface-Cqk_hAtN.js.map +1 -0
  23. package/dist/artifact-surface/index.d.ts +1 -1
  24. package/dist/artifact-surface/index.js +1 -1
  25. package/dist/{artifact-surface-BIDasG5x.js → artifact-surface-CHEu4tDd.js} +2 -2
  26. package/dist/{artifact-surface-BIDasG5x.js.map → artifact-surface-CHEu4tDd.js.map} +1 -1
  27. package/dist/capability-description-surface/index.d.ts +1 -1
  28. package/dist/capability-description-surface/index.js +2 -2
  29. package/dist/capability-description-surface-CplIb93y.js +2 -0
  30. package/dist/{capability-descriptor-schema-DmzUtpji.js → capability-descriptor-schema-v9tj7yKr.js} +2 -2
  31. package/dist/{capability-descriptor-schema-DmzUtpji.js.map → capability-descriptor-schema-v9tj7yKr.js.map} +1 -1
  32. package/dist/cli/tool-portal.js +6 -6
  33. package/dist/contracts/index.d.ts +1 -1
  34. package/dist/contracts/index.js +1 -1
  35. package/dist/{contracts-3pjrcMjD.js → contracts-mBPxCxoG.js} +15 -14
  36. package/dist/{contracts-3pjrcMjD.js.map → contracts-mBPxCxoG.js.map} +1 -1
  37. package/dist/gateway-runtime-client/index.d.ts +11 -4
  38. package/dist/gateway-runtime-client/index.d.ts.map +1 -1
  39. package/dist/gateway-runtime-client/index.js +22 -5
  40. package/dist/gateway-runtime-client/index.js.map +1 -1
  41. package/dist/gateway-runtime-local-exec/gateway-runtime-local-exec-helper.js +1 -1
  42. package/dist/gateway-runtime-local-exec/index.js +1 -1
  43. package/dist/{gateway-runtime-local-exec-transport-DjxMXdT9.js → gateway-runtime-local-exec-transport-CO2bQ3wz.js} +1 -1
  44. package/dist/{gateway-runtime-local-exec-transport-DjxMXdT9.js.map → gateway-runtime-local-exec-transport-CO2bQ3wz.js.map} +1 -1
  45. package/dist/{index-D8uVfMBv.d.ts → index-BIvLq827.d.ts} +2 -2
  46. package/dist/{index-D8uVfMBv.d.ts.map → index-BIvLq827.d.ts.map} +1 -1
  47. package/dist/{index-yuB9HEo-.d.ts → index-BQj9hHds.d.ts} +4 -4
  48. package/dist/{index-yuB9HEo-.d.ts.map → index-BQj9hHds.d.ts.map} +1 -1
  49. package/dist/{index-BQ12JshX.d.ts → index-Ba_G25p_.d.ts} +11 -11
  50. package/dist/{index-BQ12JshX.d.ts.map → index-Ba_G25p_.d.ts.map} +1 -1
  51. package/dist/{index-BgKPbuap.d.ts → index-Badq9e6i.d.ts} +1 -1
  52. package/dist/{index-BgKPbuap.d.ts.map → index-Badq9e6i.d.ts.map} +1 -1
  53. package/dist/{index-DqMFYBbN.d.ts → index-C-QFWaH5.d.ts} +39 -6
  54. package/dist/index-C-QFWaH5.d.ts.map +1 -0
  55. package/dist/{index-B_FqoejO.d.ts → index-C8O_HiyA.d.ts} +4 -4
  56. package/dist/{index-B_FqoejO.d.ts.map → index-C8O_HiyA.d.ts.map} +1 -1
  57. package/dist/index-COlx8Y1g.d.ts +124 -0
  58. package/dist/index-COlx8Y1g.d.ts.map +1 -0
  59. package/dist/{index-B_xYdo3v.d.ts → index-DDLN0DE_.d.ts} +2 -2
  60. package/dist/{index-B_xYdo3v.d.ts.map → index-DDLN0DE_.d.ts.map} +1 -1
  61. package/dist/index-D_69tlLY.d.ts +29 -0
  62. package/dist/index-D_69tlLY.d.ts.map +1 -0
  63. package/dist/{index-C5NhyO2R.d.ts → index-tmZkznV6.d.ts} +5 -2
  64. package/dist/{index-C5NhyO2R.d.ts.map → index-tmZkznV6.d.ts.map} +1 -1
  65. package/dist/index.d.ts +12 -12
  66. package/dist/index.js +16 -15
  67. package/dist/{json-value-schema-BGfMDOGA.js → json-value-schema-Br5M7d7X.js} +2 -2
  68. package/dist/{json-value-schema-BGfMDOGA.js.map → json-value-schema-Br5M7d7X.js.map} +1 -1
  69. package/dist/{json-value-schema-C-87ATB3.d.ts → json-value-schema-CwDmttWU.d.ts} +1 -1
  70. package/dist/{json-value-schema-C-87ATB3.d.ts.map → json-value-schema-CwDmttWU.d.ts.map} +1 -1
  71. package/dist/namespace-discovery-schema-DwbJHVLu.js +21 -0
  72. package/dist/namespace-discovery-schema-DwbJHVLu.js.map +1 -0
  73. package/dist/{node-tool-portal-mcp-transport-CnB8MCW2.js → node-tool-portal-mcp-transport-xFo0i37Q.js} +1 -1
  74. package/dist/{node-tool-portal-mcp-transport-CnB8MCW2.js.map → node-tool-portal-mcp-transport-xFo0i37Q.js.map} +1 -1
  75. package/dist/portable-contracts/index.d.ts +1 -1
  76. package/dist/portable-contracts/index.js +2 -2
  77. package/dist/{portable-contracts-C5rtqe-H.js → portable-contracts-CKeFnjAA.js} +28 -11
  78. package/dist/portable-contracts-CKeFnjAA.js.map +1 -0
  79. package/dist/{portable-refinement-authoring-CvlKRs_Z.js → portable-refinement-authoring-C1Q92x2G.js} +29 -6
  80. package/dist/portable-refinement-authoring-C1Q92x2G.js.map +1 -0
  81. package/dist/{portal-call-request-schema-DYxcWijW.js → portal-call-request-schema-Cl0kTLaX.js} +4 -4
  82. package/dist/{portal-call-request-schema-DYxcWijW.js.map → portal-call-request-schema-Cl0kTLaX.js.map} +1 -1
  83. package/dist/{portal-call-result-schema-CVWMGu2y.js → portal-call-result-schema-B25_rzZZ.js} +20 -10
  84. package/dist/portal-call-result-schema-B25_rzZZ.js.map +1 -0
  85. package/dist/{portal-call-result-schema-DalyNrfW.d.ts → portal-call-result-schema-CS2rX3oP.d.ts} +1132 -166
  86. package/dist/portal-call-result-schema-CS2rX3oP.d.ts.map +1 -0
  87. package/dist/portal-call-surface/index.d.ts +3 -3
  88. package/dist/portal-call-surface/index.js +5 -5
  89. package/dist/{portal-call-surface-B_oQxm5X.js → portal-call-surface-qykVz_8k.js} +6 -6
  90. package/dist/{portal-call-surface-B_oQxm5X.js.map → portal-call-surface-qykVz_8k.js.map} +1 -1
  91. package/dist/{portal-error-schema-BCALC7xt.js → portal-error-schema-TSNrpQSy.js} +1 -1
  92. package/dist/{portal-error-schema-BCALC7xt.js.map → portal-error-schema-TSNrpQSy.js.map} +1 -1
  93. package/dist/portal-event-surface/index.d.ts +1 -1
  94. package/dist/portal-event-surface/index.js +2 -2
  95. package/dist/{portal-event-surface-DSWv7Kgi.js → portal-event-surface-Bp3rXsBz.js} +3 -3
  96. package/dist/{portal-event-surface-DSWv7Kgi.js.map → portal-event-surface-Bp3rXsBz.js.map} +1 -1
  97. package/dist/{request-id-schema-DGLLX-tp.js → request-id-schema-Hq_6lSFV.js} +2 -2
  98. package/dist/{request-id-schema-DGLLX-tp.js.map → request-id-schema-Hq_6lSFV.js.map} +1 -1
  99. package/dist/testing/index.d.ts +2 -2
  100. package/dist/testing/index.js +2 -2
  101. package/dist/tool-portal-mcp-client/index.d.ts +1 -1
  102. package/dist/tool-portal-mcp-client/index.js +1 -1
  103. package/dist/tool-portal-mcp-client/node-tool-portal-mcp-transport.d.ts +1 -1
  104. package/dist/tool-portal-mcp-client/node-tool-portal-mcp-transport.js +1 -1
  105. package/dist/{tool-portal-mcp-client-nMGxqQ-A.js → tool-portal-mcp-client-DZoloMod.js} +5 -5
  106. package/dist/{tool-portal-mcp-client-nMGxqQ-A.js.map → tool-portal-mcp-client-DZoloMod.js.map} +1 -1
  107. package/package.json +1 -1
  108. package/portable-contract-schema-manifest.json +275 -9
  109. package/dist/approval-surface-z5JUqa0K.js +0 -20
  110. package/dist/approval-surface-z5JUqa0K.js.map +0 -1
  111. package/dist/capability-description-surface-CyPgad9d.js +0 -2
  112. package/dist/index-BqWw914Z.d.ts +0 -64
  113. package/dist/index-BqWw914Z.d.ts.map +0 -1
  114. package/dist/index-DqMFYBbN.d.ts.map +0 -1
  115. package/dist/index-dKXgrOwm.d.ts +0 -17
  116. package/dist/index-dKXgrOwm.d.ts.map +0 -1
  117. package/dist/portable-contracts-C5rtqe-H.js.map +0 -1
  118. package/dist/portable-refinement-authoring-CvlKRs_Z.js.map +0 -1
  119. package/dist/portal-call-result-schema-CVWMGu2y.js.map +0 -1
  120. package/dist/portal-call-result-schema-DalyNrfW.d.ts.map +0 -1
@@ -1,14 +1,16 @@
1
1
  {
2
2
  "protocolVersion": 1,
3
3
  "refinements": [
4
+ "gateway.approval.arguments-preview.utf8-bytes",
4
5
  "gateway.attachment.unique-agent-ids",
5
- "gateway.managed-agent-projection.namespace-names",
6
+ "gateway.managed-agent-projection.namespaces",
6
7
  "portal.artifact-read.default-truncated",
7
8
  "portal.batch.unique-item-ids",
8
9
  "portal.describe.default-includes",
9
10
  "portal.json.canonical",
10
11
  "portal.json.max-object-entries",
11
12
  "portal.list.default-limit",
13
+ "portal.namespace-discovery.summary-code-points",
12
14
  "portal.number.safe-integer",
13
15
  "portal.request-id.not-reserved",
14
16
  "portal.result.aggregate-status",
@@ -1876,9 +1878,28 @@
1876
1878
  "required": ["namespace", "name", "toolRef"],
1877
1879
  "additionalProperties": false
1878
1880
  }
1881
+ },
1882
+ "namespaceDiscovery": {
1883
+ "type": "array",
1884
+ "items": {
1885
+ "type": "object",
1886
+ "properties": {
1887
+ "summary": {
1888
+ "type": "string",
1889
+ "minLength": 1,
1890
+ "maxLength": 500
1891
+ },
1892
+ "namespace": {
1893
+ "type": "string",
1894
+ "minLength": 1
1895
+ }
1896
+ },
1897
+ "required": ["namespace"],
1898
+ "additionalProperties": false
1899
+ }
1879
1900
  }
1880
1901
  },
1881
- "required": ["tools"],
1902
+ "required": ["tools", "namespaceDiscovery"],
1882
1903
  "additionalProperties": false
1883
1904
  }
1884
1905
  },
@@ -2491,9 +2512,28 @@
2491
2512
  "required": ["input", "namespace", "safety", "name", "toolRef"],
2492
2513
  "additionalProperties": false
2493
2514
  }
2515
+ },
2516
+ "namespaceDiscovery": {
2517
+ "type": "array",
2518
+ "items": {
2519
+ "type": "object",
2520
+ "properties": {
2521
+ "summary": {
2522
+ "type": "string",
2523
+ "minLength": 1,
2524
+ "maxLength": 500
2525
+ },
2526
+ "namespace": {
2527
+ "type": "string",
2528
+ "minLength": 1
2529
+ }
2530
+ },
2531
+ "required": ["namespace"],
2532
+ "additionalProperties": false
2533
+ }
2494
2534
  }
2495
2535
  },
2496
- "required": ["namespaces", "tools"],
2536
+ "required": ["namespaces", "tools", "namespaceDiscovery"],
2497
2537
  "additionalProperties": false
2498
2538
  }
2499
2539
  },
@@ -3057,9 +3097,28 @@
3057
3097
  "required": ["input", "namespace", "safety", "name", "toolRef"],
3058
3098
  "additionalProperties": false
3059
3099
  }
3100
+ },
3101
+ "namespaceDiscovery": {
3102
+ "type": "array",
3103
+ "items": {
3104
+ "type": "object",
3105
+ "properties": {
3106
+ "summary": {
3107
+ "type": "string",
3108
+ "minLength": 1,
3109
+ "maxLength": 500
3110
+ },
3111
+ "namespace": {
3112
+ "type": "string",
3113
+ "minLength": 1
3114
+ }
3115
+ },
3116
+ "required": ["namespace"],
3117
+ "additionalProperties": false
3118
+ }
3060
3119
  }
3061
3120
  },
3062
- "required": ["tools"],
3121
+ "required": ["tools", "namespaceDiscovery"],
3063
3122
  "additionalProperties": false
3064
3123
  }
3065
3124
  },
@@ -3259,6 +3318,198 @@
3259
3318
  },
3260
3319
  "refinementIdentities": ["portal.request-id.not-reserved", "portal.result.aggregate-status"]
3261
3320
  },
3321
+ "gateway.approval.decision-request": {
3322
+ "jsonSchema": {
3323
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3324
+ "type": "object",
3325
+ "properties": {
3326
+ "challengeId": {
3327
+ "type": "string",
3328
+ "format": "uuid",
3329
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
3330
+ },
3331
+ "decision": {
3332
+ "type": "string",
3333
+ "enum": ["approve", "deny"]
3334
+ }
3335
+ },
3336
+ "required": ["challengeId", "decision"],
3337
+ "additionalProperties": false
3338
+ },
3339
+ "refinementIdentities": []
3340
+ },
3341
+ "gateway.approval.decision-result": {
3342
+ "jsonSchema": {
3343
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3344
+ "oneOf": [
3345
+ {
3346
+ "type": "object",
3347
+ "properties": {
3348
+ "kind": {
3349
+ "type": "string",
3350
+ "const": "recorded"
3351
+ },
3352
+ "state": {
3353
+ "type": "string",
3354
+ "enum": ["approved", "denied"]
3355
+ }
3356
+ },
3357
+ "required": ["kind", "state"],
3358
+ "additionalProperties": false
3359
+ },
3360
+ {
3361
+ "type": "object",
3362
+ "properties": {
3363
+ "kind": {
3364
+ "type": "string",
3365
+ "const": "rejected"
3366
+ },
3367
+ "reason": {
3368
+ "type": "string",
3369
+ "enum": [
3370
+ "not-found",
3371
+ "expired",
3372
+ "stale-authority",
3373
+ "principal-mismatch",
3374
+ "already-decided",
3375
+ "presenter-not-authorized"
3376
+ ]
3377
+ }
3378
+ },
3379
+ "required": ["kind", "reason"],
3380
+ "additionalProperties": false
3381
+ }
3382
+ ]
3383
+ },
3384
+ "refinementIdentities": []
3385
+ },
3386
+ "gateway.approval.presentation-outcome": {
3387
+ "jsonSchema": {
3388
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3389
+ "oneOf": [
3390
+ {
3391
+ "type": "object",
3392
+ "properties": {
3393
+ "kind": {
3394
+ "type": "string",
3395
+ "const": "approved"
3396
+ }
3397
+ },
3398
+ "required": ["kind"],
3399
+ "additionalProperties": false
3400
+ },
3401
+ {
3402
+ "type": "object",
3403
+ "properties": {
3404
+ "kind": {
3405
+ "type": "string",
3406
+ "const": "denied"
3407
+ }
3408
+ },
3409
+ "required": ["kind"],
3410
+ "additionalProperties": false
3411
+ },
3412
+ {
3413
+ "type": "object",
3414
+ "properties": {
3415
+ "kind": {
3416
+ "type": "string",
3417
+ "const": "cancelled"
3418
+ },
3419
+ "reason": {
3420
+ "type": "string",
3421
+ "enum": ["challenge-expired", "session-ended", "user-cancelled"]
3422
+ }
3423
+ },
3424
+ "required": ["kind", "reason"],
3425
+ "additionalProperties": false
3426
+ },
3427
+ {
3428
+ "type": "object",
3429
+ "properties": {
3430
+ "kind": {
3431
+ "type": "string",
3432
+ "const": "unavailable"
3433
+ },
3434
+ "reason": {
3435
+ "type": "string",
3436
+ "enum": ["presenter-missing", "presentation-failed"]
3437
+ }
3438
+ },
3439
+ "required": ["kind", "reason"],
3440
+ "additionalProperties": false
3441
+ }
3442
+ ]
3443
+ },
3444
+ "refinementIdentities": []
3445
+ },
3446
+ "gateway.approval.presentation-request": {
3447
+ "jsonSchema": {
3448
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3449
+ "type": "object",
3450
+ "properties": {
3451
+ "allowedDecisions": {
3452
+ "type": "array",
3453
+ "prefixItems": [
3454
+ {
3455
+ "type": "string",
3456
+ "const": "approve"
3457
+ },
3458
+ {
3459
+ "type": "string",
3460
+ "const": "deny"
3461
+ }
3462
+ ]
3463
+ },
3464
+ "challengeId": {
3465
+ "type": "string",
3466
+ "format": "uuid",
3467
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
3468
+ },
3469
+ "display": {
3470
+ "type": "object",
3471
+ "properties": {
3472
+ "argumentsPreview": {
3473
+ "type": "string",
3474
+ "maxLength": 4096
3475
+ }
3476
+ },
3477
+ "required": ["argumentsPreview"],
3478
+ "additionalProperties": false
3479
+ },
3480
+ "expiresAt": {
3481
+ "type": "string",
3482
+ "format": "date-time",
3483
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
3484
+ },
3485
+ "itemId": {
3486
+ "type": "string",
3487
+ "minLength": 1
3488
+ },
3489
+ "name": {
3490
+ "type": "string",
3491
+ "minLength": 1,
3492
+ "maxLength": 256
3493
+ },
3494
+ "namespace": {
3495
+ "type": "string",
3496
+ "minLength": 1,
3497
+ "maxLength": 256
3498
+ }
3499
+ },
3500
+ "required": [
3501
+ "allowedDecisions",
3502
+ "challengeId",
3503
+ "display",
3504
+ "expiresAt",
3505
+ "itemId",
3506
+ "name",
3507
+ "namespace"
3508
+ ],
3509
+ "additionalProperties": false
3510
+ },
3511
+ "refinementIdentities": ["gateway.approval.arguments-preview.utf8-bytes"]
3512
+ },
3262
3513
  "gateway.attachment.metadata": {
3263
3514
  "jsonSchema": {
3264
3515
  "$schema": "https://json-schema.org/draft/2020-12/schema",
@@ -3381,12 +3632,24 @@
3381
3632
  "minLength": 1,
3382
3633
  "maxLength": 256
3383
3634
  },
3384
- "toolPortalNamespaceNames": {
3635
+ "toolPortalNamespaces": {
3385
3636
  "readOnly": true,
3386
3637
  "type": "array",
3387
3638
  "items": {
3388
- "type": "string",
3389
- "minLength": 1
3639
+ "type": "object",
3640
+ "properties": {
3641
+ "summary": {
3642
+ "type": "string",
3643
+ "minLength": 1,
3644
+ "maxLength": 500
3645
+ },
3646
+ "namespace": {
3647
+ "type": "string",
3648
+ "minLength": 1
3649
+ }
3650
+ },
3651
+ "required": ["namespace"],
3652
+ "additionalProperties": false
3390
3653
  }
3391
3654
  },
3392
3655
  "toolPortalProfileId": {
@@ -3399,12 +3662,15 @@
3399
3662
  "agentId",
3400
3663
  "frameworkIdentity",
3401
3664
  "profileAssignmentRevision",
3402
- "toolPortalNamespaceNames",
3665
+ "toolPortalNamespaces",
3403
3666
  "toolPortalProfileId"
3404
3667
  ],
3405
3668
  "additionalProperties": false
3406
3669
  },
3407
- "refinementIdentities": ["gateway.managed-agent-projection.namespace-names"]
3670
+ "refinementIdentities": [
3671
+ "gateway.managed-agent-projection.namespaces",
3672
+ "portal.namespace-discovery.summary-code-points"
3673
+ ]
3408
3674
  },
3409
3675
  "gateway.trusted-invocation-context": {
3410
3676
  "jsonSchema": {
@@ -1,20 +0,0 @@
1
- import { t as ItemIdSchema } from "./request-id-schema-DGLLX-tp.js";
2
- import { n as PortalApprovalRequiredCallItemResultSchema, t as PortalApprovalChallengeSchema } from "./portal-call-result-schema-CVWMGu2y.js";
3
- import { z } from "zod";
4
- //#region src/approval-surface/models/approval-decision-reference-schema.ts
5
- const ApprovalDecisionReferenceSchema = z.object({
6
- approvalId: z.string().min(1),
7
- callId: ItemIdSchema,
8
- expiresAt: z.string().datetime(),
9
- status: z.enum([
10
- "approved",
11
- "denied",
12
- "expired"
13
- ])
14
- }).strict();
15
- const ApprovalRequiredResultSchema = PortalApprovalRequiredCallItemResultSchema;
16
- const ApprovalChallengeReferenceSchema = PortalApprovalChallengeSchema;
17
- //#endregion
18
- export { ApprovalDecisionReferenceSchema as n, ApprovalRequiredResultSchema as r, ApprovalChallengeReferenceSchema as t };
19
-
20
- //# sourceMappingURL=approval-surface-z5JUqa0K.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"approval-surface-z5JUqa0K.js","names":[],"sources":["../src/approval-surface/models/approval-decision-reference-schema.ts"],"sourcesContent":["import { z } from 'zod';\n\nimport { ItemIdSchema } from '../../contract-primitives/models/request-id-schema.js';\nimport {\n\tPortalApprovalChallengeSchema,\n\tPortalApprovalRequiredCallItemResultSchema,\n} from '../../portal-call-surface/models/portal-call-result-schema.js';\n\nexport const ApprovalDecisionReferenceSchema = z\n\t.object({\n\t\tapprovalId: z.string().min(1),\n\t\tcallId: ItemIdSchema,\n\t\texpiresAt: z.string().datetime(),\n\t\tstatus: z.enum(['approved', 'denied', 'expired']),\n\t})\n\t.strict();\n\nexport type ApprovalDecisionReference = z.infer<typeof ApprovalDecisionReferenceSchema>;\n\nexport const ApprovalRequiredResultSchema = PortalApprovalRequiredCallItemResultSchema;\n\nexport const ApprovalChallengeReferenceSchema = PortalApprovalChallengeSchema;\n\nexport type ApprovalRequiredResult = z.infer<typeof ApprovalRequiredResultSchema>;\nexport type ApprovalChallengeReference = z.infer<typeof ApprovalChallengeReferenceSchema>;\n"],"mappings":";;;;AAQA,MAAa,kCAAkC,EAC7C,OAAO;CACP,YAAY,EAAE,QAAQ,CAAC,IAAI,EAAE;CAC7B,QAAQ;CACR,WAAW,EAAE,QAAQ,CAAC,UAAU;CAChC,QAAQ,EAAE,KAAK;EAAC;EAAY;EAAU;EAAU,CAAC;CACjD,CAAC,CACD,QAAQ;AAIV,MAAa,+BAA+B;AAE5C,MAAa,mCAAmC"}
@@ -1,2 +0,0 @@
1
- import "./capability-descriptor-schema-DmzUtpji.js";
2
- export {};
@@ -1,64 +0,0 @@
1
- import { z } from "zod";
2
-
3
- //#region src/approval-surface/models/approval-decision-reference-schema.d.ts
4
- declare const ApprovalDecisionReferenceSchema: z.ZodObject<{
5
- approvalId: z.ZodString;
6
- callId: z.ZodString;
7
- expiresAt: z.ZodString;
8
- status: z.ZodEnum<{
9
- approved: "approved";
10
- denied: "denied";
11
- expired: "expired";
12
- }>;
13
- }, z.core.$strict>;
14
- type ApprovalDecisionReference = z.infer<typeof ApprovalDecisionReferenceSchema>;
15
- declare const ApprovalRequiredResultSchema: z.ZodObject<{
16
- approvalChallenge: z.ZodObject<{
17
- challengeId: z.ZodString;
18
- expiresAt: z.ZodString;
19
- }, z.core.$strict>;
20
- error: z.ZodObject<{
21
- message: z.ZodString;
22
- retryable: z.ZodOptional<z.ZodBoolean>;
23
- safeDiagnostic: z.ZodOptional<z.ZodObject<{
24
- code: z.ZodEnum<{
25
- approval_required: "approval_required";
26
- capability_denied: "capability_denied";
27
- validation_failed: "validation_failed";
28
- provider_unavailable: "provider_unavailable";
29
- execution_failed: "execution_failed";
30
- cancelled: "cancelled";
31
- timeout: "timeout";
32
- output_truncated: "output_truncated";
33
- artifact_unavailable: "artifact_unavailable";
34
- }>;
35
- level: z.ZodEnum<{
36
- error: "error";
37
- debug: "debug";
38
- info: "info";
39
- warn: "warn";
40
- }>;
41
- safeMessage: z.ZodString;
42
- safeParams: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
43
- }, z.core.$strict>>;
44
- code: z.ZodLiteral<"approval_required">;
45
- }, z.core.$strict>;
46
- id: z.ZodString;
47
- operationId: z.ZodString;
48
- outcome: z.ZodObject<{
49
- certainty: z.ZodLiteral<"proven">;
50
- kind: z.ZodLiteral<"not-dispatched">;
51
- retryClass: z.ZodLiteral<"safe-before-dispatch">;
52
- }, z.core.$strict>;
53
- owningGeneration: z.ZodString;
54
- status: z.ZodLiteral<"approval_required">;
55
- }, z.core.$strict>;
56
- declare const ApprovalChallengeReferenceSchema: z.ZodObject<{
57
- challengeId: z.ZodString;
58
- expiresAt: z.ZodString;
59
- }, z.core.$strict>;
60
- type ApprovalRequiredResult = z.infer<typeof ApprovalRequiredResultSchema>;
61
- type ApprovalChallengeReference = z.infer<typeof ApprovalChallengeReferenceSchema>;
62
- //#endregion
63
- export { ApprovalRequiredResult as a, ApprovalDecisionReferenceSchema as i, ApprovalChallengeReferenceSchema as n, ApprovalRequiredResultSchema as o, ApprovalDecisionReference as r, ApprovalChallengeReference as t };
64
- //# sourceMappingURL=index-BqWw914Z.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-BqWw914Z.d.ts","names":[],"sources":["../src/approval-surface/models/approval-decision-reference-schema.ts"],"mappings":";;;cAQa,+BAAA,EAA+B,CAAA,CAAA,SAAA;;;;;;;;;;KAShC,yBAAA,GAA4B,CAAA,CAAE,KAAA,QAAa,+BAAA;AAAA,cAE1C,4BAAA,EAA4B,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAE5B,gCAAA,EAAgC,CAAA,CAAA,SAAA;;;;KAEjC,sBAAA,GAAyB,CAAA,CAAE,KAAA,QAAa,4BAAA;AAAA,KACxC,0BAAA,GAA6B,CAAA,CAAE,KAAA,QAAa,gCAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-DqMFYBbN.d.ts","names":[],"sources":["../src/portable-contracts/portable-refinement-descriptors.ts","../src/portable-contracts/portable-contract-runtime.ts"],"mappings":";;;KAAY,sBAAA;AAAA,KAMA,2BAAA;EAAA,SAEA,IAAA;EAAA,SACA,UAAA;EAAA,SACA,OAAA;AAAA;EAAA,SAEE,IAAA;AAAA;EAAA,SAEF,eAAA;EAAA,SACA,SAAA;EAAA,SACA,IAAA;AAAA;EAAA,SAGA,IAAA;EAAA,SACA,MAAA,EAAQ,QAAA,CAAS,MAAA;AAAA;EAAA,SAGjB,IAAA;EAAA,SACA,iBAAA;EAAA,SACA,oBAAA;EAAA,SACA,0BAAA;EAAA,SACA,uBAAA;AAAA;EAAA,SAGA,IAAA;EAAA,SACA,OAAA;AAAA;EAAA,SAGA,UAAA;EAAA,SACA,IAAA;EAAA,SACA,MAAA;AAAA;EAAA,SAGA,IAAA;EAAA,SACA,OAAA;EAAA,SACA,OAAA;AAAA;EAAA,SAEE,IAAA;EAAA,SAA6C,IAAA;AAAA;EAAA,SAC7C,IAAA;AAAA;EAAA,SACA,IAAA;EAAA,SAAsC,IAAA;AAAA;EAAA,SACtC,UAAA;EAAA,SAAwC,IAAA;AAAA;AAAA,UAErC,4BAAA;EAAA,SACP,WAAA;EAAA,SACA,SAAA;EAAA,SACA,QAAA;EAAA,SACA,IAAA,EAAM,sBAAA;EAAA,SACN,SAAA,EAAW,2BAAA;AAAA;AAAA,cAGR,+BAAA;EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAoJA,8BAAA;;;UCvKH,mCAAA;EAAA,SACA,IAAA;EAAA,SACA,UAAA;EAAA,SACA,oBAAA;AAAA;AAAA,UAGA,mCAAA;EAAA,SACA,UAAA;EAAA,SACA,IAAA;EAAA,SACA,oBAAA;AAAA;AAAA,KAGE,2BAAA,GACT,mCAAA,GACA,mCAAA;AAAA,UAEc,uBAAA;EAAA,SACP,KAAA,GAAQ,KAAA,cAAmB,2BAAA;AAAA;AAAA,cAGxB,kCAAA;AAAA,UAWH,gCAAA;EAAA,SACA,MAAA,EAAQ,CAAA,CAAE,OAAA;EAAA,SACV,QAAA;AAAA;AAAA,iBA8EM,wCAAA,CACf,KAAA,EAAO,gCAAA;AAAA,iBAsBQ,mBAAA,CAAoB,KAAA;AAAA,iBAuWpB,oCAAA,CAAA,GAAwC,QAAA,CAAS,MAAA;AAAA,cAqBpD,0BAAA;EAAA,aAKgD,uBAAA;AAAA"}
@@ -1,17 +0,0 @@
1
- import { z } from "zod";
2
-
3
- //#region src/contract-primitives/models/capability-reference-schema.d.ts
4
- declare const NamespaceNameSchema: z.ZodString;
5
- declare const CapabilityNameSchema: z.ZodString;
6
- declare const CapabilityReferenceSchema: z.ZodObject<{
7
- namespace: z.ZodString;
8
- name: z.ZodString;
9
- }, z.core.$strict>;
10
- type CapabilityReference = z.infer<typeof CapabilityReferenceSchema>;
11
- //#endregion
12
- //#region src/contract-primitives/models/request-id-schema.d.ts
13
- declare const RequestIdSchema: z.ZodString;
14
- declare const ItemIdSchema: z.ZodString;
15
- //#endregion
16
- export { CapabilityReferenceSchema as a, CapabilityReference as i, RequestIdSchema as n, NamespaceNameSchema as o, CapabilityNameSchema as r, ItemIdSchema as t };
17
- //# sourceMappingURL=index-dKXgrOwm.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-dKXgrOwm.d.ts","names":[],"sources":["../src/contract-primitives/models/capability-reference-schema.ts","../src/contract-primitives/models/request-id-schema.ts"],"mappings":";;;cAEa,mBAAA,EAAmB,CAAA,CAAA,SAAA;AAAA,cACnB,oBAAA,EAAoB,CAAA,CAAA,SAAA;AAAA,cAEpB,yBAAA,EAAyB,CAAA,CAAA,SAAA;;;;KAO1B,mBAAA,GAAsB,CAAA,CAAE,KAAA,QAAa,yBAAA;;;cCNpC,eAAA,EAAe,CAAA,CAAA,SAAA;AAAA,cAaf,YAAA,EAAY,CAAA,CAAA,SAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"portable-contracts-C5rtqe-H.js","names":[],"sources":["../src/portable-contracts/portable-contract-runtime.ts"],"sourcesContent":["import { z } from 'zod';\n\nimport {\n\tArtifactReferenceSchema,\n\tPortalArtifactReadRequestSchema,\n\tPortalArtifactReadResultSchema,\n} from '../artifact-surface/index.js';\nimport { JsonValueSchema } from '../contract-primitives/index.js';\nimport {\n\tGatewayRuntimeAttachmentMetadataSchema,\n\tGatewayRuntimeTrustedInvocationContextSchema,\n\tManagedAgentProjectionSchema,\n\tSANDBOX_METHOD_CONTRACTS,\n\tSandboxOperationControlResultSchema,\n\tSandboxOperationIdentitySchema,\n\tSandboxRetainedResultLookupRequestSchema,\n\tSandboxRetainedResultLookupResultSchema,\n} from '../contracts/index.js';\nimport {\n\tPortalCallItemResultSchema,\n\tPortalCallRequestSchema,\n\tPortalCallResultSchema,\n\tPortalDescribeRequestSchema,\n\tPortalDescribeResultSchema,\n\tPortalListRequestSchema,\n\tPortalListResultSchema,\n\tPortalSearchRequestSchema,\n\tPortalSearchResultSchema,\n} from '../portal-call-surface/index.js';\nimport { PortalProgressEventSchema } from '../portal-event-surface/index.js';\nimport { portableRefinementIdentityForCheck } from './portable-refinement-authoring.js';\nimport { PORTABLE_REFINEMENT_IDENTITIES } from './portable-refinement-descriptors.js';\nexport {\n\tPORTABLE_REFINEMENT_DESCRIPTORS,\n\tPORTABLE_REFINEMENT_IDENTITIES,\n} from './portable-refinement-descriptors.js';\n\ninterface PortableAcceptedContractParseResult {\n\treadonly kind: 'accepted';\n\treadonly normalized: unknown;\n\treadonly refinementIdentities: readonly string[];\n}\n\ninterface PortableRejectedContractParseResult {\n\treadonly errorCodes: readonly string[];\n\treadonly kind: 'rejected';\n\treadonly refinementIdentities: readonly string[];\n}\n\nexport type PortableContractParseResult =\n\t| PortableAcceptedContractParseResult\n\t| PortableRejectedContractParseResult;\n\nexport interface PortableContractAdapter {\n\treadonly parse: (input: unknown) => PortableContractParseResult;\n}\n\nexport const PORTABLE_CONTRACT_PROTOCOL_VERSION = 1;\n\ninterface PortableContractDefinition {\n\treadonly refinementIdentities: readonly string[];\n\treadonly resolveRefinementIdentities?: (props: {\n\t\treadonly input: unknown;\n\t\treadonly parseSucceeded: boolean;\n\t}) => readonly string[];\n\treadonly schema: z.ZodType;\n}\n\ninterface PortableSchemaExportabilityProps {\n\treadonly schema: z.ZodType;\n\treadonly schemaId: string;\n}\n\nfunction isUnknownRecord(value: unknown): value is Record<string, unknown> {\n\treturn typeof value === 'object' && value !== null && !Array.isArray(value);\n}\n\nfunction isZodSchema(value: unknown): value is z.ZodType {\n\treturn isUnknownRecord(value) && isUnknownRecord(value['_zod']) && 'def' in value['_zod'];\n}\n\nfunction containsUnsafeInteger(value: unknown): boolean {\n\tif (typeof value === 'number') return Number.isInteger(value) && !Number.isSafeInteger(value);\n\tif (Array.isArray(value)) return value.some((item) => containsUnsafeInteger(item));\n\tif (isUnknownRecord(value)) {\n\t\treturn Object.values(value).some((childValue) => containsUnsafeInteger(childValue));\n\t}\n\treturn false;\n}\n\nfunction inspectPortableSchemaNode(props: {\n\treadonly node: unknown;\n\treadonly schemaId: string;\n\treadonly visited: Set<object>;\n}): void {\n\tif ((typeof props.node !== 'object' && typeof props.node !== 'function') || props.node === null) {\n\t\treturn;\n\t}\n\tif (props.visited.has(props.node)) {\n\t\treturn;\n\t}\n\tprops.visited.add(props.node);\n\n\tif (isZodSchema(props.node)) {\n\t\t// oxlint-disable-next-line no-underscore-dangle -- Zod v4 core definitions are required for the portable-authoring structural guard.\n\t\tconst definition: unknown = props.node._zod.def;\n\t\tif (isUnknownRecord(definition) && definition['type'] === 'transform') {\n\t\t\tthrow new Error(\n\t\t\t\t`Portable schema ${props.schemaId} contains an anonymous or unregistered transform.`,\n\t\t\t);\n\t\t}\n\t\tif (isUnknownRecord(definition) && Array.isArray(definition['checks'])) {\n\t\t\tfor (const check of definition['checks']) {\n\t\t\t\tif (\n\t\t\t\t\tisUnknownRecord(check) &&\n\t\t\t\t\tisUnknownRecord(check['_zod']) &&\n\t\t\t\t\tisUnknownRecord(check['_zod']['def']) &&\n\t\t\t\t\tcheck['_zod']['def']['check'] === 'custom'\n\t\t\t\t) {\n\t\t\t\t\tif (portableRefinementIdentityForCheck(check) !== undefined) {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Portable schema ${props.schemaId} contains an anonymous or unregistered refinement.`,\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tinspectPortableSchemaNode({\n\t\t\tnode: definition,\n\t\t\tschemaId: props.schemaId,\n\t\t\tvisited: props.visited,\n\t\t});\n\t\treturn;\n\t}\n\n\tif (Array.isArray(props.node)) {\n\t\tfor (const child of props.node) {\n\t\t\tinspectPortableSchemaNode({ node: child, schemaId: props.schemaId, visited: props.visited });\n\t\t}\n\t\treturn;\n\t}\n\n\tfor (const child of Object.values(props.node)) {\n\t\tinspectPortableSchemaNode({ node: child, schemaId: props.schemaId, visited: props.visited });\n\t}\n}\n\nexport function assertPortableContractSchemaIsExportable(\n\tprops: PortableSchemaExportabilityProps,\n): void {\n\tinspectPortableSchemaNode({ node: props.schema, schemaId: props.schemaId, visited: new Set() });\n}\n\nfunction normalizeCanonicalJsonValue(value: unknown): unknown {\n\tif (typeof value === 'number') {\n\t\treturn Object.is(value, -0) ? 0 : value;\n\t}\n\tif (Array.isArray(value)) {\n\t\treturn value.map((item) => normalizeCanonicalJsonValue(item));\n\t}\n\tif (isUnknownRecord(value)) {\n\t\treturn Object.fromEntries(\n\t\t\tObject.entries(value)\n\t\t\t\t.toSorted(([leftKey], [rightKey]) => leftKey.localeCompare(rightKey))\n\t\t\t\t.map(([key, childValue]) => [key, normalizeCanonicalJsonValue(childValue)]),\n\t\t);\n\t}\n\treturn value;\n}\n\nexport function encodeCanonicalJson(value: unknown): string {\n\tconst encodedValue = JSON.stringify(normalizeCanonicalJsonValue(value));\n\tif (encodedValue === undefined) {\n\t\tthrow new Error('Canonical JSON input must be JSON-serializable.');\n\t}\n\treturn encodedValue;\n}\n\nfunction mapPortableIssue(props: {\n\treadonly input: unknown;\n\treadonly issue: z.core.$ZodIssue;\n\treadonly schemaId: string;\n}): string {\n\tif (props.schemaId === 'portal.call.item-result') {\n\t\tconst firstPathSegment = props.issue.path?.[0];\n\t\tif (\n\t\t\tfirstPathSegment === 'outcome' ||\n\t\t\tfirstPathSegment === 'operationId' ||\n\t\t\tfirstPathSegment === 'owningGeneration'\n\t\t) {\n\t\t\treturn 'portal.result.outcome-algebra';\n\t\t}\n\t\tif (props.issue.code === 'unrecognized_keys' || props.issue.code === 'invalid_union') {\n\t\t\treturn 'portal.result.status-shape';\n\t\t}\n\t}\n\n\tif (props.issue.code === 'unrecognized_keys') {\n\t\treturn 'portable.object.unknown-field';\n\t}\n\tif (\n\t\tprops.issue.code === 'invalid_type' &&\n\t\tprops.issue.path?.length === 1 &&\n\t\tisUnknownRecord(props.input) &&\n\t\ttypeof props.issue.path[0] === 'string' &&\n\t\t!(props.issue.path[0] in props.input)\n\t) {\n\t\treturn 'portable.object.missing-field';\n\t}\n\tif (\n\t\tprops.issue.code === 'invalid_format' &&\n\t\t'format' in props.issue &&\n\t\tprops.issue.format === 'starts_with'\n\t) {\n\t\treturn 'portable.string.pattern';\n\t}\n\tif (props.issue.code === 'too_big' && props.issue.origin === 'number') {\n\t\treturn 'portable.number.above-maximum';\n\t}\n\tif (props.issue.code === 'custom') {\n\t\tif (props.issue.message.includes('decoded canonical base64 content')) {\n\t\t\treturn 'sandbox.binary-chunk.byte-length-mismatch';\n\t\t}\n\t\tif (props.issue.message.includes('duplicate variable name')) {\n\t\t\treturn 'sandbox.environment-variable.duplicate-name';\n\t\t}\n\t\tif (props.issue.message.includes('duplicate configured agent id')) {\n\t\t\treturn 'gateway.attachment.duplicate-agent-id';\n\t\t}\n\t\tif (props.issue.message.includes('Managed Agent Projection Tool Portal namespace names')) {\n\t\t\treturn 'gateway.managed-agent-projection.namespace-names';\n\t\t}\n\t\tif (props.issue.message.includes('server-selected work root')) {\n\t\t\treturn 'sandbox.path.not-work-relative';\n\t\t}\n\t\tif (props.issue.message.startsWith('Duplicate portal item id')) {\n\t\t\treturn 'portal.batch.unique-item-ids';\n\t\t}\n\t\tif (props.issue.message.includes('reserved object property name')) {\n\t\t\treturn 'portal.request-id.not-reserved';\n\t\t}\n\t\tif (props.issue.message.includes('maximum number of entries')) {\n\t\t\treturn 'portable.object.above-maximum';\n\t\t}\n\t\tif (props.issue.message.includes('ok must match item statuses')) {\n\t\t\treturn 'portal.result.aggregate-status';\n\t\t}\n\t}\n\treturn `portable.zod.${props.issue.code}`;\n}\n\nfunction createPortableContractAdapter(props: {\n\treadonly definition: PortableContractDefinition;\n\treadonly schemaId: string;\n}): PortableContractAdapter {\n\treturn {\n\t\tparse: (input): PortableContractParseResult => {\n\t\t\tif (containsUnsafeInteger(input)) {\n\t\t\t\treturn {\n\t\t\t\t\terrorCodes: ['portable.number.unsafe-integer'],\n\t\t\t\t\tkind: 'rejected',\n\t\t\t\t\trefinementIdentities: [\n\t\t\t\t\t\t...new Set([...props.definition.refinementIdentities, 'portal.number.safe-integer']),\n\t\t\t\t\t].toSorted((leftIdentity, rightIdentity) => leftIdentity.localeCompare(rightIdentity)),\n\t\t\t\t};\n\t\t\t}\n\t\t\tconst parsed = props.definition.schema.safeParse(input);\n\t\t\tconst refinementIdentities = (\n\t\t\t\tprops.definition.resolveRefinementIdentities?.({\n\t\t\t\t\tinput,\n\t\t\t\t\tparseSucceeded: parsed.success,\n\t\t\t\t}) ?? props.definition.refinementIdentities\n\t\t\t).toSorted((leftIdentity, rightIdentity) => leftIdentity.localeCompare(rightIdentity));\n\t\t\tif (!parsed.success) {\n\t\t\t\tconst errorCodes =\n\t\t\t\t\tprops.schemaId === 'portal.call.item-result' &&\n\t\t\t\t\tisUnknownRecord(input) &&\n\t\t\t\t\tcallItemHasStatusShapeConflict(input)\n\t\t\t\t\t\t? ['portal.result.status-shape']\n\t\t\t\t\t\t: [\n\t\t\t\t\t\t\t\t...new Set(\n\t\t\t\t\t\t\t\t\tparsed.error.issues.map((issue) =>\n\t\t\t\t\t\t\t\t\t\tmapPortableIssue({ input, issue, schemaId: props.schemaId }),\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t].toSorted((leftCode, rightCode) => leftCode.localeCompare(rightCode));\n\t\t\t\treturn {\n\t\t\t\t\terrorCodes,\n\t\t\t\t\tkind: 'rejected',\n\t\t\t\t\trefinementIdentities,\n\t\t\t\t};\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tkind: 'accepted',\n\t\t\t\tnormalized: normalizeCanonicalJsonValue(parsed.data),\n\t\t\t\trefinementIdentities,\n\t\t\t};\n\t\t},\n\t};\n}\n\nfunction callItemHasStatusShapeConflict(input: Record<string, unknown>): boolean {\n\treturn (\n\t\t(input['status'] === 'ok' && 'error' in input) ||\n\t\t(input['status'] === 'error' && 'value' in input)\n\t);\n}\n\nconst portableContractDefinitions = {\n\t'portal.artifact.read-request': {\n\t\trefinementIdentities: [],\n\t\tschema: PortalArtifactReadRequestSchema,\n\t},\n\t'portal.artifact.read-result': {\n\t\trefinementIdentities: ['portal.artifact-read.default-truncated'],\n\t\tschema: PortalArtifactReadResultSchema,\n\t},\n\t'portal.artifact.reference': {\n\t\trefinementIdentities: [],\n\t\tschema: ArtifactReferenceSchema,\n\t},\n\t'portal.call.item-result': {\n\t\trefinementIdentities: ['portal.request-id.not-reserved', 'portal.result.outcome-algebra'],\n\t\tresolveRefinementIdentities: ({ input }): readonly string[] => {\n\t\t\treturn isUnknownRecord(input) &&\n\t\t\t\t!callItemHasStatusShapeConflict(input) &&\n\t\t\t\t('outcome' in input || !('operationId' in input))\n\t\t\t\t? ['portal.request-id.not-reserved', 'portal.result.outcome-algebra']\n\t\t\t\t: ['portal.request-id.not-reserved'];\n\t\t},\n\t\tschema: PortalCallItemResultSchema,\n\t},\n\t'portal.call.request': {\n\t\trefinementIdentities: [\n\t\t\t'portal.batch.unique-item-ids',\n\t\t\t'portal.json.canonical',\n\t\t\t'portal.request-id.not-reserved',\n\t\t],\n\t\tresolveRefinementIdentities: ({ parseSucceeded }): readonly string[] => {\n\t\t\treturn parseSucceeded\n\t\t\t\t? [\n\t\t\t\t\t\t'portal.batch.unique-item-ids',\n\t\t\t\t\t\t'portal.json.canonical',\n\t\t\t\t\t\t'portal.request-id.not-reserved',\n\t\t\t\t\t]\n\t\t\t\t: ['portal.batch.unique-item-ids', 'portal.request-id.not-reserved'];\n\t\t},\n\t\tschema: PortalCallRequestSchema,\n\t},\n\t'portal.call.result': {\n\t\trefinementIdentities: [\n\t\t\t'portal.request-id.not-reserved',\n\t\t\t'portal.result.aggregate-status',\n\t\t\t'portal.result.outcome-algebra',\n\t\t],\n\t\tschema: PortalCallResultSchema,\n\t},\n\t'portal.describe.request': {\n\t\trefinementIdentities: [\n\t\t\t'portal.batch.unique-item-ids',\n\t\t\t'portal.describe.default-includes',\n\t\t\t'portal.request-id.not-reserved',\n\t\t],\n\t\tschema: PortalDescribeRequestSchema,\n\t},\n\t'portal.describe.result': {\n\t\trefinementIdentities: ['portal.request-id.not-reserved', 'portal.result.aggregate-status'],\n\t\tschema: PortalDescribeResultSchema,\n\t},\n\t'portal.json-value': {\n\t\trefinementIdentities: ['portal.json.canonical', 'portal.json.max-object-entries'],\n\t\tresolveRefinementIdentities: ({ input }): readonly string[] => {\n\t\t\treturn isUnknownRecord(input) && Object.keys(input).length > 1_000\n\t\t\t\t? ['portal.json.canonical', 'portal.json.max-object-entries']\n\t\t\t\t: ['portal.json.canonical'];\n\t\t},\n\t\tschema: JsonValueSchema,\n\t},\n\t'portal.list.request': {\n\t\trefinementIdentities: [\n\t\t\t'portal.batch.unique-item-ids',\n\t\t\t'portal.list.default-limit',\n\t\t\t'portal.request-id.not-reserved',\n\t\t],\n\t\tschema: PortalListRequestSchema,\n\t},\n\t'portal.list.result': {\n\t\trefinementIdentities: ['portal.request-id.not-reserved', 'portal.result.aggregate-status'],\n\t\tschema: PortalListResultSchema,\n\t},\n\t'portal.progress.event': {\n\t\trefinementIdentities: ['portal.request-id.not-reserved'],\n\t\tschema: PortalProgressEventSchema,\n\t},\n\t'portal.search.request': {\n\t\trefinementIdentities: [\n\t\t\t'portal.batch.unique-item-ids',\n\t\t\t'portal.request-id.not-reserved',\n\t\t\t'portal.search.default-limit',\n\t\t\t'portal.search.default-schema-detail',\n\t\t],\n\t\tschema: PortalSearchRequestSchema,\n\t},\n\t'portal.search.result': {\n\t\trefinementIdentities: ['portal.request-id.not-reserved', 'portal.result.aggregate-status'],\n\t\tschema: PortalSearchResultSchema,\n\t},\n} as const satisfies Readonly<Record<string, PortableContractDefinition>>;\n\nconst canonicalGatewayContractDefinitions = {\n\t'gateway.attachment.metadata': {\n\t\trefinementIdentities: ['gateway.attachment.unique-agent-ids'],\n\t\tschema: GatewayRuntimeAttachmentMetadataSchema,\n\t},\n\t'gateway.managed-agent-projection': {\n\t\trefinementIdentities: ['gateway.managed-agent-projection.namespace-names'],\n\t\tschema: ManagedAgentProjectionSchema,\n\t},\n\t'gateway.trusted-invocation-context': {\n\t\trefinementIdentities: [],\n\t\tschema: GatewayRuntimeTrustedInvocationContextSchema,\n\t},\n\t'sandbox.operation.control-result': {\n\t\trefinementIdentities: ['portal.result.outcome-algebra'],\n\t\tschema: SandboxOperationControlResultSchema,\n\t},\n\t'sandbox.operation.identity': {\n\t\trefinementIdentities: [],\n\t\tschema: SandboxOperationIdentitySchema,\n\t},\n\t'sandbox.retained-result.lookup-request': {\n\t\trefinementIdentities: [],\n\t\tschema: SandboxRetainedResultLookupRequestSchema,\n\t},\n\t'sandbox.retained-result.lookup-result': {\n\t\trefinementIdentities: ['portal.result.outcome-algebra'],\n\t\tschema: SandboxRetainedResultLookupResultSchema,\n\t},\n} as const satisfies Readonly<Record<string, PortableContractDefinition>>;\n\ninterface SandboxMethodPortableContractMetadata {\n\treadonly requestRefinementIdentities: readonly string[];\n\treadonly requestSchemaId: string;\n\treadonly resultRefinementIdentities: readonly string[];\n\treadonly resultSchemaId: string;\n}\n\nfunction resolveSandboxMethodPortableContractMetadata(props: {\n\treadonly method: string;\n\treadonly requestOnlyRefinementIdentities: readonly string[];\n\treadonly sharedRefinementIdentities: readonly string[];\n}): SandboxMethodPortableContractMetadata {\n\tif (props.method === 'sandbox.retained-result.lookup') {\n\t\treturn {\n\t\t\trequestRefinementIdentities: [\n\t\t\t\t...props.sharedRefinementIdentities,\n\t\t\t\t...props.requestOnlyRefinementIdentities,\n\t\t\t],\n\t\t\trequestSchemaId: 'sandbox.retained-result.lookup-request',\n\t\t\tresultRefinementIdentities: [\n\t\t\t\t...props.sharedRefinementIdentities,\n\t\t\t\t'portal.result.outcome-algebra',\n\t\t\t],\n\t\t\tresultSchemaId: 'sandbox.retained-result.lookup-result',\n\t\t};\n\t}\n\treturn {\n\t\trequestRefinementIdentities: [\n\t\t\t...props.sharedRefinementIdentities,\n\t\t\t...props.requestOnlyRefinementIdentities,\n\t\t],\n\t\trequestSchemaId: `${props.method}.request`,\n\t\tresultRefinementIdentities: props.sharedRefinementIdentities,\n\t\tresultSchemaId: `${props.method}.result`,\n\t};\n}\n\nfunction createSandboxMethodContractDefinitions(): Readonly<\n\tRecord<string, PortableContractDefinition>\n> {\n\tconst contractDefinitions: Record<string, PortableContractDefinition> = {};\n\tfor (const [method, contracts] of Object.entries(SANDBOX_METHOD_CONTRACTS)) {\n\t\tconst refinementIdentities: string[] = method.startsWith('sandbox.environment.')\n\t\t\t? ['sandbox.path.work-relative']\n\t\t\t: [];\n\t\tconst requestOnlyRefinementIdentities =\n\t\t\tmethod === 'sandbox.exec.start' || method === 'sandbox.process.start'\n\t\t\t\t? ['sandbox.environment-variable.unique-names']\n\t\t\t\t: [];\n\t\tif (\n\t\t\t[\n\t\t\t\t'sandbox.fs.read',\n\t\t\t\t'sandbox.fs.write',\n\t\t\t\t'sandbox.process.logs',\n\t\t\t\t'sandbox.stream.read',\n\t\t\t\t'sandbox.stream.write',\n\t\t\t].includes(method)\n\t\t) {\n\t\t\trefinementIdentities.push('sandbox.binary-chunk.byte-length');\n\t\t}\n\t\tconst metadata = resolveSandboxMethodPortableContractMetadata({\n\t\t\tmethod,\n\t\t\trequestOnlyRefinementIdentities,\n\t\t\tsharedRefinementIdentities: refinementIdentities,\n\t\t});\n\t\tcontractDefinitions[metadata.requestSchemaId] = {\n\t\t\trefinementIdentities: metadata.requestRefinementIdentities,\n\t\t\tschema: contracts.request,\n\t\t};\n\t\tcontractDefinitions[metadata.resultSchemaId] = {\n\t\t\trefinementIdentities: metadata.resultRefinementIdentities,\n\t\t\tschema: contracts.result,\n\t\t};\n\t}\n\treturn contractDefinitions;\n}\n\nconst sandboxMethodContractDefinitions = createSandboxMethodContractDefinitions();\n\nconst allPortableContractDefinitions: Readonly<Record<string, PortableContractDefinition>> = {\n\t...portableContractDefinitions,\n\t...canonicalGatewayContractDefinitions,\n\t...sandboxMethodContractDefinitions,\n};\n\nfor (const [schemaId, definition] of Object.entries(allPortableContractDefinitions)) {\n\tassertPortableContractSchemaIsExportable({ schema: definition.schema, schemaId });\n}\n\nexport function createPortableContractSchemaManifest(): Readonly<Record<string, unknown>> {\n\treturn {\n\t\tprotocolVersion: PORTABLE_CONTRACT_PROTOCOL_VERSION,\n\t\trefinements: PORTABLE_REFINEMENT_IDENTITIES,\n\t\tschemas: Object.fromEntries(\n\t\t\tObject.entries(allPortableContractDefinitions).map(([schemaId, definition]) => [\n\t\t\t\tschemaId,\n\t\t\t\t{\n\t\t\t\t\tjsonSchema: z.toJSONSchema(definition.schema, {\n\t\t\t\t\t\tio: 'input',\n\t\t\t\t\t\tunrepresentable: 'any',\n\t\t\t\t\t}),\n\t\t\t\t\trefinementIdentities: definition.refinementIdentities.toSorted(\n\t\t\t\t\t\t(leftIdentity, rightIdentity) => leftIdentity.localeCompare(rightIdentity),\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t]),\n\t\t),\n\t};\n}\n\nexport const PORTABLE_CONTRACT_ADAPTERS = Object.fromEntries(\n\tObject.entries(allPortableContractDefinitions).map(([schemaId, definition]) => [\n\t\tschemaId,\n\t\tcreatePortableContractAdapter({ definition, schemaId }),\n\t]),\n) satisfies Readonly<Record<string, PortableContractAdapter>>;\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"portable-refinement-authoring-CvlKRs_Z.js","names":[],"sources":["../src/portable-contracts/portable-refinement-descriptors.ts","../src/portable-contracts/portable-refinement-authoring.ts"],"sourcesContent":["export type PortableRefinementKind =\n\t| 'canonical-normalization'\n\t| 'cross-field-validation'\n\t| 'default'\n\t| 'structural-validation';\n\nexport type PortableRefinementOperation =\n\t| {\n\t\t\treadonly kind: 'aggregate-status';\n\t\t\treadonly itemsField: string;\n\t\t\treadonly okField: string;\n\t }\n\t| { readonly kind: 'decoded-base64-byte-length' }\n\t| {\n\t\t\treadonly collectionPaths: readonly string[];\n\t\t\treadonly fieldName: string;\n\t\t\treadonly kind: 'unique-field';\n\t }\n\t| {\n\t\t\treadonly kind: 'default-values';\n\t\t\treadonly values: Readonly<Record<string, boolean | number | string>>;\n\t }\n\t| {\n\t\t\treadonly kind: 'canonical-json';\n\t\t\treadonly maximumArrayItems: number;\n\t\t\treadonly maximumObjectEntries: number;\n\t\t\treadonly maximumObjectKeyCharacters: number;\n\t\t\treadonly maximumStringCharacters: number;\n\t }\n\t| {\n\t\t\treadonly kind: 'maximum-object-entries';\n\t\t\treadonly maximum: number;\n\t }\n\t| {\n\t\t\treadonly fieldNames: readonly string[];\n\t\t\treadonly kind: 'reject-reserved-values';\n\t\t\treadonly values: readonly string[];\n\t }\n\t| {\n\t\t\treadonly kind: 'safe-integer';\n\t\t\treadonly maximum: number;\n\t\t\treadonly minimum: number;\n\t }\n\t| { readonly kind: 'sorted-unique-string-items'; readonly path: string }\n\t| { readonly kind: 'terminal-outcome-algebra' }\n\t| { readonly kind: 'unique-string-items'; readonly path: string }\n\t| { readonly fieldNames: readonly string[]; readonly kind: 'work-relative-path' };\n\nexport interface PortableRefinementDescriptor {\n\treadonly description: string;\n\treadonly errorCode?: string;\n\treadonly identity: string;\n\treadonly kind: PortableRefinementKind;\n\treadonly operation: PortableRefinementOperation;\n}\n\nexport const PORTABLE_REFINEMENT_DESCRIPTORS = [\n\t{\n\t\tdescription: 'Artifact reads default omitted truncation state to false.',\n\t\tidentity: 'portal.artifact-read.default-truncated',\n\t\tkind: 'default',\n\t\toperation: { kind: 'default-values', values: { '/truncated': false } },\n\t},\n\t{\n\t\tdescription: 'Every item id in one portal batch must be unique.',\n\t\terrorCode: 'portal.batch.unique-item-ids',\n\t\tidentity: 'portal.batch.unique-item-ids',\n\t\tkind: 'cross-field-validation',\n\t\toperation: { collectionPaths: ['calls', 'requests'], fieldName: 'id', kind: 'unique-field' },\n\t},\n\t{\n\t\tdescription: 'Describe requests apply the portable inclusion defaults.',\n\t\tidentity: 'portal.describe.default-includes',\n\t\tkind: 'default',\n\t\toperation: {\n\t\t\tkind: 'default-values',\n\t\t\tvalues: {\n\t\t\t\t'/requests/*/includeJsonSchema': true,\n\t\t\t\t'/requests/*/includeRelated': true,\n\t\t\t\t'/requests/*/includeTypescriptHelper': false,\n\t\t\t\t'/requests/*/includeZod': false,\n\t\t\t},\n\t\t},\n\t},\n\t{\n\t\tdescription: 'JSON values use sorted object keys and normalize negative zero.',\n\t\tidentity: 'portal.json.canonical',\n\t\tkind: 'canonical-normalization',\n\t\toperation: {\n\t\t\tkind: 'canonical-json',\n\t\t\tmaximumArrayItems: 1_000,\n\t\t\tmaximumObjectEntries: 1_000,\n\t\t\tmaximumObjectKeyCharacters: 256,\n\t\t\tmaximumStringCharacters: 64 * 1_024,\n\t\t},\n\t},\n\t{\n\t\tdescription: 'JSON objects cannot contain more than one thousand entries.',\n\t\terrorCode: 'portable.object.above-maximum',\n\t\tidentity: 'portal.json.max-object-entries',\n\t\tkind: 'structural-validation',\n\t\toperation: { kind: 'maximum-object-entries', maximum: 1_000 },\n\t},\n\t{\n\t\tdescription: 'List requests default omitted limits to twenty items.',\n\t\tidentity: 'portal.list.default-limit',\n\t\tkind: 'default',\n\t\toperation: { kind: 'default-values', values: { '/requests/*/limit': 20 } },\n\t},\n\t{\n\t\tdescription: 'Portable integer values remain inside the interoperable safe-integer range.',\n\t\terrorCode: 'portable.number.unsafe-integer',\n\t\tidentity: 'portal.number.safe-integer',\n\t\tkind: 'structural-validation',\n\t\toperation: {\n\t\t\tkind: 'safe-integer',\n\t\t\tmaximum: Number.MAX_SAFE_INTEGER,\n\t\t\tminimum: Number.MIN_SAFE_INTEGER,\n\t\t},\n\t},\n\t{\n\t\tdescription: 'Portal request ids cannot use reserved object property names.',\n\t\terrorCode: 'portal.request-id.not-reserved',\n\t\tidentity: 'portal.request-id.not-reserved',\n\t\tkind: 'structural-validation',\n\t\toperation: {\n\t\t\tfieldNames: ['id', 'requestId'],\n\t\t\tkind: 'reject-reserved-values',\n\t\t\tvalues: ['__proto__', 'constructor', 'prototype'],\n\t\t},\n\t},\n\t{\n\t\tdescription: 'Aggregate success must equal the success of every result item.',\n\t\terrorCode: 'portal.result.aggregate-status',\n\t\tidentity: 'portal.result.aggregate-status',\n\t\tkind: 'cross-field-validation',\n\t\toperation: { itemsField: 'items', kind: 'aggregate-status', okField: 'ok' },\n\t},\n\t{\n\t\tdescription: 'Call results use the normative terminal outcome algebra.',\n\t\terrorCode: 'portal.result.outcome-algebra',\n\t\tidentity: 'portal.result.outcome-algebra',\n\t\tkind: 'structural-validation',\n\t\toperation: { kind: 'terminal-outcome-algebra' },\n\t},\n\t{\n\t\tdescription: 'Search requests default omitted limits to ten items.',\n\t\tidentity: 'portal.search.default-limit',\n\t\tkind: 'default',\n\t\toperation: { kind: 'default-values', values: { '/requests/*/limit': 10 } },\n\t},\n\t{\n\t\tdescription: 'Search requests default omitted schema detail to summary.',\n\t\tidentity: 'portal.search.default-schema-detail',\n\t\tkind: 'default',\n\t\toperation: {\n\t\t\tkind: 'default-values',\n\t\t\tvalues: { '/requests/*/schemaDetail': 'summary' },\n\t\t},\n\t},\n\t{\n\t\tdescription: 'Gateway attachment metadata cannot repeat an admitted agent identity.',\n\t\terrorCode: 'gateway.attachment.duplicate-agent-id',\n\t\tidentity: 'gateway.attachment.unique-agent-ids',\n\t\tkind: 'cross-field-validation',\n\t\toperation: { kind: 'unique-string-items', path: 'configuredAgentIds' },\n\t},\n\t{\n\t\tdescription: 'Managed Agent Projection namespace names must be sorted and unique.',\n\t\terrorCode: 'gateway.managed-agent-projection.namespace-names',\n\t\tidentity: 'gateway.managed-agent-projection.namespace-names',\n\t\tkind: 'cross-field-validation',\n\t\toperation: { kind: 'sorted-unique-string-items', path: 'toolPortalNamespaceNames' },\n\t},\n\t{\n\t\tdescription: 'Binary chunk byte length equals the decoded canonical base64 payload length.',\n\t\terrorCode: 'sandbox.binary-chunk.byte-length-mismatch',\n\t\tidentity: 'sandbox.binary-chunk.byte-length',\n\t\tkind: 'cross-field-validation',\n\t\toperation: { kind: 'decoded-base64-byte-length' },\n\t},\n\t{\n\t\tdescription: 'Direct Sandbox environment variable names must be unique.',\n\t\terrorCode: 'sandbox.environment-variable.duplicate-name',\n\t\tidentity: 'sandbox.environment-variable.unique-names',\n\t\tkind: 'cross-field-validation',\n\t\toperation: {\n\t\t\tcollectionPaths: ['environmentVariables'],\n\t\t\tfieldName: 'name',\n\t\t\tkind: 'unique-field',\n\t\t},\n\t},\n\t{\n\t\tdescription: 'Sandbox paths are relative to the server-selected work root.',\n\t\terrorCode: 'sandbox.path.not-work-relative',\n\t\tidentity: 'sandbox.path.work-relative',\n\t\tkind: 'structural-validation',\n\t\toperation: {\n\t\t\tfieldNames: ['destinationPath', 'logicalCwd', 'path', 'sourcePath'],\n\t\t\tkind: 'work-relative-path',\n\t\t},\n\t},\n] as const satisfies readonly PortableRefinementDescriptor[];\n\nexport const PORTABLE_REFINEMENT_IDENTITIES: readonly string[] =\n\tPORTABLE_REFINEMENT_DESCRIPTORS.map((descriptor) => descriptor.identity).toSorted(\n\t\t(leftIdentity, rightIdentity) => leftIdentity.localeCompare(rightIdentity),\n\t);\n","import type { z } from 'zod';\n\nimport { PORTABLE_REFINEMENT_DESCRIPTORS } from './portable-refinement-descriptors.js';\n\nconst portableRefinementIdentities: ReadonlySet<string> = new Set(\n\tPORTABLE_REFINEMENT_DESCRIPTORS.map((descriptor) => descriptor.identity),\n);\nconst portableRefinementIdentityByCheck = new WeakMap<object, string>();\n\nexport interface PortableSuperRefinementProps<TSchema extends z.ZodType> {\n\treadonly refinement: (value: z.output<TSchema>, context: z.RefinementCtx) => void;\n\treadonly refinementIdentity: string;\n\treadonly schema: TSchema;\n}\n\nexport function withPortableSuperRefinement<TSchema extends z.ZodType>(\n\tprops: PortableSuperRefinementProps<TSchema>,\n): TSchema {\n\tif (!portableRefinementIdentities.has(props.refinementIdentity)) {\n\t\tthrow new Error(`Portable refinement ${props.refinementIdentity} is not registered.`);\n\t}\n\t// oxlint-disable-next-line no-underscore-dangle -- Zod v4 exposes schema definitions through its library-author core contract.\n\tconst existingChecks = new Set(props.schema._zod.def.checks ?? []);\n\tconst refinedSchema = props.schema.superRefine(props.refinement);\n\t// oxlint-disable-next-line no-underscore-dangle -- Match the one check added by the named authoring helper.\n\tconst addedChecks = (refinedSchema._zod.def.checks ?? []).filter(\n\t\t(check) => !existingChecks.has(check),\n\t);\n\tif (addedChecks.length !== 1) {\n\t\tthrow new Error(\n\t\t\t`Portable refinement ${props.refinementIdentity} must add exactly one Zod check.`,\n\t\t);\n\t}\n\tconst addedCheck = addedChecks[0];\n\tif (addedCheck === undefined) {\n\t\tthrow new Error(`Portable refinement ${props.refinementIdentity} added no Zod check.`);\n\t}\n\tportableRefinementIdentityByCheck.set(addedCheck, props.refinementIdentity);\n\treturn refinedSchema;\n}\n\nexport function portableRefinementIdentityForCheck(check: object): string | undefined {\n\treturn portableRefinementIdentityByCheck.get(check);\n}\n"],"mappings":";AAwDA,MAAa,kCAAkC;CAC9C;EACC,aAAa;EACb,UAAU;EACV,MAAM;EACN,WAAW;GAAE,MAAM;GAAkB,QAAQ,EAAE,cAAc,OAAO;GAAE;EACtE;CACD;EACC,aAAa;EACb,WAAW;EACX,UAAU;EACV,MAAM;EACN,WAAW;GAAE,iBAAiB,CAAC,SAAS,WAAW;GAAE,WAAW;GAAM,MAAM;GAAgB;EAC5F;CACD;EACC,aAAa;EACb,UAAU;EACV,MAAM;EACN,WAAW;GACV,MAAM;GACN,QAAQ;IACP,iCAAiC;IACjC,8BAA8B;IAC9B,uCAAuC;IACvC,0BAA0B;IAC1B;GACD;EACD;CACD;EACC,aAAa;EACb,UAAU;EACV,MAAM;EACN,WAAW;GACV,MAAM;GACN,mBAAmB;GACnB,sBAAsB;GACtB,4BAA4B;GAC5B,yBAAyB,KAAK;GAC9B;EACD;CACD;EACC,aAAa;EACb,WAAW;EACX,UAAU;EACV,MAAM;EACN,WAAW;GAAE,MAAM;GAA0B,SAAS;GAAO;EAC7D;CACD;EACC,aAAa;EACb,UAAU;EACV,MAAM;EACN,WAAW;GAAE,MAAM;GAAkB,QAAQ,EAAE,qBAAqB,IAAI;GAAE;EAC1E;CACD;EACC,aAAa;EACb,WAAW;EACX,UAAU;EACV,MAAM;EACN,WAAW;GACV,MAAM;GACN,SAAS,OAAO;GAChB,SAAS,OAAO;GAChB;EACD;CACD;EACC,aAAa;EACb,WAAW;EACX,UAAU;EACV,MAAM;EACN,WAAW;GACV,YAAY,CAAC,MAAM,YAAY;GAC/B,MAAM;GACN,QAAQ;IAAC;IAAa;IAAe;IAAY;GACjD;EACD;CACD;EACC,aAAa;EACb,WAAW;EACX,UAAU;EACV,MAAM;EACN,WAAW;GAAE,YAAY;GAAS,MAAM;GAAoB,SAAS;GAAM;EAC3E;CACD;EACC,aAAa;EACb,WAAW;EACX,UAAU;EACV,MAAM;EACN,WAAW,EAAE,MAAM,4BAA4B;EAC/C;CACD;EACC,aAAa;EACb,UAAU;EACV,MAAM;EACN,WAAW;GAAE,MAAM;GAAkB,QAAQ,EAAE,qBAAqB,IAAI;GAAE;EAC1E;CACD;EACC,aAAa;EACb,UAAU;EACV,MAAM;EACN,WAAW;GACV,MAAM;GACN,QAAQ,EAAE,4BAA4B,WAAW;GACjD;EACD;CACD;EACC,aAAa;EACb,WAAW;EACX,UAAU;EACV,MAAM;EACN,WAAW;GAAE,MAAM;GAAuB,MAAM;GAAsB;EACtE;CACD;EACC,aAAa;EACb,WAAW;EACX,UAAU;EACV,MAAM;EACN,WAAW;GAAE,MAAM;GAA8B,MAAM;GAA4B;EACnF;CACD;EACC,aAAa;EACb,WAAW;EACX,UAAU;EACV,MAAM;EACN,WAAW,EAAE,MAAM,8BAA8B;EACjD;CACD;EACC,aAAa;EACb,WAAW;EACX,UAAU;EACV,MAAM;EACN,WAAW;GACV,iBAAiB,CAAC,uBAAuB;GACzC,WAAW;GACX,MAAM;GACN;EACD;CACD;EACC,aAAa;EACb,WAAW;EACX,UAAU;EACV,MAAM;EACN,WAAW;GACV,YAAY;IAAC;IAAmB;IAAc;IAAQ;IAAa;GACnE,MAAM;GACN;EACD;CACD;AAED,MAAa,iCACZ,gCAAgC,KAAK,eAAe,WAAW,SAAS,CAAC,UACvE,cAAc,kBAAkB,aAAa,cAAc,cAAc,CAC1E;;;AC3MF,MAAM,+BAAoD,IAAI,IAC7D,gCAAgC,KAAK,eAAe,WAAW,SAAS,CACxE;AACD,MAAM,oDAAoC,IAAI,SAAyB;AAQvE,SAAgB,4BACf,OACU;CACV,IAAI,CAAC,6BAA6B,IAAI,MAAM,mBAAmB,EAC9D,MAAM,IAAI,MAAM,uBAAuB,MAAM,mBAAmB,qBAAqB;CAGtF,MAAM,iBAAiB,IAAI,IAAI,MAAM,OAAO,KAAK,IAAI,UAAU,EAAE,CAAC;CAClE,MAAM,gBAAgB,MAAM,OAAO,YAAY,MAAM,WAAW;CAEhE,MAAM,eAAe,cAAc,KAAK,IAAI,UAAU,EAAE,EAAE,QACxD,UAAU,CAAC,eAAe,IAAI,MAAM,CACrC;CACD,IAAI,YAAY,WAAW,GAC1B,MAAM,IAAI,MACT,uBAAuB,MAAM,mBAAmB,kCAChD;CAEF,MAAM,aAAa,YAAY;CAC/B,IAAI,eAAe,KAAA,GAClB,MAAM,IAAI,MAAM,uBAAuB,MAAM,mBAAmB,sBAAsB;CAEvF,kCAAkC,IAAI,YAAY,MAAM,mBAAmB;CAC3E,OAAO;;AAGR,SAAgB,mCAAmC,OAAmC;CACrF,OAAO,kCAAkC,IAAI,MAAM"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"portal-call-result-schema-CVWMGu2y.js","names":[],"sources":["../src/portal-call-surface/models/portal-call-result-schema.ts"],"sourcesContent":["import { z } from 'zod';\n\nimport { ArtifactReferenceSchema } from '../../artifact-surface/models/artifact-reference-schema.js';\nimport {\n\tCapabilityDescriptorSchema,\n\tCapabilitySearchMatchSchema,\n\tCapabilitySummarySchema,\n} from '../../capability-description-surface/models/capability-descriptor-schema.js';\nimport { JsonValueSchema } from '../../contract-primitives/models/json-value-schema.js';\nimport { ItemIdSchema } from '../../contract-primitives/models/request-id-schema.js';\nimport { withPortableSuperRefinement } from '../../portable-contracts/portable-refinement-authoring.js';\nimport { SafeDiagnosticSchema } from '../../portal-event-surface/models/safe-diagnostic-schema.js';\nimport { PortalErrorSchema } from './portal-error-schema.js';\n\nexport const TruncationMetadataSchema = z\n\t.object({\n\t\tomittedBytes: z.number().int().nonnegative().optional(),\n\t\ttruncated: z.boolean(),\n\t})\n\t.strict();\n\n// oxlint-disable-next-line explicit-function-return-type -- Preserve the exact Zod discriminated-union inference for each operation-specific result schema.\nfunction createPortalItemResultSchema<TValueSchema extends z.ZodType>(valueSchema: TValueSchema) {\n\treturn z.discriminatedUnion('status', [\n\t\tz\n\t\t\t.object({\n\t\t\t\tartifacts: z.array(ArtifactReferenceSchema).optional(),\n\t\t\t\tdiagnostics: z.array(SafeDiagnosticSchema).optional(),\n\t\t\t\tid: ItemIdSchema,\n\t\t\t\tstatus: z.literal('ok'),\n\t\t\t\ttruncation: TruncationMetadataSchema.optional(),\n\t\t\t\tvalue: valueSchema,\n\t\t\t})\n\t\t\t.strict(),\n\t\tz\n\t\t\t.object({\n\t\t\t\tdiagnostics: z.array(SafeDiagnosticSchema).optional(),\n\t\t\t\terror: PortalErrorSchema,\n\t\t\t\tid: ItemIdSchema,\n\t\t\t\tstatus: z.literal('error'),\n\t\t\t})\n\t\t\t.strict(),\n\t]);\n}\n\nconst CompletedSucceededOutcomeSchema = z\n\t.object({\n\t\tcertainty: z.literal('proven'),\n\t\tcompletion: z.literal('succeeded'),\n\t\tkind: z.literal('completed'),\n\t\tretryClass: z.literal('forbidden'),\n\t})\n\t.strict();\n\nconst CompletedFailedOutcomeSchema = z\n\t.object({\n\t\tcertainty: z.literal('proven'),\n\t\tcompletion: z.literal('failed'),\n\t\tkind: z.literal('completed'),\n\t\tretryClass: z.enum(['forbidden', 'policy-gated']),\n\t})\n\t.strict();\n\nconst NotDispatchedOutcomeSchema = z\n\t.object({\n\t\tcertainty: z.literal('proven'),\n\t\tkind: z.literal('not-dispatched'),\n\t\tretryClass: z.literal('safe-before-dispatch'),\n\t})\n\t.strict();\n\nconst ProvenTerminatedOutcomeSchema = z.union([\n\tz\n\t\t.object({\n\t\t\tcertainty: z.literal('proven-terminated'),\n\t\t\tkind: z.literal('cancelled-proven'),\n\t\t\tretryClass: z.literal('manual-only'),\n\t\t})\n\t\t.strict(),\n\tz\n\t\t.object({\n\t\t\tcertainty: z.literal('proven-terminated'),\n\t\t\tkind: z.literal('timed-out-proven'),\n\t\t\tretryClass: z.literal('manual-only'),\n\t\t})\n\t\t.strict(),\n\tz\n\t\t.object({\n\t\t\tcertainty: z.literal('proven-terminated'),\n\t\t\tkind: z.literal('replaced-proven'),\n\t\t\tpriorSideEffects: z.literal('possible'),\n\t\t\tretryClass: z.literal('manual-only'),\n\t\t})\n\t\t.strict(),\n]);\n\nconst AmbiguousOutcomeSchema = z\n\t.object({\n\t\tcertainty: z.literal('side-effects-and-termination-unknown'),\n\t\tkind: z.literal('ambiguous'),\n\t\tretryClass: z.literal('forbidden'),\n\t})\n\t.strict();\n\nconst TerminalErrorOutcomeSchema = z.union([\n\tNotDispatchedOutcomeSchema,\n\tCompletedFailedOutcomeSchema,\n\tProvenTerminatedOutcomeSchema,\n\tAmbiguousOutcomeSchema,\n]);\n\nexport const PortalApprovalChallengeSchema = z\n\t.object({\n\t\tchallengeId: z.string().uuid(),\n\t\texpiresAt: z.string().datetime(),\n\t})\n\t.strict();\n\nexport const PortalApprovalRequiredCallItemResultSchema = z\n\t.object({\n\t\tapprovalChallenge: PortalApprovalChallengeSchema,\n\t\terror: PortalErrorSchema.extend({ code: z.literal('approval_required') }).strict(),\n\t\tid: ItemIdSchema,\n\t\toperationId: z.string().min(1),\n\t\toutcome: NotDispatchedOutcomeSchema,\n\t\towningGeneration: z.string().min(1),\n\t\tstatus: z.literal('approval_required'),\n\t})\n\t.strict();\n\nexport const PortalCallItemResultSchema = z.discriminatedUnion('status', [\n\tz\n\t\t.object({\n\t\t\tartifacts: z.array(ArtifactReferenceSchema).optional(),\n\t\t\tdiagnostics: z.array(SafeDiagnosticSchema).optional(),\n\t\t\tid: ItemIdSchema,\n\t\t\toperationId: z.string().min(1),\n\t\t\toutcome: CompletedSucceededOutcomeSchema,\n\t\t\towningGeneration: z.string().min(1),\n\t\t\tstatus: z.literal('ok'),\n\t\t\ttruncation: TruncationMetadataSchema.optional(),\n\t\t\tvalue: JsonValueSchema,\n\t\t})\n\t\t.strict(),\n\tz\n\t\t.object({\n\t\t\tdiagnostics: z.array(SafeDiagnosticSchema).optional(),\n\t\t\terror: PortalErrorSchema,\n\t\t\tid: ItemIdSchema,\n\t\t\toperationId: z.string().min(1),\n\t\t\toutcome: TerminalErrorOutcomeSchema,\n\t\t\towningGeneration: z.string().min(1),\n\t\t\tstatus: z.literal('error'),\n\t\t})\n\t\t.strict(),\n\tPortalApprovalRequiredCallItemResultSchema,\n]);\n\n// oxlint-disable-next-line explicit-function-return-type -- Preserve the exact Zod object inference derived from the item schema.\nfunction createPortalResultSchema<TItemSchema extends z.ZodType<{ readonly status: string }>>(\n\titemSchema: TItemSchema,\n) {\n\treturn withPortableSuperRefinement({\n\t\trefinement: (result, context) => {\n\t\t\tconst allItemsSucceeded = result.items.every((item) => item.status === 'ok');\n\t\t\tif (result.ok !== allItemsSucceeded) {\n\t\t\t\tcontext.addIssue({\n\t\t\t\t\tcode: z.ZodIssueCode.custom,\n\t\t\t\t\tmessage: 'Portal result ok must match item statuses.',\n\t\t\t\t\tpath: ['ok'],\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\trefinementIdentity: 'portal.result.aggregate-status',\n\t\tschema: z\n\t\t\t.object({\n\t\t\t\tauditCorrelationId: z.string().min(1).optional(),\n\t\t\t\tdiagnostics: z.array(SafeDiagnosticSchema).optional(),\n\t\t\t\titems: z.array(itemSchema),\n\t\t\t\tok: z.boolean(),\n\t\t\t})\n\t\t\t.strict(),\n\t});\n}\n\nexport const PortalListItemValueSchema = z\n\t.object({\n\t\tnamespaces: z.array(z.string().min(1)),\n\t\tnextCursor: z.string().regex(/^\\d+$/u).optional(),\n\t\ttools: z.array(CapabilitySummarySchema),\n\t})\n\t.strict();\n\nexport const PortalSearchItemValueSchema = z\n\t.object({\n\t\ttools: z.array(CapabilitySearchMatchSchema),\n\t})\n\t.strict();\n\nexport const PortalDescribeItemValueSchema = z\n\t.object({\n\t\ttools: z.array(CapabilityDescriptorSchema),\n\t})\n\t.strict();\n\nexport const PortalListItemResultSchema = createPortalItemResultSchema(PortalListItemValueSchema);\nexport const PortalSearchItemResultSchema = createPortalItemResultSchema(\n\tPortalSearchItemValueSchema,\n);\nexport const PortalDescribeItemResultSchema = createPortalItemResultSchema(\n\tPortalDescribeItemValueSchema,\n);\n\nexport const PortalCallResultSchema = createPortalResultSchema(PortalCallItemResultSchema);\n\nexport type PortalCallResult = z.infer<typeof PortalCallResultSchema>;\n\nexport const PortalListResultSchema = createPortalResultSchema(PortalListItemResultSchema);\nexport type PortalListResult = z.infer<typeof PortalListResultSchema>;\n\nexport const PortalSearchResultSchema = createPortalResultSchema(PortalSearchItemResultSchema);\nexport type PortalSearchResult = z.infer<typeof PortalSearchResultSchema>;\n\nexport const PortalDescribeResultSchema = createPortalResultSchema(PortalDescribeItemResultSchema);\nexport type PortalDescribeResult = z.infer<typeof PortalDescribeResultSchema>;\n\nexport const PortalGenericItemResultSchema = z.discriminatedUnion('status', [\n\tz\n\t\t.object({\n\t\t\tartifacts: z.array(ArtifactReferenceSchema).optional(),\n\t\t\tdiagnostics: z.array(SafeDiagnosticSchema).optional(),\n\t\t\tid: ItemIdSchema,\n\t\t\tstatus: z.literal('ok'),\n\t\t\ttruncation: TruncationMetadataSchema.optional(),\n\t\t\tvalue: JsonValueSchema,\n\t\t})\n\t\t.strict(),\n\tz\n\t\t.object({\n\t\t\tdiagnostics: z.array(SafeDiagnosticSchema).optional(),\n\t\t\terror: PortalErrorSchema,\n\t\t\tid: ItemIdSchema,\n\t\t\tstatus: z.literal('error'),\n\t\t})\n\t\t.strict(),\n]);\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"portal-call-result-schema-DalyNrfW.d.ts","names":[],"sources":["../src/portal-call-surface/models/portal-call-request-schema.ts","../src/portal-call-surface/models/portal-call-result-schema.ts"],"mappings":"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"}