@agirails/sdk 3.3.0 → 3.5.3

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 (130) hide show
  1. package/dist/api/agirailsApp.d.ts +21 -1
  2. package/dist/api/agirailsApp.d.ts.map +1 -1
  3. package/dist/api/agirailsApp.js.map +1 -1
  4. package/dist/builders/CounterAcceptBuilder.d.ts +96 -0
  5. package/dist/builders/CounterAcceptBuilder.d.ts.map +1 -0
  6. package/dist/builders/CounterAcceptBuilder.js +226 -0
  7. package/dist/builders/CounterAcceptBuilder.js.map +1 -0
  8. package/dist/builders/CounterOfferBuilder.d.ts +143 -0
  9. package/dist/builders/CounterOfferBuilder.d.ts.map +1 -0
  10. package/dist/builders/CounterOfferBuilder.js +329 -0
  11. package/dist/builders/CounterOfferBuilder.js.map +1 -0
  12. package/dist/builders/QuoteBuilder.d.ts +9 -3
  13. package/dist/builders/QuoteBuilder.d.ts.map +1 -1
  14. package/dist/builders/QuoteBuilder.js +22 -6
  15. package/dist/builders/QuoteBuilder.js.map +1 -1
  16. package/dist/builders/index.d.ts +2 -0
  17. package/dist/builders/index.d.ts.map +1 -1
  18. package/dist/builders/index.js +7 -1
  19. package/dist/builders/index.js.map +1 -1
  20. package/dist/cli/agirails.js +22 -2
  21. package/dist/cli/agirails.js.map +1 -1
  22. package/dist/cli/commands/agent.d.ts +22 -0
  23. package/dist/cli/commands/agent.d.ts.map +1 -0
  24. package/dist/cli/commands/agent.js +209 -0
  25. package/dist/cli/commands/agent.js.map +1 -0
  26. package/dist/cli/commands/health.js +21 -5
  27. package/dist/cli/commands/health.js.map +1 -1
  28. package/dist/cli/commands/init.d.ts.map +1 -1
  29. package/dist/cli/commands/init.js +25 -5
  30. package/dist/cli/commands/init.js.map +1 -1
  31. package/dist/cli/commands/publish.d.ts +34 -0
  32. package/dist/cli/commands/publish.d.ts.map +1 -1
  33. package/dist/cli/commands/publish.js +256 -80
  34. package/dist/cli/commands/publish.js.map +1 -1
  35. package/dist/cli/commands/repair.d.ts +23 -0
  36. package/dist/cli/commands/repair.d.ts.map +1 -0
  37. package/dist/cli/commands/repair.js +210 -0
  38. package/dist/cli/commands/repair.js.map +1 -0
  39. package/dist/cli/commands/serve.d.ts +38 -0
  40. package/dist/cli/commands/serve.d.ts.map +1 -0
  41. package/dist/cli/commands/serve.js +308 -0
  42. package/dist/cli/commands/serve.js.map +1 -0
  43. package/dist/cli/commands/test.js +2 -2
  44. package/dist/cli/commands/test.js.map +1 -1
  45. package/dist/cli/index.js +10 -0
  46. package/dist/cli/index.js.map +1 -1
  47. package/dist/config/agirailsmdV4.d.ts +46 -1
  48. package/dist/config/agirailsmdV4.d.ts.map +1 -1
  49. package/dist/config/agirailsmdV4.js +65 -8
  50. package/dist/config/agirailsmdV4.js.map +1 -1
  51. package/dist/config/defaults.d.ts +10 -0
  52. package/dist/config/defaults.d.ts.map +1 -1
  53. package/dist/config/defaults.js +10 -0
  54. package/dist/config/defaults.js.map +1 -1
  55. package/dist/config/networks.d.ts.map +1 -1
  56. package/dist/config/networks.js +7 -1
  57. package/dist/config/networks.js.map +1 -1
  58. package/dist/config/publishPipeline.d.ts +23 -1
  59. package/dist/config/publishPipeline.d.ts.map +1 -1
  60. package/dist/config/publishPipeline.js +70 -15
  61. package/dist/config/publishPipeline.js.map +1 -1
  62. package/dist/index.d.ts +26 -0
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/index.js +39 -3
  65. package/dist/index.js.map +1 -1
  66. package/dist/level1/Agent.d.ts +27 -0
  67. package/dist/level1/Agent.d.ts.map +1 -1
  68. package/dist/level1/Agent.js +77 -6
  69. package/dist/level1/Agent.js.map +1 -1
  70. package/dist/negotiation/BuyerOrchestrator.d.ts +115 -1
  71. package/dist/negotiation/BuyerOrchestrator.d.ts.map +1 -1
  72. package/dist/negotiation/BuyerOrchestrator.js +530 -4
  73. package/dist/negotiation/BuyerOrchestrator.js.map +1 -1
  74. package/dist/negotiation/DecisionEngine.d.ts +69 -1
  75. package/dist/negotiation/DecisionEngine.d.ts.map +1 -1
  76. package/dist/negotiation/DecisionEngine.js +140 -1
  77. package/dist/negotiation/DecisionEngine.js.map +1 -1
  78. package/dist/negotiation/MockChannel.d.ts +63 -0
  79. package/dist/negotiation/MockChannel.d.ts.map +1 -0
  80. package/dist/negotiation/MockChannel.js +175 -0
  81. package/dist/negotiation/MockChannel.js.map +1 -0
  82. package/dist/negotiation/NegotiationChannel.d.ts +142 -0
  83. package/dist/negotiation/NegotiationChannel.d.ts.map +1 -0
  84. package/dist/negotiation/NegotiationChannel.js +59 -0
  85. package/dist/negotiation/NegotiationChannel.js.map +1 -0
  86. package/dist/negotiation/PolicyEngine.d.ts +32 -0
  87. package/dist/negotiation/PolicyEngine.d.ts.map +1 -1
  88. package/dist/negotiation/PolicyEngine.js.map +1 -1
  89. package/dist/negotiation/ProviderOrchestrator.d.ts +158 -0
  90. package/dist/negotiation/ProviderOrchestrator.d.ts.map +1 -0
  91. package/dist/negotiation/ProviderOrchestrator.js +286 -0
  92. package/dist/negotiation/ProviderOrchestrator.js.map +1 -0
  93. package/dist/negotiation/ProviderPolicy.d.ts +188 -0
  94. package/dist/negotiation/ProviderPolicy.d.ts.map +1 -0
  95. package/dist/negotiation/ProviderPolicy.js +259 -0
  96. package/dist/negotiation/ProviderPolicy.js.map +1 -0
  97. package/dist/negotiation/RelayChannel.d.ts +59 -0
  98. package/dist/negotiation/RelayChannel.d.ts.map +1 -0
  99. package/dist/negotiation/RelayChannel.js +208 -0
  100. package/dist/negotiation/RelayChannel.js.map +1 -0
  101. package/dist/negotiation/index.d.ts +8 -1
  102. package/dist/negotiation/index.d.ts.map +1 -1
  103. package/dist/negotiation/index.js +8 -1
  104. package/dist/negotiation/index.js.map +1 -1
  105. package/dist/negotiation/verifyQuoteOnChain.d.ts +58 -0
  106. package/dist/negotiation/verifyQuoteOnChain.d.ts.map +1 -0
  107. package/dist/negotiation/verifyQuoteOnChain.js +83 -0
  108. package/dist/negotiation/verifyQuoteOnChain.js.map +1 -0
  109. package/dist/protocol/ACTPKernel.d.ts.map +1 -1
  110. package/dist/protocol/ACTPKernel.js +51 -1
  111. package/dist/protocol/ACTPKernel.js.map +1 -1
  112. package/dist/runtime/BlockchainRuntime.d.ts +13 -0
  113. package/dist/runtime/BlockchainRuntime.d.ts.map +1 -1
  114. package/dist/runtime/BlockchainRuntime.js +33 -2
  115. package/dist/runtime/BlockchainRuntime.js.map +1 -1
  116. package/dist/runtime/IACTPRuntime.d.ts +35 -0
  117. package/dist/runtime/IACTPRuntime.d.ts.map +1 -1
  118. package/dist/runtime/MockRuntime.d.ts +11 -0
  119. package/dist/runtime/MockRuntime.d.ts.map +1 -1
  120. package/dist/runtime/MockRuntime.js +39 -0
  121. package/dist/runtime/MockRuntime.js.map +1 -1
  122. package/dist/runtime/types/MockState.d.ts +10 -0
  123. package/dist/runtime/types/MockState.d.ts.map +1 -1
  124. package/dist/runtime/types/MockState.js.map +1 -1
  125. package/dist/transport/QuoteChannel.d.ts +201 -0
  126. package/dist/transport/QuoteChannel.d.ts.map +1 -0
  127. package/dist/transport/QuoteChannel.js +358 -0
  128. package/dist/transport/QuoteChannel.js.map +1 -0
  129. package/dist/types/adapter.d.ts +24 -24
  130. package/package.json +16 -1
