Business Frameworks
Business Frameworks · business-frameworks/market/decide/shock@1.2, applied — POST the shock type, the node's marginal buyer tiers, the propensity read, the driver share, lead time and horizon, and an analog if one exists; get the verdict steps and the lag that reach the seat, with the transfer test applied. Deterministic (the node's rule, no model): figures, verdict, action and check with the 298-token node text — schema free at GET /apply/market/decide/shock.
The wallet the 402 directs payment to. Its whole payment record — every payer, every chain — is on the merchant page.
Asset 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913
The payTo wallet does not resolve to a registered ERC-8004 agent. That is not a verdict on the service — most of the catalog is unregistered.
Accepts
The payment requirements as published to the catalog. Read the live 402 before paying — a price here is a claim, not a quote.
Pay 0.05 USDC on Base to 0xbBaC…75D91. The signed payment is good for 5 minutes.
- Paid to
- 0xbBaC…75D91
- USD Coin contract
- 0x8335…02913
- Payment window
- 5 minutes
- As published
- 50000 smallest units
The catalog’s raw entry
[
{
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"payTo": "0xbBaCd5111E0Ca3a52DdAA39D4723Cf75C1A75D91",
"amount": "50000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
}
]Extensions
{
"bazaar": {
"info": {
"input": {
"body": {
"shock_type": "A",
"driver_share": 0.8,
"horizon_months": 36,
"propensity_read": "rent",
"lead_time_months": 24,
"tier_mix_marginal": {
"t1": 0.6,
"t2": 0.2,
"t3": 0.15,
"t4": 0.05
}
},
"type": "http",
"method": "POST",
"bodyType": "json"
},
"output": {
"type": "json",
"example": {
"node": {
"text": "<the node text>",
"cites": []
},
"handle": "business-frameworks/market/decide/shock@1.2",
"applied": {
"basis": [
"<where the node ends and the arithmetic begins>"
],
"check": "<when to re-run>",
"action": [
"<what to do first>"
],
"figures": "<the computed figures>",
"verdict": "<the decision, worked for these inputs>"
},
"cite_as": "McHenry, J. (2026). Business Frameworks, version 1.2, business-frameworks/market/decide/shock@1.2."
}
}
},
"schema": {
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"type",
"method",
"bodyType",
"body"
],
"properties": {
"body": {
"type": "object",
"required": [
"shock_type",
"tier_mix_marginal",
"propensity_read",
"driver_share",
"lead_time_months",
"horizon_months"
],
"properties": {
"analog": {
"type": "object",
"required": [
"verdict_steps",
"tier_mix"
],
"properties": {
"tier_mix": {
"type": "object",
"properties": {
"t1": {
"type": "number"
},
"t2": {
"type": "number"
},
"t3": {
"type": "number"
},
"t4": {
"type": "number"
}
},
"description": "The buyer tiers of that shock's marginal demand, same shape as tier_mix_marginal."
},
"lag_months": {
"type": "integer",
"minimum": 0,
"description": "Months from that shock to the move. Optional; default 0."
},
"verdict_steps": {
"type": "integer",
"minimum": 0,
"description": "How many verdict steps toward pass-through the node moved in the historical shock the caller names."
}
},
"description": "Optional: a historical shock to carry, if its buyer tiers match today's."
},
"shock_type": {
"enum": [
"A",
"B",
"C",
"D"
],
"type": "string",
"description": "A: end demand collapses. B: suppliers overbuild in a capacity race. C: credit to tier 3 and 4 buyers tightens. D: policy — export or materials controls, interconnection rules, priority orders."
},
"driver_share": {
"type": "number",
"maximum": 1,
"minimum": 0,
"description": "Share of the node's demand that comes from the chain's demand driver."
},
"horizon_months": {
"type": "integer",
"minimum": 1,
"description": "The planning horizon in months."
},
"dispersion_flag": {
"type": "boolean",
"description": "true if the node's entities are expected to fare very differently in the shock although the market-level magnitude is one number. Optional; default false."
},
"propensity_read": {
"enum": [
"rent",
"ceded",
"mixed"
],
"type": "string",
"description": "As on market/decide/pricing-power."
},
"lead_time_months": {
"type": "integer",
"minimum": 0,
"description": "The node's lead time to add capacity, in months."
},
"tier_mix_marginal": {
"type": "object",
"properties": {
"t1": {
"type": "number",
"maximum": 1,
"minimum": 0,
"description": "Share of marginal demand from tier 1 buyers: cash-funded, investment grade."
},
"t2": {
"type": "number",
"maximum": 1,
"minimum": 0,
"description": "Share from tier 2 buyers: rate-base regulated."
},
"t3": {
"type": "number",
"maximum": 1,
"minimum": 0,
"description": "Share from tier 3 buyers: contracted leverage."
},
"t4": {
"type": "number",
"maximum": 1,
"minimum": 0,
"description": "Share from tier 4 buyers: merchant and speculative."
}
},
"description": "Shares of the node's marginal demand by buyer tier, summing to about 1. Tier 1 cash-funded investment grade; 2 rate-base regulated; 3 contracted leverage; 4 merchant and speculative."
}
},
"description": "Shares and weights are fractions from 0 to 1 (0.65 means 65%). Scores run 0 to 10. Force scores are whole numbers 1 to 5, scored as pressure on the seller's margins (1 weak, 5 strong). Months are whole numbers. Years are calendar years for crossing and base, and a count for the horizon."
},
"type": {
"type": "string",
"const": "http"
},
"method": {
"enum": [
"POST"
],
"type": "string"
},
"bodyType": {
"enum": [
"json",
"form-data",
"text"
],
"type": "string"
}
},
"additionalProperties": false
},
"output": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object"
}
}
}
}
}
}
}Provenance
- Seen in the source catalog
- 2026-10-12 14:27Z
- Last indexed by Roundhouse
- 2026-10-26 17:30Z
- Last enriched (probe, favicon, geo)
- 2026-10-12 15:16Z
- x402 version
- 2
- Max timeout
- 300s
- Liveness probe
- HTTP 200
Hand this page to an agent
Copy the prompt and paste it into Claude, an MCP client or your own agent — it will vet this service and call it over the free read API. No key, no account.
GET api.roundhouseai.io/v0/endpoints
This endpoint's own trailing-30-day call count, as published by the upstream catalog and snapshotted daily. 19 snapshots so far. Verified volume counts only settlements with an on-chain EIP-3009 marker.
Show the promptHide the prompt
Using Roundhouse, look up the x402 service Business Frameworks and tell me whether it is worth paying: what a call costs, whether the endpoint answered when last probed, and what its payment record actually shows. curl -s 'https://api.roundhouseai.io/v0/endpoints?q=Business%20Frameworks' curl -s 'https://api.roundhouseai.io/v0/merchants/<the payTo wallet returned above>' Then call it: read the price from the live 402 at https://business-frameworks.matryoshka-paradigms.workers.dev/apply/market/decide/shock, never from a cached figure, and pay with an x402 client. The /v0 API needs an API key (`authorization: Bearer rh_live_…`) on everything except /v0/unified* and /v0/endpoints. Either pay over x402 (mint a personal key for $0.01 at GET https://api.roundhouseai.io/v0/test/x402), or ask me for an organization key, which I create at https://roundhouseai.io/dashboard/connections. If you have neither, ask before going further. If you do not have Roundhouse tools or skills installed, read https://roundhouseai.io/skill.md first — it is the whole procedure.