@black-market/sdk 0.15.1 → 0.16.1

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 (60) hide show
  1. package/README.md +6 -5
  2. package/dist/lifecycle/deployments/raeto-dynamic-pool-v1-20261029.d.ts +71 -0
  3. package/dist/lifecycle/deployments/raeto-dynamic-pool-v1-20261029.d.ts.map +1 -0
  4. package/dist/lifecycle/deployments/raeto-dynamic-pool-v1-20261029.js +73 -0
  5. package/dist/lifecycle/deployments/raeto-dynamic-pool-v1-20261029.js.map +1 -0
  6. package/dist/lifecycle/deployments/raeto-fixed-pool-v1-20261029.d.ts +71 -0
  7. package/dist/lifecycle/deployments/raeto-fixed-pool-v1-20261029.d.ts.map +1 -0
  8. package/dist/lifecycle/deployments/raeto-fixed-pool-v1-20261029.js +73 -0
  9. package/dist/lifecycle/deployments/raeto-fixed-pool-v1-20261029.js.map +1 -0
  10. package/dist/lifecycle/gas-profile.d.ts +1 -1
  11. package/dist/lifecycle/gas-profile.d.ts.map +1 -1
  12. package/dist/lifecycle/gas-profile.js +24 -9
  13. package/dist/lifecycle/gas-profile.js.map +1 -1
  14. package/dist/lifecycle/index.d.ts +2 -0
  15. package/dist/lifecycle/index.d.ts.map +1 -1
  16. package/dist/lifecycle/index.js +2 -0
  17. package/dist/lifecycle/index.js.map +1 -1
  18. package/dist/lifecycle/markets.d.ts +2 -0
  19. package/dist/lifecycle/markets.d.ts.map +1 -1
  20. package/dist/lifecycle/markets.js +30 -2
  21. package/dist/lifecycle/markets.js.map +1 -1
  22. package/dist/lifecycle/opening-buys.js +3 -3
  23. package/dist/lifecycle/opening-buys.js.map +1 -1
  24. package/dist/lifecycle/planner.d.ts.map +1 -1
  25. package/dist/lifecycle/planner.js +21 -2
  26. package/dist/lifecycle/planner.js.map +1 -1
  27. package/dist/lifecycle/presets.d.ts +4 -2
  28. package/dist/lifecycle/presets.d.ts.map +1 -1
  29. package/dist/lifecycle/presets.js +8 -1
  30. package/dist/lifecycle/presets.js.map +1 -1
  31. package/dist/lifecycle/raeto-abi.d.ts +175 -0
  32. package/dist/lifecycle/raeto-abi.d.ts.map +1 -0
  33. package/dist/lifecycle/raeto-abi.js +224 -0
  34. package/dist/lifecycle/raeto-abi.js.map +1 -0
  35. package/dist/lifecycle/raeto.d.ts +21 -0
  36. package/dist/lifecycle/raeto.d.ts.map +1 -0
  37. package/dist/lifecycle/raeto.js +59 -0
  38. package/dist/lifecycle/raeto.js.map +1 -0
  39. package/dist/lifecycle/transactions.d.ts.map +1 -1
  40. package/dist/lifecycle/transactions.js +8 -1
  41. package/dist/lifecycle/transactions.js.map +1 -1
  42. package/dist/lifecycle/types.d.ts +2 -2
  43. package/dist/lifecycle/types.d.ts.map +1 -1
  44. package/docs/launch-lifecycle.md +106 -40
  45. package/docs/lifecycle-gas-profiles.md +173 -24
  46. package/docs/reference.md +73 -15
  47. package/examples/README.md +6 -3
  48. package/package.json +1 -1
  49. package/src/lifecycle/deployments/raeto-dynamic-pool-v1-20261029.ts +74 -0
  50. package/src/lifecycle/deployments/raeto-fixed-pool-v1-20261029.ts +74 -0
  51. package/src/lifecycle/gas-profile.ts +21 -9
  52. package/src/lifecycle/index.ts +2 -0
  53. package/src/lifecycle/markets.ts +23 -1
  54. package/src/lifecycle/opening-buys.ts +3 -3
  55. package/src/lifecycle/planner.ts +19 -2
  56. package/src/lifecycle/presets.ts +8 -1
  57. package/src/lifecycle/raeto-abi.ts +223 -0
  58. package/src/lifecycle/raeto.ts +61 -0
  59. package/src/lifecycle/transactions.ts +8 -1
  60. package/src/lifecycle/types.ts +2 -2
@@ -136,7 +136,7 @@ export type LifecycleOpeningBuyQuote = {
136
136
  sqrtPriceAfterX96: bigint;
137
137
  };