@@ -15,9 +15,12 @@
15
15
  *
16
16
  * Accepts ACTPClient for on-chain operations. Caller manages lifecycle.
17
17
  */
18
+ import type { Signer } from 'ethers';
18
19
  import { DiscoverParams } from '../api/agirailsApp';
19
20
  import { BuyerPolicy } from './PolicyEngine';
20
21
  import { IACTPRuntime } from '../runtime/IACTPRuntime';
22
+ import { NonceManager } from '../utils/NonceManager';
23
+ import { NegotiationChannel } from './NegotiationChannel';
21
24
  export interface NegotiationResult {
22
25
  success: boolean;
23
26
  commerce_session_id: string;
@@ -78,6 +81,34 @@ export type ProgressEvent = {
78
81
  success: boolean;
79
82
  reason: string;
80
83
  };
84
+ /**
85
+ * AIP-2.1 negotiation context — wires the orchestrator into the
86
+ * NegotiationChannel transport. All fields optional: without them the
87
+ * orchestrator runs the legacy fixed-price flow only (no counters).
88
+ *
89
+ * To enable multi-round negotiation, supply ALL of:
90
+ * - signer (signs CounterOfferMessages)
91
+ * - kernelAddress (EIP-712 domain)
92
+ * - chainId
93
+ * - negotiationChannel (transport — RelayChannel default, MockChannel for tests)
94
+ */
95
+ export interface BuyerNegotiationContext {
96
+ /** Buyer's EOA signer — signs CounterOfferMessages. */
97
+ signer?: Signer;
98
+ /** ACTPKernel address for the chain. Required for counter signing. */
99
+ kernelAddress?: string;
100
+ /** Chain id (84532 / 8453). Required for counter signing. */
101
+ chainId?: number;
102
+ /** Nonce manager for counter messages. Defaults to an in-memory one. */
103
+ nonceManager?: NonceManager;
104
+ /**
105
+ * Transport for receiving quotes / acceptances + sending counters.
106
+ * Required for any negotiation feature; without it the orchestrator
107
+ * is fixed-price only. Use RelayChannel in production, MockChannel
108
+ * in tests.
109
+ */
110
+ negotiationChannel?: NegotiationChannel;
111
+ }
81
112
  export declare class BuyerOrchestrator {
82
113
  private policy;
83
114
  private policyEngine;
@@ -85,12 +116,95 @@ export declare class BuyerOrchestrator {
85
116
  private sessionStore;
86
117
  private runtime;
87
118
  private requesterAddress;
88
- constructor(policy: BuyerPolicy, runtime: IACTPRuntime, requesterAddress: string, actpDir?: string);
119
+ private negotiation;
120
+ private counterBuilder?;
121
+ /**
122
+ * Per-txId inbound message queue. Channel callbacks push here; the
123
+ * orchestrator's negotiation loop drains via `_waitForNextMessage`.
124
+ * Bounded implicitly by `_cleanupTxState` at terminal outcomes.
125
+ */
126
+ private inboundQueues;
127
+ /**
128
+ * Per-txId resolver for the orchestrator's "wait for next message"
129
+ * await. When a message arrives and a resolver is set, the message
130
+ * is delivered immediately instead of queued.
131
+ */
132
+ private inboundResolvers;
133
+ /**
134
+ * Active subscriptions opened by `negotiate()`. Closed at end of
135
+ * each negotiation. Multiple concurrent calls are supported.
136
+ */
137
+ private activeSubscriptions;
138
+ constructor(policy: BuyerPolicy, runtime: IACTPRuntime, requesterAddress: string, actpDir?: string, negotiation?: BuyerNegotiationContext);
139
+ /**
140
+ * Channel delivered a verified message for `txId`. If a round is
141
+ * awaiting the next message, hand it directly; otherwise queue.
142
+ *
143
+ * NOTE: the channel has already verified EIP-712 signature + chainId
144
+ * before invoking us. This handler is concerned only with routing.
145
+ */
146
+ private _onChannelMessage;
147
+ /**
148
+ * Await the next inbound message matching one of `acceptedTypes`.
149
+ * Returns null on timeout (caller decides how to handle: cancel,
150
+ * accept-if-affordable, etc).
151
+ *
152
+ * Drains the queue first so messages buffered while we were busy
153
+ * processing the previous round are picked up immediately.
154
+ */
155
+ private _waitForNextMessage;
89
156
  /**
90
157
  * Execute the full negotiation flow.
91
158
  */
92
159
  negotiate(config?: OrchestratorConfig): Promise<NegotiationResult>;
93
160
  private _negotiate;
161
+ /**
162
+ * Run the multi-round AIP-2.1 negotiation flow for one provider/txId.
163
+ *
164
+ * Channel-driven: this method never reads `setReceivedQuote` state;
165
+ * all inbound messages flow through the orchestrator's NegotiationChannel
166
+ * subscription (opened in `_negotiate` after createTransaction).
167
+ *
168
+ * Inner loop walks up to `policy.negotiation.rounds_per_provider`
169
+ * counter exchanges:
170
+ *
171
+ * await first quote (channel)
172
+ * for round in 0..rounds_per_provider:
173
+ * evaluate(currentQuote, roundsUsedSoFar = round)
174
+ * accept → on-chain acceptQuote+linkEscrow, return success
175
+ * reject → on-chain CANCELLED, return failure
176
+ * counter → channel.post(counter), await NEXT message:
177
+ * counteraccept → bind to last counter, on-chain accept+link, return success
178
+ * new quote → currentQuote = new quote, loop
179
+ * timeout → on-chain CANCELLED, return failure
180
+ *
181
+ * Returns `{done: false}` when the channel has no quote but the tx
182
+ * reached QUOTED via raw transitionState (legacy flow caller wants
183
+ * to fall through to fixed-price). Returns `{done: true, success?,
184
+ * reason?}` for any terminal outcome.
185
+ */
186
+ private _runNegotiationRound;
187
+ /**
188
+ * Shared accept+linkEscrow with atomic rollback. Used by both the
189
+ * "accept the quote" and "accept the counter" terminal branches.
190
+ */
191
+ private _commitAtAmount;
192
+ /**
193
+ * Free per-tx negotiation state at terminal outcomes (accept commits,
194
+ * reject CANCELLED, timeout). Closes the channel subscription too so
195
+ * long-running daemon callers don't leak inbound-message resolvers.
196
+ *
197
+ * Idempotent — safe to call from multiple cleanup sites.
198
+ */
199
+ private _cleanupTxState;
200
+ /**
201
+ * Display-only downcast: USDC base-units string → Number for the
202
+ * RoundResult.quoted_price log field. Loses precision above
203
+ * Number.MAX_SAFE_INTEGER / 1e6 (~$9 quadrillion) but every
204
+ * comparison the orchestrator actually MAKES uses the bigint
205
+ * string. The on-chain tx.amount is the source of truth.
206
+ */
207
+ private _baseUnitsForLog;
94
208
  /**
95
209
  * Poll until tx reaches one of the target states.
96
210
  * Returns the reached state, or null on timeout/cancelled.
@@ -1 +1 @@
1
- {"version":3,"file":"BuyerOrchestrator.d.ts","sourceRoot":"","sources":["../../src/negotiation/BuyerOrchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BuyerOrchestrator.d.ts","sourceRoot":"","sources":["../../src/negotiation/BuyerOrchestrator.ts"],"names":[],"mappings":"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"}