@logswap/sdk 0.5.54 → 0.5.56

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/fpool.d.ts CHANGED
@@ -4,7 +4,7 @@
4
4
  * The other primitive. `CPoolManager` gives every position its own floor on a tick ladder;
5
5
  * `FPoolManager` gives every share the SAME floor and deletes the ladder, the accumulators and the
6
6
  * per-position accounting with it. Reading the two side by side is the fastest way to understand
7
- * either (logswap-docs:docs/multi/f-pool.md).
7
+ * either.
8
8
  *
9
9
  * **A pool is an ID, not an address.** Both primitives are singletons now, so neither has a
10
10
  * per-pool deployment — but they are addressed differently and for a reason. The C manager rides
@@ -15,7 +15,7 @@
15
15
  * **Two products, one contract.** The basket (n > 1) and the launch (n = 1, the creator alone on
16
16
  * the lever) are the same bytecode under two key fields — the KIND (what the manager promises
17
17
  * structurally) and the POLICY (the pool's policy: its roles, its gates, the terms of every harvest
18
- * and release; decisions 041, 044) — and nothing in the maths. `describeFPool` below reports
18
+ * and release) — and nothing in the maths. `describeFPool` below reports
19
19
  * which shape a given pool is, because a UI has to decide what to render.
20
20
  *
21
21
  * **The roles are the policy's, not the manager's** (F version 15). The manager holds no
@@ -32,9 +32,9 @@
32
32
  import { type Address, type Hash, type Hex } from "viem";
33
33
  import { fPoolManagerAbi, padPolicyAbi, polPolicyAbi, privatePolicyAbi, publicPolicyAbi } from "./generated.js";
34
34
  /**
35
- * One contract, one ABI (decisions 039, F version 12): `harvest`, `claim`, `retire`, `regenerate`,
35
+ * One contract, one ABI (F version 12): `harvest`, `claim`, `retire`, `regenerate`,
36
36
  * `setLegs`, the names, the fee parameters are `FPoolManager`'s own code. The roles left it for
37
- * the policies in F version 15 (decisions 044): {@link fPolicyBaseAbi} is what every policy shares,
37
+ * the policies in F version 15: {@link fPolicyBaseAbi} is what every policy shares,
38
38
  * {@link privatePolicyAbi} the desk's, {@link padPolicyAbi} / {@link polPolicyAbi} / {@link publicPolicyAbi}
39
39
  * the kinds'.
40
40
  */
@@ -676,7 +676,7 @@ export declare const fPolicyBaseAbi: readonly [{
676
676
  readonly name: "Refused";
677
677
  }];
678
678
  import type { LogswapClient } from "./client.js";
679
- /** The optional questions a policy declared at birth (decisions 044), as bits of `Pool.asks`. */
679
+ /** The optional questions a policy declared at birth, as bits of `Pool.asks`. */
680
680
  export declare const ASK_SWAP = 1;
681
681
  export declare const ASK_MINT = 2;
682
682
  /** Everything scalar about a basket pool, in one round trip's worth of reads. */