138
138
  /** Versioned compute budgets with headroom, never transaction gas-limit sizing.
139
- * Atomic budget is absent when conversion work is outside the template model. */
139
+ * Atomic budget is absent for launches with more than one market. */
140
140
  export type LifecycleLaunchGasBounds = {
141
141
  atomicComputeGasUpperBound?: bigint;
142
142
  activationComputeGasUpperBound: bigint;
@@ -284,7 +284,7 @@ export type PlanLaunchOptions = {
284
284
  client: LifecycleRpcClient;
285
285
  account: Address;
286
286
  plan: LaunchPlanV1;
287
- /** Atomic requires one market, no conversion and a known budget fitting with headroom.
287
+ /** Atomic requires one market and a known budget, including conversions, fitting with headroom.
288
288
  * All other unstarted launches are staged; started launches retain canonical mode. */
289
289
  mode: LaunchExecutionMode;
290
290
  limits?: LifecycleLimitSource;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lifecycle/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lifecycle/types.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  # Launch a token with the TypeScript SDK
2
2
 
3
- Use SDK **0.14.1** on Robinhood Chain mainnet (**4663**). For a first launch, run
3
+ Use SDK **0.16.1** on Robinhood Chain mainnet (**4663**). For a first launch, run
4
4
  [`launch-erc20-abyss.ts`](../examples/launch-erc20-abyss.ts): one market, one position,
5
5
  one buy. [Runner setup](../examples/README.md) covers its environment and commands.
6
6
  This guide explains the economics and the public APIs for your own integration.
@@ -19,6 +19,7 @@ staking, or dividends. A pool profile selects the admitted venue/hook implementa
19
19
  | HMM V2 | `V4HmmFixedPool`, `V4HmmDynamicPool` | Auxiliary fee-funded bids/asks; LP and developer fees 0; explicit risk guards. |
20
20
  | UFG | Abyss QUOTE/QUOTE_ORACLE or `V4UfgFixedPool`, `V4UfgDynamicPool` | Treasury route; ERC20 without rewards; quote-only fees, executor bounty 0. |
21
21
  | Auto-compounding | `V4AutoCompoundStaticPool`, `V4AutoCompoundDynamicPool` | Net hook fees fund permanently locked full-range liquidity; both fee modes; LP and developer fees 0. |
22
+ | Raeto | `V4RaetoFixedPool`, `V4RaetoDynamicPool` | QuoteOnly WETH/USDG; Raeto share 5/10/25/50/75%; LP and developer fees 0. |
22
23
 
23
24
  SDK presets are the source of supported profiles and deployment wiring. Profiles
24
25
  registered after this release appear with a subsequent SDK update.
@@ -311,24 +312,23 @@ uses **now + 300 seconds**, at most 1,200 seconds and never beyond plan expiry.
311
312
  Staging can outlive the conversion even while the plan is valid. Do not edit a
312
313
  saved deadline or replace committed conversion bytes after begin.
313
314
 
314
- ## Prepare and simulate
315
+ ## Prepare and plan
315
316
 
316
317
  | Mode | Transactions after any approvals | Choose when |
317
318
  | --- | --- | --- |
318
- | `atomic` | One transaction creates, prepares, mints, locks, buys, and opens. | The exact full launch fits the execution envelope. |
319
- | `staged` | Begin → prepare batches → one activation that mints, locks, buys, and opens all markets. | Preparation needs separate transactions. |
319
+ | `atomic` | One transaction funds (including conversion), creates, prepares, mints, locks, buys, and opens. | One known-profile market's padded compute plus poster allocation fits the native envelope. |
320
+ | `staged` | Begin funds and creates → prepare batches → one activation that mints, locks, buys, and opens all markets. | Multiple markets or the conservative atomic budget requires separate preparation. |
320
321
 
321
322
  Staging is not rollback. A begun plan remains begun after its deadline until cancelled.
322
323
  Activation cannot be split into separate position mints or buys.
323
- An atomic request is a preference: conservative capacity bounds or an actual atomic capacity failure may select staged. Explicit staged stays staged. No markets or buys are removed. Review and persist returned `planned.mode`.
324
+ An atomic request is a preference: multiple markets or an atomic capacity bound above the native envelope select staged. The atomic basis includes an empirical2M compute reserve per `Swap` funding entry before at-least-25% padding; this is not a universal bound on arbitrary router code. Explicit staged stays staged. No markets or buys are removed. Review and persist returned `planned.mode`.
324
325
 
325
326
  | Operation | Options type / purpose |
326
327
  | --- | --- |
327
- | `prepareAndPlanLifecycleLaunch` | `PrepareAndPlanLifecycleLaunchOptions`: `client`, `account`, `plan`, `mode`; optional `ufg: { config }`, `buySlippageBps`, `limits`, `fork`, `receipts`, `confirmations`, `signal`, `onProgress`, topology opt-outs. |
328
- | `planLaunch` | `PlanLaunchOptions`: same execution context, including optional `ufg: { config }` and `signal`; re-admits an already-finalized plan without changing salts/minima. |
329
- | `simulateLaunchPlan` | `client`, `planned`; optional `limits`, `fork`, `receipts`, `confirmations`, `signal`. |
328
+ | `prepareAndPlanLifecycleLaunch` | `PrepareAndPlanLifecycleLaunchOptions`: `client`, `account`, `plan`, `mode`; optional `ufg: { config }`, `buySlippageBps`, `limits`, `receipts`, `confirmations`, `signal`, `onProgress`, topology opt-outs. |
329
+ | `planLaunch` | `PlanLaunchOptions`: same execution context, including optional `ufg: { config }` and `signal`; checks an already-finalized plan without changing salts/minima. |
330
330
  | `readLaunchProgress` | `client`, `planned`; optional `receipts`, `confirmations`, `signal`. |
331
- | `buildNextTransaction` | Progress options, plus optional `action`, `limits`, `fork`, `reviewedTransaction`. |
331
+ | `buildNextTransaction` | Progress options, plus optional `action`, `limits`, `reviewedTransaction`. |
332
332
 
333
333
  `buildLaunchTransactions` compiles unsigned commands; it does not prove execution.
334
334
  Persist `serializeLaunchPlan(planned.plan)`, returned `planned.mode`, confirmation policy,
@@ -337,32 +337,30 @@ Do not serialize the entire `PlannedLaunch`, which can contain live limit callba
337
337
 
338
338
  Every launch step uses the native total transaction ceiling:32M on4663, including
339
339
  poster gas. Approvals omit gas/fees for wallet preparation. Covered Robinhood
340
- ArbOS61 templates use capacity bounds and exact local ordered-buy math, never
341
- component-sized gas limits. Their evidence is `profiled` / `not-run`, not a receipt.
342
- Conversion-carrying begin/atomic and consuming activation require exact native
343
- execution. Unknown coverage or uncertain activation gets full-sequence execution
344
- before begin. Explicit `simulateLaunchPlan` always executes; a generic fork is not Nitro proof.
345
-
346
- Review checks the complete sequence, not just a successful prefix. There is no
347
- SDK-invented 50M aggregate cap. A caller `maxSimulationGas` still tightens policy;
348
- incomplete execution proof refuses admission. A refused full review cannot begin
349
- a new launch. Only the immediate command receives final gas/price/estimate/admission.
350
- Suffix metrics remain provisional; build-next admits only the canonical next command
351
- at its fresh native-ceiling budget, never reusing a provisional estimate.
340
+ templates use deterministic capacity bounds and exact local ordered-buy math,
341
+ never component-sized gas limits or launch simulation. This includes conversion:
342
+ the router enforces committed output floors and deadlines only on submission.
343
+ Unknown coverage refuses `UNKNOWN_GAS_PROFILE`; oversized unsplittable activation
344
+ refuses `ACTIVATION_GAS_LIMIT` before begin. There is no execution fallback.
345
+
346
+ Only the immediate command receives fresh gas/price/estimate/assessment.
347
+ Build-next checks the canonical next command against its fresh native-ceiling
348
+ budget, current inputs and poster prices. A ready assessment is not a receipt or
349
+ execution proof; no successful prefix authorizes an over-budget activation.
352
350
 
353
351
  See [capacity, native/fork evidence and migration](lifecycle-gas-profiles.md)
354
- for exact proof fields, upfront affordability and the public capacity-bound helper.
352
+ for the reserve assumptions, upfront affordability and public capacity-bound helper.
355
353
 
356
354
  Review the returned final plan/hash, aligned price, burn, retained supply, fees,
357
355
  ordered buy outputs/minima, funding, refunds, and complete gas envelope. A fresh
358
- `buildNextTransaction` admits the immediate next step as canonical progress advances.
356
+ `buildNextTransaction` checks the immediate next step as canonical progress advances.
359
357
  The wallet owns sending-RPC preparation; `submissionClient` has been removed.
360
358
 
361
359
  `planned.transactions[0]` contains exact immediate `from/to/data/value` and, for
362
360
  launch commands, native-ceiling `gas` and current `gasPrice`. Approvals omit both.
363
361
  There is no fixed wallet nonce; the wallet assigns it. The plan identity nonce is unchanged.
364
- The envelope is reusable, but its block-bound admission is historical, not permission
365
- to sign later. Pass it as `reviewedTransaction` for fresh immediate admission after
362
+ The envelope is reusable, but its block-bound assessment is historical, not permission
363
+ to sign later. Pass it as `reviewedTransaction` for fresh immediate checks after
366
364
  review or recovery. This is not a second user review gate.
367
365
  Reuse `planned.progress` for the same result's display instead of reading progress
368
366
  independently beside the plan.
@@ -373,25 +371,25 @@ never silently rewrite it. A lower caller complete-envelope cap refuses rather t
373
371
  shrinking gas. Held prices below the pinned fee floor also refuse without bumping.
374
372
  On Nitro the floor is max(ArbGasInfo L2 price, header base fee); twice base fee is
375
373
  fresh recommendation headroom only. Reserve value plus ceiling×price, without
376
- adding poster fees again. Actual activation capacity refusal asks the user to
377
- reduce positions/pools; a large conservative bound alone is not such a refusal.
374
+ adding poster fees again. An activation budget above the ceiling asks the user to
375
+ reduce positions/pools; this conservative refusal is not proof of actual overflow.
378
376
 
379
377
  On chain4663, one RPC L2 header pins the invocation. Token prediction, native/token
380
378
  balances, allowances, launch progress, Nitro getters and prices share one Multicall3 call
381
379
  at that explicit L2 block. Further independent stages use one aggregate, even for
382
380
  one or two reads. Multicall3's block-number/hash getters expose L1 values on Nitro
383
381
  and must not select the L2 pin.
384
- The same pin survives salt mining and buy calibration; there are no final chain or
382
+ The same pin survives salt mining and buy protection; there are no final chain or
385
383
  canonical-header guard reads. Receipt confirmation/reorg checks remain.
386
384
 
387
- Required native execution validates the exact calldata once; there is no later
388
- exact-gas replay. Poster allocation comes from the same-review price tuple and a
389
- local size bound, not a per-transaction oracle. Build-next encodes only its canonical
390
- next command, preserving normal/UFG calldata and original/clipped batch spans.
385
+ Poster allocation comes from the same-review price tuple and a local size bound,
386
+ not a per-transaction oracle. Build-next encodes only its canonical next command,
387
+ preserving normal/UFG calldata and original/clipped batch spans. It does not
388
+ execute conversion or activation calldata or read/assign a wallet nonce.
391
389
 
392
- Multicall3 runtime, Nitro backend capability and account-code observations are
393
- retained for the caller's session. Chain identity is observed once per bound client;
394
- recreate the client on chain changes. Financial state and required proof stay fresh.
390
+ Multicall3 runtime and static preset observations are retained for the caller's
391
+ session. Chain identity is observed once per bound client; recreate the client
392
+ on chain changes. Financial state, funding allowances and capacity checks stay fresh.
395
393
  The 4663 preset uses the deployed `hookSaltMiner`; returned salts are verified
396
394
  locally. Its deployed `launchLens` supplies dependent progress, market, balance
397
395
  and hook-mining reads in the same initial aggregate. Callers need no lens
@@ -655,6 +653,69 @@ exit fee; this is not a guaranteed USD floor. Accrued pool fees are not collecte
655
653
  backing. Inspect collection failure events as well as receipt success; a fork check
656
654
  needed at least 750k gas for `collect()`, not a universal mainnet gas limit.
657
655
 
656
+ ## Configure Raeto
657
+
658
+ Raeto is a constrained **fee-sharing offering**, not a UFG treasury or a redemption
659
+ contract. Select `V4RaetoFixedPool` (fixed maximum hook fee) or
660
+ `V4RaetoDynamicPool` (minimum/maximum/sensitivity schedule). The hook creation
661
+ bytes are identical to the ordinary zero-royalty fixed/dynamic templates; the
662
+ Raeto collector, factory, locker, adapter and frozen terms are different.
663
+
664
+ ```ts
665
+ import {
666
+ getKnownLifecycleProfile, KnownLifecycleProfile, RAETO_QUOTE_ASSETS,
667
+ RAETO_SHARE_BPS_OPTIONS, encodeRaetoLaunchTail, validateRaetoLaunchPlan,
668
+ type RaetoLaunchConfigV1,
669
+ } from "@black-market/sdk/lifecycle";
670
+
671
+ const preset = getKnownLifecycleProfile({
672
+ chainId: 4663, orchestrator: "0x91560876033d568d25CDe98C78c33ff8FC43962c",
673
+ key: KnownLifecycleProfile.V4RaetoFixedPool,
674
+ })!;
675
+ const raetoLaunchConfig: RaetoLaunchConfigV1 = { shareBps: 500 };
676
+ console.log(preset.profile.id, RAETO_QUOTE_ASSETS, RAETO_SHARE_BPS_OPTIONS,
677
+ encodeRaetoLaunchTail(raetoLaunchConfig));
678
+ // Add raetoLaunchConfig to the market's V4PoolBoundLifecycleMarketConfigV6.
679
+ // Once all markets are built: validateRaetoLaunchPlan(plan).
680
+ ```
681
+
682
+ Every Raeto-route market must use its Raeto config6 profile/adapter, **WETH or
683
+ USDG**, `feeMode: 1` (QuoteOnly), `lpFeePips: 0`, and `developerFeeBps: 0`.
684
+ One V4 market per quote means at most two Raeto markets, with at most 32 total
685
+ positions. Preserve normal token/reward choices and fee-asset policies; no UFG
686
+ proxy, treasury, special nonce, or UFG funding approvals are involved.
687
+
688
+ Set `raetoLaunchConfig.shareBps` to **500, 1000, 2500, 5000, or 7500**.
689
+ The 5% floor cannot be disabled. **1234, 8000 and 10000 are not deployed options**,
690
+ even though a newer local contract source accepts a wider range. This release
691
+ pins the deployed five-item menu, proved by read-only calls to both live factories
692
+ at block 101,180,179. The encoder appends exactly one canonical 32-byte uint16
693
+ word; missing/extra/mixed HMM/UFG/auto-compounding tails reject.
694
+
695
+ Use `validateRaetoLaunchPlan(plan)` for the exclusive Raeto route; it rejects
696
+ every non-Raeto or malformed market with `INVALID_RAETO_PLAN`. Config/tail and
697
+ market fee/quote errors use `INVALID_RAETO_CONFIG`. Then use the ordinary
698
+ `prepareAndPlanLifecycleLaunch` / `buildNextTransaction` flow. A share change
699
+ changes the full plan hash, but Raeto's hook-constructor commitment hashes only
700
+ the zero-salt V6 prefix, not the collector share. Always re-review changed plans.
701
+
702
+ At collection the collector books `floor(post-treasury quote fees × shareBps /
703
+ 10000)` as Raeto credit and forwards the remainder into the normal fee hub.
704
+ The **current fee owner** can call `setShareBps` with another menu value,
705
+ including immediately before collection; that selection applies to all
706
+ uncollected fees. Collection does not pay or consult the payout registry.
707
+ Anyone can call `claimRaeto(quoteAsset)` to pay the registry's **current** payout,
708
+ not a caller-selected recipient. Donations are not fee revenue or Raeto credit.
709
+ Use `raetoFeeCollectorV1Abi` for `shareBps`, `owed`, token/quote getters, the
710
+ share/claim methods and `RaetoShareUpdated` / `RaetoFeesBooked` /
711
+ `RaetoFeesClaimed`. [Reference and preserved deployment evidence](reference.md#raeto-profiles)
712
+ identify the payout registry and profile/adapter IDs.
713
+
714
+ Both variants use the measured v4 capacity model, with deterministic preparation
715
+ batches, exact local opening-buy quotes and the unchanged native 32M total gas
716
+ ceiling. A ready assessment is a budget/input check, **not execution proof**.
717
+ See [gas evidence](lifecycle-gas-profiles.md#raeto-and-auto-compounding-v4-evidence).
718
+
658
719
  ## Configure auto-compounding
659
720
 
660
721
  Select `V4AutoCompoundStaticPool` for a fixed hook fee or
@@ -691,11 +752,16 @@ include the recorded readback and read-only verification command.
691
752
 
692
753
  The hook owns its new full-range liquidity permanently; the non-compounding
693
754
  remainder follows the launch's normal fee-asset policies. It burns the allocated
694
- launch-token fees and uses quote fees to buy and compound. Every post-opening swap
695
- performs compounding in `afterSwap`; insufficient gas reverts with
696
- `CompoundOutOfGas()` rather than silently skipping work. Do not cap swap gas below
697
- `eth_estimateGas`. Launch transactions retain the SDK's native ceiling; these new
698
- templates require exact execution admission, not uncalibrated fixed-hook capacity bounds.
755
+ launch-token fees and uses quote fees to buy and compound. During launch,
756
+ `_attemptCompound` defers until `openingCompletedAt` is set **after all opening
757
+ buys**, so the local ordered opening-buy curve remains exact. Post-opening swaps
758
+ can compound in `afterSwap`; the hook's low-gas guard reverts `CompoundOutOfGas()`.
759
+ Do not cap swap gas below `eth_estimateGas` or treat launch bounds as swap limits.
760
+ Launch transactions now have measured static/dynamic capacity and preparation
761
+ costs retained in `robinhood-4663-capacity-v5`, not ordinary fixed-hook guesses. They retain
762
+ the native 32M total gas ceiling and never execute calldata during planning.
763
+ See [the fork matrix and ArbOS caveat](lifecycle-gas-profiles.md#raeto-and-auto-compounding-v4-evidence).
764
+
699
765
 
700
766
  <a id="0100-release-hmm-v2-only"></a>
701
767
  ## Configure HMM V2
@@ -1,6 +1,6 @@
1
1
  # Lifecycle gas, capacity, execution evidence and RPC budgets
2
2
 
3
- Version 0.15.0 separates the native transaction ceiling, conservative capacity bounds, exact curve quotes and actual execution proof. A local quote or submitted hash is not an execution receipt.
3
+ Version **0.16.1**, model **`robinhood-4663-capacity-v5`**, separates the native transaction ceiling, conservative capacity bounds, exact opening-curve quotes and actual transaction receipts. A ready assessment is not execution proof.
4
4
 
5
5
  ## One native ceiling, not component-sized gas
6
6
 
@@ -12,43 +12,192 @@ A reviewed launch gas differing from the ceiling is stale and refuses with `STAL
12
12
 
13
13
  ## Capacity selects the mode, not the gas limit
14
14
 
15
- `computeLifecycleLaunchGasBounds({ plan, predictedToken, ufg?, headroomBps? })` returns conservative `atomicComputeGasUpperBound` and `activationComputeGasUpperBound`, excluding poster gas, or undefined for unknown coverage. The versioned model accounts for token/reward creation, actual UFG proxy/treasury route, market/position work, ordered buys, NFT minting and HMM forwarding overhead. UFG route overhead is independent of market profile names.
15
+ `computeLifecycleLaunchGasBounds({ plan, predictedToken, ufg?, headroomBps? })` returns conservative `atomicComputeGasUpperBound` and `activationComputeGasUpperBound`, excluding poster gas, or undefined for unknown coverage. The v5 model retains v4 coverage for Raeto fixed/dynamic and current auto-compounding static/dynamic in addition to the existing Abyss, V4, HMM and UFG templates. It accounts for token/reward creation, actual UFG proxy/treasury route, measured market/position work, ordered buys, NFT minting and HMM forwarding overhead, and adds atomic conversion work. UFG route overhead is independent of market profile names.
16
16
 
17
- An atomic request is a preference. A conservative atomic bound plus poster allocation above the ceiling selects staged; explicit staged remains staged. An actual atomic capacity failure can also select staged with fresh full-sequence admission. Review and persist returned `planned.mode`, not the requested mode. No positions, markets or buys are dropped.
17
+ An atomic request is a preference. Multiple markets always select staged; one known-profile market can remain atomic, including conversion funding, only when its padded compute bound plus poster allocation fits. Explicit staged remains staged. Review and persist returned `planned.mode`, not the requested mode. No positions, markets or buys are dropped, and the gas envelope is never resized.
18
18
 
19
- A large conservative activation upper bound is uncertainty, not proof of overflow. Uncertain activation receives exact full-sequence execution before begin. An actual activation capacity failure returns `capacityConstraint: "activation"` and asks the user to reduce positions/pools; staging cannot split activation. For example, an independently observed24-position activation fit32M despite a larger conservative upper bound, while a32-position deep Abyss activation needed a47.48M minimum successful envelope. Neither observation licenses a universal count-only hard cap.
19
+ Preparation greedily packs contiguous markets using measured per-template/per-position costs, full calldata processing and padding. Activation cannot split. An activation bound plus poster allocation above 32M refuses before begin with `ACTIVATION_GAS_LIMIT`; an unknown profile refuses with `UNKNOWN_GAS_PROFILE`. A conservative refusal is not proof the actual transaction would overflow, but there is no simulation or execution fallback.
20
20
 
21
- ## Which admission path runs
21
+ ### Atomic conversion reserve (v5)
22
22
 
23
- | Command | Covered direct plan with proven-fit activation | Plan containing an aggregator conversion |
24
- | --- | --- | --- |
25
- | Approval/reset | Wallet prepares gas/fees | Wallet prepares gas/fees |
26
- | Begin | Conditional template admission | Exact native execution of the conversion |
27
- | Prepare markets/hooks | Conditional template admission | Conditional admission when isolated after begin |
28
- | Activate and opening buys | Conditional admission and exact local curve math | Exact native execution consuming conversion funding |
29
- | Atomic launch | Conditional admission and exact local curve math | Exact native execution of the complete transaction |
30
- | Cancel | Conditional admission | Conditional admission when isolated |
31
-
32
- A conversion review proves the complete staged sequence through activation in one validated `eth_simulateV1` call, with every launch call at32M. Unknown template/currency coverage, another chain/ArbOS epoch or uncertain activation also uses real execution. A refused full review cannot authorize a new begin from a successful prefix; already-started recovery and cancellation remain available. Explicit `simulateLaunchPlan` always requests execution. A generic EVM fork is not Nitro protocol proof.
23
+ Funding escrow executes every `Swap` during begin, including the begin inside
24
+ `launchAtomic`. For an atomic command, add **2,000,000 compute gas per Swap funding
25
+ entry** to the existing template basis. Count entries independently, regardless
26
+ of input token, native input or router address. Then apply the existing rule:
33
27
 
34
- Unknown curve behavior retains a separate provisional, unvalidated buy-output diagnostic at the same ceiling before protecting minima. It is not gas sizing, final admission or a retry. The final protected commitment still requires its exact execution. There is no SDK-invented50M aggregate window; explicit `maxSimulationGas` policies remain enforced against complete observed work without prefix admission.
35
-
36
- ### Honest result fields
28
+ ```text
29
+ basis = existing template work + 2,000,000 × Swap funding count
30
+ compute bound = max(
31
+ ceil(basis × (10,000 + max(2,500, headroomBps)) / 10,000),
32
+ basis + existing HMM forwarding reserve
33
+ )
34
+ ```
37
35
 
38
- - Conditional admission: `backend/confidence: "profiled"`, `executionProof: "not-run"`, `protocolFit: "profiled"`. `gasProfile` carries `version`, capacity `bounds` and local `initialBuys`, not per-step estimates or fabricated receipts.
39
- - The immediate fixed-ceiling budget is `simulation.estimate`, with `feeConfidence: "native-ceiling-and-data"` and no invented `gasUsed`. Approval budgets are absent.
40
- - Successful exact native execution reports `backend: "eth_simulateV1"`, `executionProof: "proved"`, `protocolFit: "proved"` after required postconditions.
41
- - Only an immediate launch command receives final gas/price/estimate/admission. Exact suffix steps remain `provisional: true` with no executable estimate. Build-next constructs only the canonical next command at a fresh pin; it never treats a suffix observation as an estimate.
36
+ Existing full encoded-calldata processing, token/reward creation, fee-asset,
37
+ position and buy costs remain in the basis. Nitro poster allocation is added
38
+ only for the fit comparison; it remains inside the unchanged32M envelope.
39
+ Staged activation excludes the conversion reserve because its funding already
40
+ executed during begin; begin still uses the full native ceiling. ERC20-input
41
+ approvals remain wallet-prepared and are refreshed before the atomic command.
42
+
43
+ The2M coefficient is a bounded empirical planning reserve for the current
44
+ conversion path, not a universal upper bound on arbitrary admitted router code,
45
+ route complexity or future upgrades. Calldata's structural bound alone does not
46
+ bound external execution work. A fit is not simulation or execution proof.
47
+ Input/target/spender admission, exact funding value, committed output floors and
48
+ deadlines remain wallet/on-chain responsibilities. Unknown launch templates
49
+ still refuse; larger atomic budgets select staged, and oversized unsplittable
50
+ activation budgets refuse before begin. Planning and fresh build-next apply the
51
+ same model and never simulate launch calldata or read wallet nonces.
52
+
53
+ ## What planning does, and does not prove
54
+
55
+ Planning and build-next read one pinned input/progress snapshot, compute exact local opening-buy outputs, check deterministic capacity and check affordability. They **never execute launch calldata**, including for conversion funding. The real router enforces its committed conversion floor/deadline when the user submits the transaction.
56
+
57
+ | Command | Planning/build-next behavior |
58
+ | --- | --- |
59
+ | Approval/reset | Discover allowance; wallet owns gas preparation. |
60
+ | Begin | Check inputs, complete activation capacity and full-ceiling affordability. |
61
+ | Prepare markets/hooks | Pack deterministic contiguous batches and check their budgets. |
62
+ | Activate and opening buys | Check unsplittable activation capacity and exact local ordered-buy floors. |
63
+ | Atomic launch | Require one known-profile market whose padded compute, including each Swap reserve, plus poster fits. |
64
+ | Cancel | Build from canonical progress; no new profile capacity requirement. |
65
+
66
+ Check `planned.assessment.ready`, `code`, `reason`, optional `capacityConstraint`,
67
+ `assessment.estimate` and `assessment.gasProfile`. The gas profile contains
68
+ `version`, capacity `bounds` and exact local `initialBuys`, never invented
69
+ `gasUsed`. Launch commands use the native ceiling; approvals omit gas/fees.
70
+ Only actual included receipts and canonical Active/public-market state establish
71
+ execution. The owned fork harness below exercises the real contracts separately;
72
+ it is never selected as a planning backend.
42
73
 
43
74
  ## Retained empirical evidence
44
75
 
45
- `robinhood-4663-arbos61-v1` covers shipped Abyss configuration-v1 and the calibrated fixed/dynamic V4 configuration-v6 templates, including HMM/UFG, on ArbOS61 with an EOA payer and known release quote implementations. Auto-compounding presets are not covered by these capacity bounds and require exact execution. This is capacity coverage, not a currency admission allowlist. Unknown currencies remain supported through exact execution; smart-account proof is not claimed.
76
+ The v5 model retains the v4 [Raeto and auto-compounding measurements](#raeto-and-auto-compounding-v4-evidence) and adds the conversion reserve described above. Recorded v4 smoke evidence keeps its original version and is not rewritten as new execution evidence. These are empirical capacity bounds, not gas-limit sizing, a promise about arbitrary upgrades/future ArbOS rules, or native execution proof. Currency admission is separate: only Raeto imposes its deployed WETH/USDG quote allowlist.
46
77
 
47
78
  Research retained176 lifecycle receipts, including75 successful current-template atomic/activation observations with opening buys. Isolated forks extend depth, buys and combinations; failed CREATE2 cases were not counted as successful coverage. One Abyss and one fixed-V4 historical native/fork calibration matched compute exactly (19,272,603 and18,130,251 gas), while minimum successful envelopes were higher (20,527,230 and19,356,279). These two calibrations do not establish general Anvil/Nitro equivalence. Compute and poster components remain separate. Profiles are empirical capacity bounds, never transaction gas sizing or proof about arbitrary upgrades/future ArbOS rules.
48
79
 
80
+ ## Raeto and auto-compounding v4 evidence
81
+
82
+ `test/integration/template-gas.fork.mjs` owns an explicitly supplied loopback
83
+ Anvil on **8571** and accepts only its unlocked default development account.
84
+ It never loads a key or sends to mainnet. Each case snapshots/reverts the fork
85
+ and executes real SDK-produced calldata against the admitted deployment graph.
86
+ The matrix retains full portable plans and receipts' transaction hashes,
87
+ block numbers, `gasUsed`, characterization envelopes, calldata sizes,
88
+ Anvil minimum-gas estimates and separate 32M `eth_call` fit results in
89
+ `test/fixtures/template-gas-matrix.json`. Separate read-only SDK planning/build-next
90
+ assessments, referencing those retained real executions without replaying them,
91
+ are in `test/fixtures/template-gas-smoke.json`.
92
+ The creator/token identity may repeat across **isolated, reverted** cases, and
93
+ identical CREATE2 preimages reuse the SDK's deterministic mined salt. This avoids
94
+ unnecessary new empty-slot archive queries without retaining any launch state
95
+ between experiments. Complete plans identify the exact identity used in every
96
+ observation. The harness verifies the source pin and Anvil version and always
97
+ skips any scenario already recorded. The final missing-case selection covers
98
+ boundary depths/buys/market counts rather than repeating a redundant Cartesian
99
+ interior. Earlier valid observations remain in the evidence unchanged.
100
+
101
+ The source block/hash and Anvil version are recorded per run. Public RPC pruning,
102
+ rate limits and archive backend failures are not execution failures; the final
103
+ missing cases use a configured Alchemy archive. Its credential-bearing URL is
104
+ never logged or committed; evidence identifies the provider only as `alchemy`.
105
+ The synthetic economics ($5,000 FDV, WETH $3,000 / USDG $1) are explicit test
106
+ fixtures, not a live pricing recommendation.
107
+ Single-position recipes and adjacent 8-position distributions use SDK helpers;
108
+ an explicit adjacent 32-band fixture reaches the templates' structural maximum
109
+ without changing the public distribution catalogue's 2–16-position API.
110
+ Two-market cases divide at most 32 **total** positions between WETH and USDG.
111
+ Raeto cannot have a third V4 market because those are its only allowed quotes.
112
+
113
+ Anvil does not implement ArbOS precompiles. The harness reads
114
+ `ArbGasInfo.getPricesInWei` from the real native chain through the configured
115
+ archive at the fork's source pin. For read-only LaunchLens planning snapshots,
116
+ an `eth_call`-only ArbSys override maps `arbBlockNumber()` / `arbBlockHash(uint256)`
117
+ to Anvil's actual `NUMBER` / `BLOCKHASH` environment; it does not invent balances,
118
+ progress, addresses or protocol results. No deployed launch code/storage is
119
+ overridden and no measured launch is replayed by that smoke. All launch execution
120
+ uses the ordinary fork contracts.
121
+ USDG fixture funding is an ordinary deployed-token transfer from the fork's
122
+ real PoolManager balance, using fork-only impersonation; protocol code/storage
123
+ is not replaced. Characterization uses 100M gas to measure without assuming fit,
124
+ and separately calls the exact launch at 32M. The read-only profiled smoke checks
125
+ the SDK's actual 32M next-command envelope without re-executing a retained case.
126
+ **Anvil compute and successful local 32M calls are not native ArbOS/poster proof.**
127
+
128
+ The committed run contains **84 real launches / 186 successful launch
129
+ transactions** at Robinhood block **101,180,179**
130
+ (`0xe778e5d89ca2cab5843eedeb8c27b10f5463313d4b95b8971986ac72e297933c`):
131
+ 59 retained observations plus 25 approved missing boundary cases. No retained
132
+ case was replayed. Depths are 1/8/32 total positions, one/two markets and
133
+ 0/1/4 ordered buys, with both Raeto quotes and both auto-compound fee modes.
134
+
135
+ Observed peak EVM `gasUsed`, in millions (preparation columns distinguish batch size):
136
+
137
+ | Template | Cases | Atomic max | Prepare 1 market max | Prepare 2 markets max | Activation max |
138
+ | --- | ---: | ---: | ---: | ---: | ---: |
139
+ | Raeto fixed | 42 | 41.664 | 11.222 | 17.831 | 22.228 |
140
+ | Raeto dynamic | 22 | 41.694 | 11.186 | 17.804 | 22.332 |
141
+ | Auto-compound static | 10 | 41.285 | 10.694 | 16.874 | 22.403 |
142
+ | Auto-compound dynamic | 10 | 41.369 | 10.753 | 16.992 | 22.445 |
143
+
144
+ The 32-position atomic extremes exceed 32M and select staged; their
145
+ activations fit. All measured one/eight-position atomic cases fit, including
146
+ several buys. `test/template-gas.test.mjs` requires every transaction's observed
147
+ gas **and** Anvil forwarding estimate to fit its model bound, at least 5%
148
+ observed-gas margin, and a bound below 32M whenever the observation fit that
149
+ ceiling. Begin uses the native 32M budget rather than a fabricated estimate.
150
+
151
+ V4 template coefficients below are compute basis, before at least **25%**
152
+ padding (or larger requested headroom), calldata processing and applicable
153
+ token/reward/NFT/fee-asset work. Existing offerings' coefficients are unchanged.
154
+
155
+ | Component | Raeto fixed/dynamic | Auto-compound static/dynamic |
156
+ | --- | --- | --- |
157
+ | One-market atomic base | 18,000,000 | 18,000,000 |
158
+ | Atomic extra position | 600,000 | 600,000 |
159
+ | Activation call base | 1,500,000 | 1,500,000 |
160
+ | Activation per market | 500,000 | 750,000 |
161
+ | Activation per position | 500,000 | 500,000 |
162
+ | Preparation per market | 9,300,000 | 8,900,000 |
163
+ | Preparation extra position | 70,000 | 70,000 |
164
+ | Each opening buy | 500,000 + 25,000 × that market's positions | Same |
165
+
166
+ The per-buy position term matters: at 32 positions the measured marginal
167
+ exceeds 1M gas per buy, so inheriting the ordinary flat 0.5M would understate
168
+ larger buy sequences. Full calldata contributes 24 gas/byte and fee assets
169
+ 100,000 each before padding. `computeLifecycleLaunchGasBounds` remains the
170
+ consumer API; coefficients are not transaction gas limits.
171
+
172
+ Auto-compounding's `_attemptCompound` exits for `Opening` before its 80k
173
+ low-gas guard whenever `_openingCompletedAt == 0`. The orchestrator executes all
174
+ ordered `_buy` calls before `_openMarkets`; opening completion is the terminal
175
+ market boundary. The harness checks exact quote spend/token outputs against
176
+ `InitialBuyExecuted`, every opening deferral, no `CompoundExecuted`, and
177
+ opening-completed event ordering. Therefore launch activation needs no
178
+ post-opening compounding forwarding reserve; HMM's separate reserve stays intact.
179
+ These launch constants are **not** gas limits for post-opening swaps.
180
+
181
+ ```sh
182
+ # In each terminal, source the existing credential environment without printing it:
183
+ source ~/.config/robinhood-archive-rpc.env
184
+ export ROBINHOOD_ARCHIVE_RPC_URL
185
+ # Terminal 1; stop Anvil when finished:
186
+ anvil --fork-url "$ROBINHOOD_ARCHIVE_RPC_URL" \
187
+ --fork-block-number 101180179 --chain-id 4663 --port 8571 --host 127.0.0.1 \
188
+ --hardfork cancun --gas-limit 120000000 --quiet
189
+ # Terminal 2, in the worktree (source/export the environment here too):
190
+ pnpm build
191
+ TEMPLATE_FORK_RPC_URL=http://127.0.0.1:8571 \
192
+ node test/integration/template-gas.fork.mjs
193
+ # Read-only assessment of retained executed plans; no launch replay:
194
+ TEMPLATE_FORK_RPC_URL=http://127.0.0.1:8571 \
195
+ node test/integration/template-gas.fork.mjs --smoke
196
+ ```
197
+
49
198
  ## Exact ordered opening-buy math
50
199
 
51
- `computeLifecycleOpeningBuys({ plan, predictedToken })` follows all liquidity bands, prior buys, initialized zero-net ticks, bitmap boundaries, both currency directions, LP/opening-hook fees, partial fills and integer output floors. HMM opening work occurs after initial buys. V4's zero price-limit sentinel resolves locally to the contract-defined directional limit without changing calldata; Abyss still rejects zero.
200
+ `computeLifecycleOpeningBuys({ plan, predictedToken })` follows all liquidity bands, prior buys, initialized zero-net ticks, bitmap boundaries, both currency directions, LP/opening-hook fees, partial fills and integer output floors. HMM opening work occurs after initial buys. Auto-compounding defers until opening completes, after all initial buys; Raeto reuses the ordinary fixed/dynamic fee curve. V4's zero price-limit sentinel resolves locally to the contract-defined directional limit without changing calldata; Abyss still rejects zero.
52
201
 
53
202
  Covered `buySlippageBps` protection uses `floor(tokenOut * (10000 - bps) / 10000)`. A zero floor rejects, never becomes1. Independent parity matched token output, quote spent and final square-root price across97 native/fork cases, including both directions, overlapping bands and gaps. Portable historical vectors and focused rounding/sentinel cases live under `test/fixtures/lifecycle-opening-buys.json` and `test/lifecycle-opening-buys.test.mjs`. These conditional curve quotes do not prove conversion, funding or wallet submission.
54
203