@@ -704,35 +704,35 @@ export interface FPoolState {
704
704
  /** Σ = ∫ Σ_j w_j (dx_j)², accrued even though the fee is fixed — the kernel stays calculable. */
705
705
  bigSigma: bigint;
706
706
  /**
707
- * The pool's policy (decisions 041, 044): the contract the key names, holding the pool's roles
707
+ * The pool's policy: the contract the key names, holding the pool's roles
708
708
  * and answering every question the manager does not decide itself. Read its roles with
709
709
  * {@link getFPoolRoles}; one of the deployment's four ({@link fPoolPolicyFor}) on every protocol pool.
710
710
  */
711
711
  policy: Address;
712
712
  /** Whether the policy asked to be consulted on swaps ({@link ASK_SWAP}) and mints ({@link ASK_MINT}) — the desk's policy does, no other. */
713
713
  asks: number;
714
- /** The sponsor's own label for this pool — the policy's word (decisions 049), mutable and never identity. "" when unnamed. */
714
+ /** The sponsor's own label for this pool — the policy's word, mutable and never identity. "" when unnamed. */
715
715
  name: string;
716
716
  /** The block of the last harvest / composition action: no swap runs in it. */
717
717
  restructureBlock: number;
718
- /** What the pool is — its POLICY's self-description (decisions 049); see {@link FPoolKind}. */
718
+ /** What the pool is — its POLICY's self-description; see {@link FPoolKind}. */
719
719
  kind: FPoolKind;
720
- /** False before the first seed — and between a retire and the next one (decisions 032). */
720
+ /** False before the first seed — and between a retire and the next one. */
721
721
  seeded: boolean;
722
722
  /**
723
- * The live GENERATION (decisions 032). Every retire freezes one into a bundle its shares
723
+ * The live GENERATION. Every retire freezes one into a bundle its shares
724
724
  * redeem ({@link fPoolRedeem}) and opens the next; the share id carries it
725
725
  * ({@link fPoolShareId}), so generations `0 … gen-1` are retired claims and `gen` is the pool.
726
726
  */
727
727
  gen: number;
728
728
  totalSupply: bigint;
729
- /** What the pool holds of each base — the STATE since decisions 026; the mark `x` is derived from it. */
729
+ /** What the pool holds of each base — the STATE; the mark `x` is derived from it. */
730
730
  reserves: bigint[];
731
731
  }
732
732
  /** Read a basket pool whole. Batched — viem multicalls these when the transport allows. */
733
733
  export declare function getFPool(c: LogswapClient, poolId: Hex): Promise<FPoolState>;
734
734
  /**
735
- * The kind of pool — the POLICY's self-description (decisions 049: the manager knows no kind; the
735
+ * The kind of pool — the POLICY's self-description (the manager knows no kind; the
736
736
  * policy the key names is the kind, and what it promises is its code). `public`: the protocol's
737
737
  * own pool — its policy requires the collector as creator; no gate, no operator. `private`, the
738
738
  * desk: the one whose policy may gate swaps and mints, with an operator that reshapes the legs
@@ -746,18 +746,18 @@ export type FPoolKind = "public" | "private" | "pol" | "pad";
746
746
  export declare const SEED_TO_DEAD = 4;
747
747
  /**
748
748
  * What a policy IS — its `kind()` tag, read once per policy address and cached for the client's
749
- * chain: a pool's kind is its policy's word (decisions 049), never the manager's. An unknown tag
749
+ * chain: a pool's kind is its policy's word, never the manager's. An unknown tag
750
750
  * (a policy that is not one of the protocol's four shapes) throws; the app has no screen for it.
751
751
  */
752
752
  export declare function fPoolKindOfPolicy(c: LogswapClient, policy: Address): Promise<FPoolKind>;
753
- /** The pool's label, as its policy holds it (decisions 049). "" when unnamed. */
753
+ /** The pool's label, as its policy holds it. "" when unnamed. */
754
754
  export declare function fPoolNameOf(c: LogswapClient, poolId: Hex, policy?: Address): Promise<string>;
755
- /** The deployment's policy for a kind (decisions 044, 049): the protocol's policy that IS that kind. */
755
+ /** The deployment's policy for a kind: the protocol's policy that IS that kind. */
756
756
  export declare function fPoolPolicyFor(c: LogswapClient, kind: FPoolKind): Address;
757
757
  /** The policy a pool named in its key — one read; {@link getFPool} carries it too. */
758
758
  export declare function fPoolPolicyOf(c: LogswapClient, poolId: Hex): Promise<Address>;
759
759
  /**
760
- * A pool's roles, as its POLICY holds them (decisions 044). `creator` is immutable identity —
760
+ * A pool's roles, as its POLICY holds them. `creator` is immutable identity —
761
761
  * who was born holding the pool; `authority` is the cold key that owns it now, the creator until
762
762
  * a two-step handover; on the desk's kind the `operator` runs it (zero = the authority itself,
763
763
  * {@link fPoolOperatorOf}) and the two gates and the list are its. Every other kind has no
@@ -767,7 +767,7 @@ export interface FPoolRoles {
767
767
  policy: Address;
768
768
  creator: Address;
769
769
  authority: Address;
770
- /** The proposed next authority, until it accepts — zero when nothing is pending (decisions 020). */
770
+ /** The proposed next authority, until it accepts — zero when nothing is pending. */
771
771
  pendingAuthority: Address;
772
772
  operator: Address;
773
773
  pendingOperator: Address;
@@ -782,7 +782,7 @@ export declare function getFPoolRoles(c: LogswapClient, poolId: Hex, state?: Pic
782
782
  export type FPoolShape = "launch" | "basket";
783
783
  export interface FPoolDescription {
784
784
  shape: FPoolShape;
785
- /** The pad is the launch shape, by the kind (decisions 036). */
785
+ /** The pad is the launch shape, by the kind. */
786
786
  legs: number;
787
787
  /** True when the pool holds no quote: an all-base resting ask. base→quote is the one blocked path. */
788
788
  atFloor: boolean;
@@ -794,7 +794,7 @@ export interface FPoolDescription {
794
794
  unharvested: bigint;
795
795
  /** The most a harvest may take now by the KIND's promise: the bid, and on a pad the income. The policy may allow less — {@link FPoolRoles.maxHarvest}. */
796
796
  harvestable: bigint;
797
- /** The dead shares' banked dividend — a pad's pot, the creator's income until a rung is climbed (decisions 041). */
797
+ /** The dead shares' banked dividend — a pad's pot, the creator's income until a rung is climbed. */
798
798
  pot: bigint;
799
799
  }
800
800
  export declare function describeFPool(c: LogswapClient, s: FPoolState): Promise<FPoolDescription>;
@@ -841,7 +841,7 @@ a: {
841
841
  }): Promise<`0x${string}`>;
842
842
  /**
843
843
  * Burn shares for the pro-rata slice of every reserve. Available at any Q, and after dissolution.
844
- * By owner since contracts `c782811` (decisions 019): the account burns its own shares; an
844
+ * By owner: the account burns its own shares; an
845
845
  * operator may pass another owner's address, as on the C manager's `burnById`.
846
846
  */
847
847
  export declare function fPoolBurn(c: LogswapClient,
@@ -877,7 +877,7 @@ export declare function fPoolPreviewZapIn(c: LogswapClient, poolId: Hex, dL: big
877
877
  *
878
878
  * The imbalanced part goes through the pool's own curve before anything is minted. That is not a
879
879
  * penalty: minting against a quote-only deposit would be a zero-slippage, zero-fee swap at stale
880
- * spot, paid for by the existing LPs — 27.4% in f-pool §6's worked example. Routing it through
880
+ * spot, paid for by the existing LPs. Routing it through
881
881
  * the curve deletes the subsidy and hands the fee and impact to the incumbents instead.
882
882
  */
883
883
  export declare function fPoolZapIn(c: LogswapClient, a: {
@@ -919,7 +919,7 @@ export declare function fPoolPreviewZapOut(c: LogswapClient, a: {
919
919
  account: Address;
920
920
  }): Promise<bigint>;
921
921
  /**
922
- * Roll a retired generation's bundle into the pool's live one (decisions 025, 032), on the
922
+ * Roll a retired generation's bundle into the pool's live one, on the
923
923
  * router under one lock: redeem `shares` of generation `gen` in place — the legs, the quote and
924
924
  * any unpulled dividend come back — buy through the pool's own curve only what the live
925
925
  * generation's ratio lacks, mint `dL` of it to `to`, and refund the rest in kind. Quote the
@@ -953,11 +953,11 @@ export declare function fPoolPreviewRollIn(c: LogswapClient, poolId: Hex, gen: b
953
953
  quoteExcess: bigint;
954
954
  }>;
955
955
  /**
956
- * Remove quote, lifting θ — price-neutral, no base moves, and since decisions 028 a DIVIDEND to
956
+ * Remove quote, lifting θ — price-neutral, no base moves, and a DIVIDEND to
957
957
  * every share: the amount goes into the pool's pot and each holder's slice is settled lazily on
958
958
  * their next transfer, mint or burn, or pulled with {@link fPoolClaim}. The sponsor's own slice —
959
959
  * its shares' and the locked seed's at 0xdead — is pushed to `to` at once. On a pad
960
- * the lift stops at the seed floor θ₀ (income only); nothing else bounds it (decisions 035) — an
960
+ * the lift stops at the seed floor θ₀ (income only); nothing else bounds it — an
961
961
  * unlocked pool's authority may take Q to zero.
962
962
  */
963
963
  export declare function fPoolHarvest(c: LogswapClient, a: {
@@ -967,9 +967,9 @@ export declare function fPoolHarvest(c: LogswapClient, a: {
967
967
  account: Address;
968
968
  }): Promise<`0x${string}`>;
969
969
  /**
970
- * Pull one's settled dividend (decisions 028) on a generation's shares without moving them;
970
+ * Pull one's settled dividend on a generation's shares without moving them;
971
971
  * anyone with shares. `gen` defaults to the live generation; a retired generation's harvests
972
- * stay claimable under its own id (decisions 032).
972
+ * stay claimable under its own id.
973
973
  */
974
974
  export declare function fPoolClaim(c: LogswapClient, a: {
975
975
  poolId: Hex;
@@ -977,7 +977,7 @@ export declare function fPoolClaim(c: LogswapClient, a: {
977
977
  to?: Address;
978
978
  account: Address;
979
979
  }): Promise<`0x${string}`>;
980
- /** A holder's dividend as of now on generation `gen` (the live one by default) — banked plus pending on the current balance (decisions 028). */
980
+ /** A holder's dividend as of now on generation `gen` (the live one by default) — banked plus pending on the current balance. */
981
981
  export declare function fPoolDividendOf(c: LogswapClient, poolId: Hex, holder: Address, gen?: bigint | number): Promise<bigint>;
982
982
  /** Plain ERC-20 approval to the F manager — the allowance every DIRECT call pulls against. */
983
983
  export declare function approveTokenForFPoolManager(c: LogswapClient, token: Address): Promise<Hash>;
@@ -987,7 +987,7 @@ export declare function isRouterOperatorForFPool(c: LogswapClient, owner: Addres
987
987
  /** Approve the router to move this account's F-pool shares. Needed once, before any `fPoolZapOut`. */
988
988
  export declare function approveRouterForFPool(c: LogswapClient, account: Address): Promise<`0x${string}`>;
989
989
  /**
990
- * The ERC-6909 id carrying generation `gen` of a pool's shares (decisions 032): bit 255 set (the
990
+ * The ERC-6909 id carrying generation `gen` of a pool's shares: bit 255 set (the
991
991
  * share flag), the pool id's top 239 bits, the generation in the low 16. Each generation's shares
992
992
  * are their own asset — a retired one is a claim on its bundle, the live one on the pool.
993
993
  */
@@ -1000,7 +1000,7 @@ export declare function fPoolGen(c: LogswapClient, poolId: Hex): Promise<number>
1000
1000
  export declare function fPoolClaimId(token: Address): bigint;
1001
1001
  /** A holder's shares of generation `gen` — the live one by default. */
1002
1002
  export declare function fPoolShareBalance(c: LogswapClient, poolId: Hex, owner: Address, gen?: bigint | number): Promise<bigint>;
1003
- /** A retired generation's bundle (decisions 032): what is left to redeem — supply, quote, base per leg index. */
1003
+ /** A retired generation's bundle: what is left to redeem — supply, quote, base per leg index. */
1004
1004
  export declare function fPoolBundleOf(c: LogswapClient, poolId: Hex, gen: bigint | number): Promise<{
1005
1005
  supply: bigint;
1006
1006
  quote: bigint;
@@ -1014,10 +1014,10 @@ export interface FPoolClaimRow {
1014
1014
  quote: bigint;
1015
1015
  dividend: bigint;
1016
1016
  }
1017
- /** A holder's claims on a pool's retired generations — one row per generation still held (decisions 032). */
1017
+ /** A holder's claims on a pool's retired generations — one row per generation still held. */
1018
1018
  export declare function fPoolClaimsOf(c: LogswapClient, poolId: Hex, owner: Address): Promise<FPoolClaimRow[]>;
1019
1019
  /**
1020
- * Redeem `shares` of a RETIRED generation (decisions 032): its bundle, pro rata — the base per
1020
+ * Redeem `shares` of a RETIRED generation: its bundle, pro rata — the base per
1021
1021
  * leg and the quote — plus the owner's settled dividend. Not `burn`: nothing can move a bundle's
1022
1022
  * ratio, so there is no slippage to bound. The owner, or an operator of theirs.
1023
1023
  */
@@ -1065,7 +1065,7 @@ export interface FPoolCreateArgs {
1065
1065
  */
1066
1066
  kind: FPoolKind;
1067
1067
  /**
1068
- * The pool's policy (decisions 041, 044, 049): the contract the key names, approved by the
1068
+ * The pool's policy: the contract the key names, approved by the
1069
1069
  * registry, and the pool's kind. Defaults to the deployment's policy for `kind`
1070
1070
  * ({@link fPoolPolicyFor}) — the one every protocol pool names.
1071
1071
  */
@@ -1104,8 +1104,8 @@ export declare function fPoolInitialize(c: LogswapClient, a: FPoolCreateArgs): P
1104
1104
  /** The pool id is the key's hash — pure, so it can be read before or after creation. */
1105
1105
  export declare function fPoolIdOf(c: LogswapClient, a: Omit<FPoolCreateArgs, "account">): Promise<Hex>;
1106
1106
  /**
1107
- * The reserve a leg holds at a mark: `R = Lj·e^{−x}`, WAD math. The seed names RESERVES since
1108
- * decisions 029 — the sponsor states holdings and the price follows, `p = Lj / R` — so this is
1107
+ * The reserve a leg holds at a mark: `R = Lj·e^{−x}`, WAD math. The seed names RESERVES —
1108
+ * the sponsor states holdings and the price follows, `p = Lj / R` — so this is
1109
1109
  * the one conversion from a price to what the pool will hold, done here, on the way in. Float
1110
1110
  * precision (~1e-16 relative) is what a seed needs: any reserve is a legal seed, and the mark
1111
1111
  * the pool derives from it is the one the sponsor meant to within that.
@@ -1130,7 +1130,7 @@ export declare function fPoolSeed(c: LogswapClient, a: {
1130
1130
  weights: bigint[];
1131
1131
  })): Promise<`0x${string}`>;
1132
1132
  /**
1133
- * Retire the live generation (decisions 025, 032, 035) — the raw entry (`dissolve` before F
1133
+ * Retire the live generation — the raw entry (`dissolve` before F
1134
1134
  * version 14). Allowed only at an empty bid, Q ≤ L/1e9, on every pool: the market took it, or the
1135
1135
  * operator harvested it out first ({@link fPoolRetire} does both in one transaction). The live
1136
1136
  * (S, Q, R_j) become a frozen bundle every share of this generation redeems ({@link fPoolRedeem})
@@ -1153,15 +1153,15 @@ export declare function fPoolRetire(c: LogswapClient, a: {
1153
1153
  }): Promise<`0x${string}`>;
1154
1154
  /**
1155
1155
  * The harvests that empty an unlocked pool's bid, in order — what a relaunch sends before its
1156
- * `retire` (decisions 035: a retire needs an empty bid on every pool). Since F version 14 one
1156
+ * `retire` (a retire needs an empty bid on every pool). Since F version 14 one
1157
1157
  * `harvest(Q)` does it: the protocol's cut leaves the pool with the amount (with no collector
1158
1158
  * there is no cut). `[]` when the bid is already empty. Throws on a pad that still bids (its bid
1159
1159
  * empties only as the market sells it down), and when the pool's policy keeps a floor on the bid
1160
- * (`PolPolicy.keepQuote`, decisions 044): a `retire` under that policy waits for the market.
1160
+ * (`PolPolicy.keepQuote`): a `retire` under that policy waits for the market.
1161
1161
  */
1162
1162
  export declare function fPoolEmptyingHarvests(c: LogswapClient, poolId: Hex): Promise<bigint[]>;
1163
1163
  /**
1164
- * Release the dead shares' pot under the policy's terms (decisions 041, 044) — a pad's graduation.
1164
+ * Release the dead shares' pot under the policy's terms — a pad's graduation.
1165
1165
  * The manager harvests the generation's income first (the pot then holds everything the dead
1166
1166
  * shares earned), asks the policy, and applies its answer: a share to the payee it names (the pad's
1167
1167
  * creator — the pool's authority), a cut to the collector, the rest bought in as more of the
@@ -1174,7 +1174,7 @@ export declare function fPoolRegenerate(c: LogswapClient, a: {
1174
1174
  account: Address;
1175
1175
  }): Promise<`0x${string}`>;
1176
1176
  /**
1177
- * The relaunch as ONE transaction (decisions 025, 032, 035, 037): `harvest` the bid out — a
1177
+ * The relaunch as ONE transaction: `harvest` the bid out — a
1178
1178
  * dividend to every share, {@link fPoolEmptyingHarvests} — `retire` the live generation at the
1179
1179
  * empty bid, `redeem` the caller's own shares of it (when `shares` > 0), optionally `setLegs` the
1180
1180
  * next generation's composition (`legs`: a private pool's reshape — retire, admit, reweight), and
@@ -1191,7 +1191,7 @@ export declare function fPoolRelaunch(c: LogswapClient, a: {
1191
1191
  shares: bigint;
1192
1192
  L0: bigint;
1193
1193
  Q0: bigint;
1194
- /** the next generation's composition (decisions 037): one weight per existing leg (0 retires it), then one per new base */
1194
+ /** the next generation's composition: one weight per existing leg (0 retires it), then one per new base */
1195
1195
  legs?: {
1196
1196
  weights: bigint[];
1197
1197
  newBases?: Address[];
@@ -1204,7 +1204,7 @@ export declare function fPoolRelaunch(c: LogswapClient, a: {
1204
1204
  x0: bigint[];
1205
1205
  weights: bigint[];
1206
1206
  })): Promise<`0x${string}`>;
1207
- /** Where a pad's seed lives (decisions 036): `seed` mints every share of a pad here itself. */
1207
+ /** Where a pad's seed lives: `seed` mints every share of a pad here itself. */
1208
1208
  export declare const DEAD_ADDRESS: Address;
1209
1209
  /** The manager's `MIN_SHARES`: the seed mints this much to 0xdead on every pool, the rest to the seeder — or, on a pad, to 0xdead too. */
1210
1210
  export declare const F_MIN_SHARES = 1000n;
@@ -1248,8 +1248,8 @@ export declare function fPoolLaunchCalls(poolId: Hex, a: FPoolLaunchArgs & ({
1248
1248
  x0: bigint[];
1249
1249
  })): Hex[];
1250
1250
  /**
1251
- * The desk's opening posture, on its policy (decisions 044, 048): gated minting, the creator a
1252
- * minter. No appointment: the authority is the operator until one is appointed (decisions 037).
1251
+ * The desk's opening posture, on its policy: gated minting, the creator a
1252
+ * minter. No appointment: the authority is the operator until one is appointed.
1253
1253
  * Two writes to `PrivatePolicy`; the launch batch cannot carry them (they are not manager calls).
1254
1254
  */
1255
1255
  export declare function fPoolDeskOpening(c: LogswapClient, a: {
@@ -1283,7 +1283,7 @@ export declare function fPoolLaunch(c: LogswapClient, a: FPoolLaunchArgs & ({
1283
1283
  poolId: Hex;
1284
1284
  }>;
1285
1285
  /**
1286
- * Propose the next authority — step one of two (decisions 020), on the pool's policy. Nothing moves
1286
+ * Propose the next authority — step one of two, on the pool's policy. Nothing moves
1287
1287
  * until `next` accepts; proposing again (the zero address included) cancels a pending proposal.
1288
1288
  * Indexed on-chain via the policy's AuthorityProposed.
1289
1289
  */
@@ -1296,7 +1296,7 @@ export declare function fPoolProposeAuthority(c: LogswapClient, a: {
1296
1296
  /**
1297
1297
  * Accept a pending proposal — step two; only the proposed address can. Indexed via the policy's
1298
1298
  * AuthoritySet. On the desk's policy this clears the operator (pending and accepted) and voids the
1299
- * seller's list (decisions 040, 044).
1299
+ * seller's list.
1300
1300
  */
1301
1301
  export declare function fPoolAcceptAuthority(c: LogswapClient, a: {
1302
1302
  poolId: Hex;
@@ -1313,7 +1313,7 @@ export declare function fPoolSetGates(c: LogswapClient, a: {
1313
1313
  }): Promise<`0x${string}`>;
1314
1314
  /**
1315
1315
  * Add to or remove from the pool's MINTERS — who may mint, and swap (a zap in is both under one
1316
- * lock) — in one call (the authority, on the desk's policy; decisions 048). The list is keyed by
1316
+ * lock) — in one call (the authority, on the desk's policy). The list is keyed by
1317
1317
  * the authority that granted it: a handover starts the buyer with an empty one. Stamps the
1318
1318
  * block: no swap lands in it (047).
1319
1319
  */
@@ -1324,7 +1324,7 @@ export declare function fPoolSetMinters(c: LogswapClient, a: {
1324
1324
  account: Address;
1325
1325
  policy?: Address;
1326
1326
  }): Promise<`0x${string}`>;
1327
- /** Add to or remove from the pool's TAKERS — who may swap only — in one call (the authority; decisions 048). Stamps the block. */
1327
+ /** Add to or remove from the pool's TAKERS — who may swap only — in one call (the authority). Stamps the block. */
1328
1328
  export declare function fPoolSetTakers(c: LogswapClient, a: {
1329
1329
  poolId: Hex;
1330
1330
  who: readonly Address[];
@@ -1338,7 +1338,7 @@ export declare function fPoolIsMinter(c: LogswapClient, poolId: Hex, who: Addres
1338
1338
  export declare function fPoolIsTaker(c: LogswapClient, poolId: Hex, who: Address, policy?: Address): Promise<boolean>;
1339
1339
  /** May swap: a minter or a taker (consulted only while the swap gate is on). */
1340
1340
  export declare function fPoolIsAllowed(c: LogswapClient, poolId: Hex, who: Address, policy?: Address): Promise<boolean>;
1341
- /** Label the pool — the authority's own words on the pool's POLICY (decisions 049), mutable, never identity. At most 31 bytes of UTF-8. */
1341
+ /** Label the pool — the authority's own words on the pool's POLICY, mutable, never identity. At most 31 bytes of UTF-8. */
1342
1342
  export declare function fPoolSetName(c: LogswapClient, a: {
1343
1343
  poolId: Hex;
1344
1344
  name: string;
@@ -1346,7 +1346,7 @@ export declare function fPoolSetName(c: LogswapClient, a: {
1346
1346
  policy?: Address;
1347
1347
  }): Promise<`0x${string}`>;
1348
1348
  /**
1349
- * What the PROTOCOL says an address is — "Keyrock" — on the REGISTRY (decisions 049). Only its
1349
+ * What the PROTOCOL says an address is — "Keyrock" — on the REGISTRY. Only its
1350
1350
  * owner, the LOG authority, may write it, which is what makes it an attestation rather than a
1351
1351
  * claim anyone could make about themselves.
1352
1352
  */
@@ -1359,7 +1359,7 @@ export declare function fPoolSetSponsorName(c: LogswapClient, a: {
1359
1359
  export declare function fPoolSponsorName(c: LogswapClient, who: Address): Promise<string>;
1360
1360
  /** The registry the manager asks at every birth — `addresses.policyRegistry`, else the manager's word; zero on a bare deployment. */
1361
1361
  export declare function fPoolRegistryOf(c: LogswapClient): Promise<Address>;
1362
- /** Who runs the pool (decisions 037): the appointed operator, or the authority until one is. */
1362
+ /** Who runs the pool: the appointed operator, or the authority until one is. */
1363
1363
  export declare function fPoolOperatorOf(s: Pick<FPoolRoles, "authority" | "operator">): Address;
1364
1364
  /**
1365
1365
  * Propose the operator (the authority, on the desk's policy) — the hot key that runs the pool:
@@ -1380,7 +1380,7 @@ export declare function fPoolAcceptOperator(c: LogswapClient, a: {
1380
1380
  }): Promise<`0x${string}`>;
1381
1381
  /**
1382
1382
  * The next generation's composition (operator; private pools only; ONLY while the pool is
1383
- * unseeded — between a retire and the seed that prices it, decisions 037). `weights` has one
1383
+ * unseeded — between a retire and the seed that prices it). `weights` has one
1384
1384
  * entry per leg the pool has ever had, in index order (0 retires a leg; indices are never reused),
1385
1385
  * then one per base in `newBases`, appended; they sum to 1e18 exactly. No value moves: the
1386
1386
  * following {@link fPoolSeed} names every reserve. A live reshape is {@link fPoolRelaunch} with
@@ -1411,7 +1411,7 @@ export interface DiscoveredFPool {
1411
1411
  weights: bigint[];
1412
1412
  phi: bigint;
1413
1413
  kind: FPoolKind;
1414
- /** The pool's policy AT BIRTH — the contract the key names (decisions 041, 044, 045). The LIVE one is {@link getFPool}'s `policy`: the registry's owner may have moved the pool (046, `PolicyMigrated`). */
1414
+ /** The pool's policy AT BIRTH — the contract the key names. The LIVE one is {@link getFPool}'s `policy`: the registry's owner may have moved the pool (046, `PolicyMigrated`). */
1415
1415
  policy: Address;
1416
1416
  /** Who was born holding the pool (immutable). The LIVE authority is the policy's — {@link getFPoolRoles}. */
1417
1417
  creator: Address;
@@ -1419,7 +1419,7 @@ export interface DiscoveredFPool {
1419
1419
  block: bigint;
1420
1420
  /** Whether `seed` has run; an unseeded pool has no floor and no float, so nothing to show. */
1421
1421
  seeded: boolean;
1422
- /** The quote the pool was born with. Zero is the launchpad's signature (launchpad.md §3). */
1422
+ /** The quote the pool was born with. Zero is the launchpad's signature. */
1423
1423
  q0: bigint;
1424
1424
  /**
1425
1425
  * The PRODUCT the pool is, by the spec's definition rather than a guess: a LAUNCH is one asset