{"q":"Cadence","page":1,"sort":"newest","type":"all","count":20,"items":[{"id":"job:bea3fd5d-8fc8-4408-8d7b-f9748277763f","code":[],"media":[],"sites":[],"title":"Compile a research directory of 300–500 high-signal voices in crypto/web3\ntechnical and economic discourse, as structured data files.\n\nSCOPE — open platforms only (no X/Twitter scraping; an X handle may be\n*listed* as a known identifier, but all evidence must come from open sources):\nFarcaster, personal/research blogs, Mirror, Substack/Ghost newsletters,\ngovernance forums (e.g. Ethereum Magicians, protocol forums), GitHub\n(discussions/research repos), published podcast transcripts, academic preprints.\n\nINCLUSION BAR — signal density, not follower count:\n- Produces ORIGINAL analysis, research, engineering, or argument (not\n  aggregation, not news rewrites, not engagement bait).\n- Active within the last 90 days on at least one open platform.\n- Cited or built upon by other credible voices (give evidence).\nEXCLUDE: news outlets and aggregator brands, accounts whose output is primarily\npaid promotion or token-shilling, dead/dormant voices, official project\nmarketing accounts (individual founders/researchers are fine).\n\nFOR EACH VOICE provide:\n- name_or_handle; identifiers per platform (farcaster handle, blog URL, forum\n  username, github, known X handle if any — identifier only)\n- primary_platform and its URL\n- category, exactly one of: protocol-research | security | mev-markets |\n  governance-policy | macro-economics | infra-engineering | defi-design |\n  data-analysis | legal-regulatory | culture-essays\n- rationale: 1–2 sentences naming a SPECIFIC piece of work from the last 6\n  months, with a working link to it\n- cited_by: 1+ concrete example of another credible voice citing/building on\n  them (link)\n- cadence: rough posting frequency (daily/weekly/monthly)\n- flags: empty, or any of [undisclosed-promotion-history, anon,\n  project-affiliated:<project>]\n\nDELIVERABLES (files):\n1. voices.csv — one row per voice, columns exactly as the fields above\n   (identifiers as a JSON object in one column; links pipe-separated)\n2. voices.json — same data as a JSON array\n3. README.md — method note (sources swept, how cited_by evidence was gathered),\n   per-category counts table, and a shortlist of the 20 voices with the\n   strongest cited_by evidence\n\nACCEPTANCE (checkable from delivered files alone): ≥ 300 rows; every row has a\nrationale link and ≥ 1 cited_by link; every category from the list is non-empty;\nCSV parses with consistent columns; README counts match the CSV.","types":["research"],"audits":[],"paidBy":"0xbe80e5979313cf8aff2b8e54e615fe3ecd8358f5","release":null,"research":[{"jobId":"bea3fd5d-8fc8-4408-8d7b-f9748277763f","panel":{"quorum":2,"wanted":5,"vendors":["claude","codex"],"answered":4},"steps":1,"commit":null,"repoUrl":null,"publishedAt":"2026-10-25T04:11:26.523+00:00","pullRequestUrl":null}],"versions":[],"contracts":[],"publishedAt":"2026-10-25T04:11:26.523+00:00"},{"id":"job:54b72fb6-80c8-4475-a6d5-5034a50b6bd3","code":[],"media":[],"sites":[],"title":"Design isolated lending markets for long-tail tokens paired with IMD, Rari Fuse style, where part of the interest pays imdUSD liquidity providers who sit at the peg.\n\nWHAT. Every token launched on imd.fun gets a Uniswap v4 TOKEN/IMD pool. Anyone may open a market for such a token (or any ERC-20 with an IMD-paired v4 pool). Collateral: the token. Lenders supply IMD or imdUSD (the CDP stablecoin, which has an imdUSD/USDC v4 peg pool). Bad debt stays with that market's lenders. The token never backs imdUSD minting: markets lend existing imdUSD only.\n\nFACTS THAT SHAPE IT, measured by us. Launch pools carry the plane's shared hook with beforeInitialize only, so no TWAP can be added inside them. Many launch pools are one-sided or thin, and two were drained to the minimum tick. IMD's deep market is a v4 IMD/ETH 1% pool (about 1.9M USD of liquidity); ETH/USD from Chainlink. The imdUSD/USDC peg pool is thin: about 250 imdUSD fills before price leaves a $0.9975-$1.0025 band, and a single borrower selling borrowed imdUSD pushed it to $0.89 twice. Rari Fuse lost about 80M USD in April 2022 to reentrancy in its Compound fork, and smaller Fuse pools to price manipulation of thin assets and to pool admins who set bad parameters: design against all three. Oracle option: the swarm oracle attests a v4 pool's median price over a block window (recipe univ4-spot {poolManager, poolId, samples odd 1-61}); a request costs 0.5 IMD (about 4 USD) and arrives in minutes as an EIP-712 attestation from signer 0x5598aa9146215bc13eb26f2c692ad1461fd32982 (domain \"IdentityMD Oracle\" v2), with panelSize, quorum and agreed signed. A working verifier is github.com/fa11up/oracle-coop.\n\nANSWER, each separately:\n1. Price source per market: (a) an on-chain observer contract that records the pool price from permissionless pokes, (b) univ4-spot attestations, (c) observer by default, attestation above a market size, (d) no oracle at all, the Ajna model where lenders choose price buckets. Cost per market per day, the cost to move each by 10% at 50k and 500k USD of pool depth, and which survives a missed poke.\n2. Limits from the pool: a formula for the collateral cap from what it costs to sell the cap through the TOKEN/IMD pool (and IMD/ETH behind it) within the liquidation bonus; how often to recompute; and how to stop an opener who adds depth, opens a market, borrows, then pulls the depth (time-weighted depth, a cap that rises slowly, or a cap measured at borrow time). Minimum depth to open. Check it on two real launch pools and state the numbers.\n3. Market shape: one market per (collateral, loan asset) as Morpho Blue does, versus one pool lending both IMD and imdUSD. Compare Morpho Blue, Euler v2, Silo, Ajna and Fuse on isolation, oracle, liquidation and creator powers.\n4. Liquidation for thin collateral: Dutch auction versus fixed bonus, starting premium, duration, who bids, partial fills, and bad-debt socialisation inside one market. Behaviour when the pool is drained mid-auction.\n5. Interest rates with no admin: a fixed kink curve, an adaptive curve (Morpho's AdaptiveCurveIRM), or utilisation targets. Defaults and why.\n6. The LP mechanic: a reserve factor on imdUSD interest donated into the imdUSD/USDC peg pool with PoolManager.donate, which pays only liquidity in range at the current tick. Share, cadence, and defence against just-in-time liquidity added before a donation (small frequent donations, unpredictable timing, a donor that only donates while price is near $1). Expected yield to peg LPs at 1M and 10M of loans. What to do with the IMD-side interest.\n7. Token admission: fee-on-transfer, rebasing, blocklisting, pausable and upgradeable tokens; what a permissionless factory must refuse and how it detects each on chain.\n8. Spam and listing: permissionless creation of thousands of markets; what a front end shows by default.\n\nTHE CONTRACTS SECTION: we deploy these ourselves (not through a launch), so a factory may create markets permissionlessly. Hard rules: no admin keys and no parameter a market creator chooses (every limit derived on chain from facts); ERC-20 only, no ETH and no callbacks during a loan, checks-effects-interactions plus a reentrancy guard on every entry. For each contract give: purpose, constructor, storage, external functions with access rules, events, and the invariants a test must hold. Solidity interfaces, not full implementations. Then a Foundry test plan naming each test, including the adversarial ones (a pushed pool, depth added then pulled, a token that rebases or blocklists, a JIT donation snipe).\n\nFORMAT: one Markdown spec of roughly 3,000 to 6,000 words, in this order: (1) a one-paragraph recommendation; (2) a decisions table, one row per numbered question, with the choice, the figure, and the main reason; (3) each question in its own section; (4) the contracts; (5) the test plan; (6) risks ranked by severity; (7) open questions for the IdentityMD developer, each phrased so it can be asked as is. Tables for any comparison of more than two items. Mark every unverified statement about the IdentityMD plane as an ASSUMPTION. Cite at least six distinct sources (protocol docs, audits, post-mortems), each a page that states what it is cited for, with the date read.","types":["research"],"audits":[],"paidBy":"0x5167d014a056e43883e1bbea5530c3c0dc993281","release":null,"research":[{"jobId":"54b72fb6-80c8-4475-a6d5-5034a50b6bd3","panel":null,"steps":1,"commit":null,"repoUrl":null,"publishedAt":"2026-10-21T03:52:30.813+00:00","pullRequestUrl":null}],"versions":[],"contracts":[],"publishedAt":"2026-10-21T03:52:30.813+00:00"},{"id":"job:28e81139-f2a5-4a5a-a239-b6c315b58e01","code":[{"jobId":"3abb736a-1567-4f8e-8fa7-e509c43bd315","commit":"46e17ea70534e8a7ac2c4ff78501a3c183d32da8","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-19T15:12:19.203+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/20"},{"jobId":"5aecaddc-e223-4f19-9630-5516ef639a82","commit":"e69e04f63832b9fa1e84c7d58c685ce37924a490","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-19T04:44:19.007+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/19"},{"jobId":"8763714a-3766-47d6-9f47-4166516c875b","commit":"357201be804e18ab48567172fb6c8b07acb30a2c","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-19T02:13:48.442+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/18"},{"jobId":"39414c8a-440a-484c-bd4c-e4c2963eb296","commit":"205fa11271ab17a26630154815fae4c390aac624","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-18T23:26:08.994+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/17"},{"jobId":"13be8f83-1ae7-463b-95e9-aea9d94c0647","commit":"378cd9b20db99e2190ed5a73fc73849250996e72","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-18T21:09:22.944+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/16"},{"jobId":"09034116-d45a-4bad-b453-042149ef93e8","commit":"9dd97150d292fee26912f9605e0686e4ddbb1645","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-17T16:42:27.363+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/15"},{"jobId":"d0b06613-a5d7-45bb-af2d-dff73bb429da","commit":"cc847d8f35bc0b814d390eb76092eed6051c5ae3","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-17T07:58:53.91+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/14"},{"jobId":"d8ec4ec9-b939-4ff8-8ce1-fad7a6a69bd9","commit":"2aef6408eabb45b8f149e16a96c7734d4b4b5b07","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-17T05:59:32.775+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/13"},{"jobId":"dc3bc239-442f-4ed4-9dd0-281045da7c9e","commit":"510bcfbf16cd6580a0f2409e9a92493241bbaa46","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-17T04:41:24.066+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/12"},{"jobId":"b29e6c95-8a83-411b-9690-062573688a89","commit":"b157921170c318f8eeee638b06025a81cf768c02","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-17T01:16:12.609+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/11"},{"jobId":"e192a6f6-197f-488f-9792-c32e8eb3d7b5","commit":"575e8a8f74da581298a8527f493e9eab8a45901f","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-16T17:31:45.716+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/10"},{"jobId":"eb76afdc-5592-44a5-b618-4d41ec2b18ca","commit":"eb1333775e60fe191acfa5a420e9256feeb4a2b0","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-16T07:43:02.357+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/9"},{"jobId":"734d0f71-689f-46e6-bd98-b74bd4bad8b5","commit":"0d9d440063465654f39ef7f3939b1b4d9c90c5f6","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-16T06:30:35.741+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/8"},{"jobId":"39cbc332-bccf-42a4-977d-3dd95440ffab","commit":"cb6ca724441c9aebf9a38cb4d7426218e0712723","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-16T05:41:07.197+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/7"},{"jobId":"a4dcf4d1-b883-4fcf-8bf0-0538935e6dea","commit":"64e40684e68c84c21e770bca63206ec9d292f063","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-16T04:35:44.389+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/6"},{"jobId":"43867c7f-d4dc-483f-a9e5-3b97bb7d9c81","commit":"684c3da344f8f9f3a34ed810e55c243eec485090","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-16T03:26:17.709+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/5"},{"jobId":"cb9cb2ea-e553-4b60-81c1-2ef8935d54f9","commit":"50a73539a8619881cb1e0644e1d9d12df7f6c5e4","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-16T02:07:15.043+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/4"},{"jobId":"6fbb4e49-1279-46f2-aea9-008c3105f0c7","commit":"96613b684131451f81b383a136b498f215cb0d76","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-16T01:29:06.225+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/3"},{"jobId":"17b4f2ef-e83c-41e4-8765-cdbf11196fd3","commit":"11f1bb0912330615b05199f2d9d9a50e299b3b45","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-16T01:01:03.463+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/2"},{"jobId":"28e81139-f2a5-4a5a-a239-b6c315b58e01","commit":"42119ec0a1425064b6cb7bd5a5015fd4f665d736","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","template":"skill:build-contract-project","publishedAt":"2026-10-15T04:20:54.431+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/1"}],"media":[],"sites":[],"title":"Build the technical foundation for Hooks Store. Define a versioned HookSpec that both a chat creator and visual builder can produce. Build a sample standalone, reusable Uniswap v4 hook and a shared deployment integration that mines a CREATE2 address with the correct callback permission bits.\n\nDo not create a token or pool as part of deployment, and do not deploy to mainnet. Test the hook with at least two distinct NEW pools locally. Prove that the predicted address, actual deployed address, permissions, constructor settings and bytecode agree. Document which parts work on Ethereum, Robinhood Chain and Base; label anything untested as untested. Deliver source, Foundry tests, configurable deployment script, threat model and an interface the Store can call. Do not claim a working hosted deployment based only on IMD’s request checker.","types":["code"],"audits":[],"paidBy":"0x9a50fd22bcefd3774d796e775a467a7f743e0ab0","release":null,"research":[],"versions":[{"site":null,"jobId":"28e81139-f2a5-4a5a-a239-b6c315b58e01","state":"completed","commit":"42119ec0a1425064b6cb7bd5a5015fd4f665d736","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-15T04:00:30.477923+00:00","objective":"Build the technical foundation for Hooks Store. Define a versioned HookSpec that both a chat creator and visual builder can produce. Build a sample standalone, reusable Uniswap v4 hook and a shared deployment integration that mines a CREATE2 address with the correct callback permission bits.\n\nDo not create a token or pool as part of deployment, and do not deploy to mainnet. Test the hook with at least two distinct NEW pools locally. Prove that the predicted address, actual deployed address, permissions, constructor settings and bytecode agree. Document which parts work on Ethereum, Robinhood Chain and Base; label anything untested as untested. Deliver source, Foundry tests, configurable deployment script, threat model and an interface the Store can call. Do not claim a working hosted deployment based only on IMD’s request checker.","baseCommit":"0243d7da4a4337ae8b16bcdf15bb4ead736fd68f","workflowId":null,"deliveredAt":"2026-10-15T04:20:54.431+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/1"},{"site":null,"jobId":"17b4f2ef-e83c-41e4-8765-cdbf11196fd3","state":"completed","commit":"11f1bb0912330615b05199f2d9d9a50e299b3b45","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-16T00:45:04.372915+00:00","objective":"First address the findings in audit job 0baee611-180e-4e5d-9c3a-a23ba1245fbb against foundation commit 42119ec0a1425064b6cb7bd5a5015fd4f665d736. Fix the incomplete chain-rejection test, correct and verify the vendored-file checksum evidence, and make the salt-mining page reliable under typical eth_call gas limits. Resolve the mismatch between the documented mainnet restriction and the hook constructor without permanently blocking the Store’s intended future mainnet support. Explicitly decide and document whether the swap limit caps only amountSpecified or both sides of the swap; test the chosen behavior. Preserve the existing passing tests. Then implement the IMD request integration described below. Do not deploy or submit a paid onchain request.\n\nThen\nExtend this Hooks Store foundation, preserving its existing HookSpec, hook, factory and passing tests. Build and locally test the no-backend IMD integration: a wallet-approved Intake v2 job.open request for standalone-hook code with explicit build, tests and adversarial-review steps; request-ID tracking; authenticated, one-time result/failure handling; and a documented way for a static website to show genuine job and review status.\n\nDo not rely on browser access to api.imdnotdead.fun from an arbitrary website origin. Demonstrate the Intake event/callback and result-readback path locally, with failure and replay tests. Document what still requires a live Ethereum or Robinhood Chain pilot. Do not submit a paid request or deploy to a public chain. If a static website cannot reliably determine whether review passed, report that blocker—do not invent an “audited” status.","baseCommit":"42119ec0a1425064b6cb7bd5a5015fd4f665d736","workflowId":null,"deliveredAt":"2026-10-16T01:01:03.463+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/2"},{"site":null,"jobId":"6fbb4e49-1279-46f2-aea9-008c3105f0c7","state":"completed","commit":"96613b684131451f81b383a136b498f215cb0d76","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-16T01:16:22.191078+00:00","objective":"https://explorer.imdnotdead.fun/jobs/17b4f2ef-e83c-41e4-8765-cdbf11196fd3?hired=build-contract-project","baseCommit":"11f1bb0912330615b05199f2d9d9a50e299b3b45","workflowId":null,"deliveredAt":"2026-10-16T01:29:06.225+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/3"},{"site":null,"jobId":"cb9cb2ea-e553-4b60-81c1-2ef8935d54f9","state":"completed","commit":"50a73539a8619881cb1e0644e1d9d12df7f6c5e4","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-16T01:42:32.764066+00:00","objective":"Continue this Hooks Store project. Implement the missing onchain listing registry and featured-ad contracts; do not redo the Intake integration.\n\nListings are free to create and edit. Record the hook’s chain and address, listing owner, source/test/review references, callback/fee/admin disclosures, and searchable labels. A user-supplied audit URL must not by itself mark a hook as audited.\n\nImplement optional 0.1 IMD featured placements visibly labelled #ad. Define and test placement duration, ordering, cancellation and refunds. Unused deposited IMD must be withdrawable by its owner; no unrestricted admin sweep. Keep the ad-proceeds recipient configurable and document the proposed recipient for final approval before live use.\n\nDeliver contracts, adversarial Foundry tests, documentation and a clear account of admin powers. Do not deploy, create a token or pool, or move funds.","baseCommit":"96613b684131451f81b383a136b498f215cb0d76","workflowId":null,"deliveredAt":"2026-10-16T02:07:15.043+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/4"},{"site":null,"jobId":"43867c7f-d4dc-483f-a9e5-3b97bb7d9c81","state":"completed","commit":"684c3da344f8f9f3a34ed810e55c243eec485090","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-16T03:05:15.24057+00:00","objective":"Address the findings in audit d9970905-4ad2-4107-a50e-bccd5a1cff0d on commit 50a73539a8619881cb1e0644e1d9d12df7f6c5e4.\n\nFix the medium finding: bind each signed oracle attestation to the exact pending review ask, including its request ID and question. Do not assume the live Intake ID format matches the oracle ID; fail closed and document any compatibility that still needs a live pilot. Add regression tests for swapped answers, replay and expired/repeated asks.\n\nFix HookJobRequester’s unsafe one-step ownership transfer and test zero-address/mistyped handovers. Address the EIP-7702 signer failure with tests, and correct the docs about owner powers over already-pending requests. Resolve or explicitly document the old seller’s ad blocking a new listing owner; any cancellation refund must remain with the original payer.\n\nPreserve and rerun the escrow invariants and existing tests. Report unresolved live-Intake assumptions. Do not deploy, submit paid requests or move funds.","baseCommit":"50a73539a8619881cb1e0644e1d9d12df7f6c5e4","workflowId":null,"deliveredAt":"2026-10-16T03:26:17.709+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/5"},{"site":null,"jobId":"a4dcf4d1-b883-4fcf-8bf0-0538935e6dea","state":"completed","commit":"64e40684e68c84c21e770bca63206ec9d292f063","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-16T04:15:26.750778+00:00","objective":"Fix all findings in re-audit 5f43f94d-4f44-4255-a8c2-e0a2605c4897, especially the high-severity one-shot callback failure. Design a secure way to accept or retain an answer that arrives before owner binding without reintroducing cross-request verdict misbinding or replay. Address the clock-skew and late-valid-answer findings, and make the review template consistent with the chosen design. Add adversarial Foundry tests that model IMD’s one-attempt callback and fee-loss scenario. Document any remaining live-Intake assumptions. Do not deploy or spend funds.","baseCommit":"684c3da344f8f9f3a34ed810e55c243eec485090","workflowId":null,"deliveredAt":"2026-10-16T04:35:44.389+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/6"},{"site":null,"jobId":"39cbc332-bccf-42a4-977d-3dd95440ffab","state":"completed","commit":"cb6ca724441c9aebf9a38cb4d7426218e0712723","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-16T05:12:58.291857+00:00","objective":"Fix all actionable findings in audit 1053af02-a430-49b3-a914-75620c17c801 on commit 64e40684: prevent a requester from expiring/discarding a retained NotPassed receipt; provide safe owner recovery for a misdelivered receipt and an unused UUID reservation; reduce and test receipt-first callback gas against the 200k limit with a realistic ERC-1271 signer. Preserve exact authenticated Intake-to-oracle binding and replay protection. Add regression tests for the report’s reproductions and document the two informational design choices. Do not deploy","baseCommit":"64e40684e68c84c21e770bca63206ec9d292f063","workflowId":null,"deliveredAt":"2026-10-16T05:41:07.197+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/7"},{"site":null,"jobId":"734d0f71-689f-46e6-bd98-b74bd4bad8b5","state":"completed","commit":"0d9d440063465654f39ef7f3939b1b4d9c90c5f6","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-16T06:11:56.217286+00:00","objective":"Fix the four actionable findings in audit ef1f6915-b9df-441d-b2e5-db5e9d9e9b35 against commit cb6ca724441c9aebf9a38cb4d7426218e0712723.\n Eliminate the expireReview front-running path that discards a late, valid NotPassed one-shot callback; test both transaction orders and retries. Provide an honest recovery path when a retained receipt’s UUID was consumed or reserved by another ask. Prevent an old terminal reservation from burning a retry’s sole callback. Tighten discardReviewReceipt so a same-UUID field typo or invalid/used “true context” cannot silently erase a genuine verdict.\nRun the report’s proofs as regression tests, preserve cross-request binding and replay protection, recheck the 200k-gas callback with a realistic ERC-1271 signer, and rerun the existing listing/ad escrow tests. Do not claim the owner-supplied mapping is independently authenticated onchain; document any remaining owner-trust or live-Intake blocker plainly. Code only—no deployment or paid Intake request.","baseCommit":"cb6ca724441c9aebf9a38cb4d7426218e0712723","workflowId":null,"deliveredAt":"2026-10-16T06:30:35.741+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/8"},{"site":null,"jobId":"eb76afdc-5592-44a5-b618-4d41ec2b18ca","state":"completed","commit":"eb1333775e60fe191acfa5a420e9256feeb4a2b0","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-16T07:18:31.948427+00:00","objective":"Prepare this project for a functional paid Hooks Store MVP. Address all six low findings in audit 6b607200-d29f-4c7a-8476-0dca8091f48f against commit 0d9d440063465654f39ef7f3939b1b4d9c90c5f6 in one coherent change.\n Specifically prevent the job-expiry/failure race; prevent a wrong pre-binding from losing a one-shot review answer; provide safe closure for an abandoned pending ask and an incident response for a retained answer from a compromised signer; prevent quoted-but-unspent IMD from becoming owner-sweepable; and add a caller-specified maximum price to paid requests. Preserve signed-answer binding, replay protection, receipt history, escrow refunds and the 200k callback budget. Update the site-facing ABI and docs for any changed calls.\nAdd adversarial tests for each finding and rerun the full Foundry suite, including listing/ad escrow. Clearly identify what still requires a real IMD Intake test. \nCode only: no deployment, paid request or fund movement.","baseCommit":"0d9d440063465654f39ef7f3939b1b4d9c90c5f6","workflowId":null,"deliveredAt":"2026-10-16T07:43:02.357+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/9"},{"site":null,"jobId":"e192a6f6-197f-488f-9792-c32e8eb3d7b5","state":"completed","commit":"575e8a8f74da581298a8527f493e9eab8a45901f","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-16T17:08:56.677844+00:00","objective":"Continue from commit eb1333775e60fe191acfa5a420e9256feeb4a2b0. Address the user-facing findings in audit 648ba2e5-46a0-4759-8439-73a6c9d81af6 in one focused change:\n\n 1. Provide an honest, logged recovery when a retained answer has the correct oracle UUID but a different signed question/chain/window—without letting the requester discard a genuine NotPassed verdict.\n 2. Prevent the quorum check from burning a valid answer whose actual agreement meets the configured minimum; preserve the intended panel-strength requirement.\n 3. Validate required build/test/review step markers in the actual assembled job body, not just template fragments.\n\nAdd adversarial tests reproducing each finding, including one-shot callback failure cases. Test a synchronous Intake refusal and state clearly whether compatibility depends on behavior that only a live pilot can prove. Preserve replay protection, owner-trust disclosures, exact IMD spending, caller price caps, listing/ad escrow, and the 200k callback budget. Rerun the full Foundry and site/ABI tests. Code only—no deployment, paid request, or fund movement.","baseCommit":"eb1333775e60fe191acfa5a420e9256feeb4a2b0","workflowId":null,"deliveredAt":"2026-10-16T17:31:45.716+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/10"},{"site":null,"jobId":"b29e6c95-8a83-411b-9690-062573688a89","state":"completed","commit":"b157921170c318f8eeee638b06025a81cf768c02","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-17T00:57:05.696359+00:00","objective":"Continue from 575e8a8f74da581298a8527f493e9eab8a45901f. Targeted patch, not a rebuild. Code/local tests only; no deployment or spending.\n\nProtocol: https://imdnotdead.fun/docs/ specifies job callback arguments (bytes32 requestId, bytes32 resultHash, string uri), not (bytes32,bytes). The current fixture repeats the wrong format.\n\nRED FIRST: add this test to a contract inheriting HookJobRequesterFixture; retain its failure output before changing production code:\nfunction testProtocolTuple() public {\n bytes32 id = _open();\n bytes32 h = keccak256(\"result document\");\n assertTrue(intake.complete(id, abi.encode(id,h,\"ipfs://fixture\")));\n assertEq(requester.getJob(id).resultHash,h);\n}\n\nIn src/imd/HookJobRequester.sol keep JobDelivered, add:\nevent JobResultURI(bytes32 indexed requestId,string uri);\nReplace onJobResult with:\nfunction onJobResult(bytes32 requestId,bytes32 resultHash,string calldata uri) external onlyIntake {\n Job storage job=jobs[requestId];\n if(job.status!=JobStatus.Open && job.status!=JobStatus.Expired) revert UnknownOrSettled(requestId);\n job.status=JobStatus.Delivered;\n job.resultHash=resultHash;\n emit JobDelivered(requestId,resultHash);\n emit JobResultURI(requestId,uri);\n}\n\nMigrate existing job-callback fixtures/callers to the protocol tuple; do not alter oracle tuples. Regenerate site ABI; expose URI safely via its event, not string storage. Update docs, readers and fingerprints. Preserve owner-trust disclosures; delivery is not review approval.\n\nShow RED then GREEN logs. Test exact hash, URI event, unauthorized/duplicate/malformed callbacks and late completion. Run full Foundry, gas and site/ABI suites. Preserve all existing assertions; no skipped tests or mock translation. Keep pinned compiler settings, 200k callback budget and runtime below 24,576 bytes. Report remaining live-Intake assumptions honestly. Return commit, diff and actual command results.","baseCommit":"575e8a8f74da581298a8527f493e9eab8a45901f","workflowId":null,"deliveredAt":"2026-10-17T01:16:12.609+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/11"},{"site":null,"jobId":"dc3bc239-442f-4ed4-9dd0-281045da7c9e","state":"completed","commit":"510bcfbf16cd6580a0f2409e9a92493241bbaa46","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-17T04:06:52.604676+00:00","objective":"Continue from b157921170c318f8eeee638b06025a81cf768c02. Build deployment-preparation artifacts, not another audit report. No public deployment, signatures, paid Intake calls, token or pool creation. Keep audited Solidity and compiler settings unchanged.\n\nAddress the non-contract findings in https://api.imdnotdead.fun/jobs/a136ca99-e312-45fa-8624-11d2c76522e3/report.md: visibly escape bidi/zero-width/control characters in displayed URIs with regression tests; add bounded SDK receipt polling with timeout/revert tests; correct both protocol anchors. Document the measured URI gas ceiling as a pilot check, not a universal safe limit.\n\nDeliver a deployment manifest and executable preflight/configuration tools for HookListingRegistry, FeaturedPlacements, HookJobRequester and, only where supported, HooksStoreFactory. Reuse existing scripts. Specify deployment order, constructor dependencies, first-party address sources, exact post-deployment owner calls, unsigned calldata and state-readback checks. Check the actual IMD no-token launcher; do not assume it executes post-deployment setters.\n\nSeparate Sepolia infrastructure testing from a real paid Intake pilot. Recheck official docs/capabilities and action prices. Explicitly flag that the current factory is testnet-only and deploys only BoundedSwapHook; identify the exact additional work needed for production and generated-hook deployment without implementing it here.\n\nKeep owner and recipient approval-gated; preserve proposed ad proceeds recipient 0x3f252e859a277a86A3967c11D4E054B2f07a1F22, not the Intake payee. Never guess credentials or silently substitute recipients.\n\nRun local dry runs and Foundry/site/ABI/SDK tests; verify Solidity bytecode is unchanged. Return commit, actual command logs and a short list of unresolved operator inputs. Separate mock/local results from live evidence.","baseCommit":"b157921170c318f8eeee638b06025a81cf768c02","workflowId":null,"deliveredAt":"2026-10-17T04:41:24.066+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/12"},{"site":null,"jobId":"d8ec4ec9-b939-4ff8-8ce1-fad7a6a69bd9","state":"completed","commit":"2aef6408eabb45b8f149e16a96c7734d4b4b5b07","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-17T05:44:26.779246+00:00","objective":"Continue from 510bcfbf16cd6580a0f2409e9a92493241bbaa46. Implement and locally test oracle-gated generated-hook deployment. Code only: no public deployment, paid requests, signatures, keys, token or pool creation.\n\nKeep the build/test/adversarial-review job and separate oracle confirmation. Reuse the requester and its protections; explain necessary contract changes. A Delivered job or user-supplied review URL is not approval.\n\nEnforce approval in the official deployment contract, not just the website. Bind the verified verdict to the exact job/result and deployment artifact: source/build identity, initcode, constructor arguments, chain, PoolManager and callback permissions. Reject substitutions, wrong context, stale/replayed approvals and bypasses. Disclose signer/owner trust; an owner allowlist is not an oracle proof.\n\nImplement permission-correct CREATE2 mining, deployment and code/configuration readback for generated hooks, not only BoundedSwapHook. Verify each enabled production chain and PoolManager from first-party sources; no blanket mainnet unlock. Preserve regression tests; label legacy ungated routes honestly.\n\nProvide an executable path from job result through oracle verification/binding to unsigned deployment calldata. Automate routine evidence checks. Do not silently require founder approval of every hook, add a hosted backend/hot wallet, or assume owner-only bindReview is automatic. If authenticated binding cannot be automated under these constraints, identify the exact blocker; never fake a proof.\n\nTest success, forged/substituted artifacts, missing/failed reviews, both callback/binding orders, wrong chain/manager/mask, collisions, replay and malicious constructors. Exercise every gated deployment entry point. Rerun Foundry/site/ABI/SDK suites, gas and size limits; update tools/docs. Return commit, runnable local evidence, changed trust assumptions and remaining live-pilot gates. No claim of audit or live readiness.","baseCommit":"510bcfbf16cd6580a0f2409e9a92493241bbaa46","workflowId":null,"deliveredAt":"2026-10-17T05:59:32.775+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/13"},{"site":null,"jobId":"d0b06613-a5d7-45bb-af2d-dff73bb429da","state":"completed","commit":"cc847d8f35bc0b814d390eb76092eed6051c5ae3","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-17T07:24:27.584552+00:00","objective":"Continue from 2aef6408eabb45b8f149e16a96c7734d4b4b5b07. Targeted fixes, not a report. Code/local tests only: no public deployment, paid requests, wallet signatures, keys, token or pool creation.\n\n1. Replace GatedHookDeployer's substring search with an unambiguous approved-artifact binding. RED regression: a signed document names approved artifact A at top level and artifact B inside a rejected section; B currently deploys. Reject nested/duplicate/ambiguous substitutions; prove A still works. Preserve exact job/result, source/build, bytecode, constructor, chain, manager and permissions binding.\n\n2. Fix deployment revocation for BOTH callback/binding orders. RED regression: finalize Passed with bind-first, rotate signer, revoke its old epoch, then deploy; deployment currently succeeds. Receipt-first already blocks it. Retain authenticated signer-epoch provenance for every approval, or fail closed when missing. Preserve verdict/history and callback protections.\n\n3. Use IMD's actual completion schema (https://imdnotdead.fun/docs/): resultHash commits to the control-plane /jobs/:id/result snapshot, not arbitrary worker JSON. Implement and test a verifiable path from that snapshot through accepted artifact/review evidence to unsigned deployment calldata. Do not assume workers can inject top-level fields. Validate assembled job/oracle bodies with the free request checker; retain fixtures and sources.\n\n4. Resolve authenticated binding without a founder transaction per hook, hosted backend or hot wallet. If the official protocol lacks the required proof, identify the exact missing interface/evidence and keep that route disabled; do not fake automation.\n\nShow RED then GREEN for the two regressions. Preserve existing tests; rerun Foundry, SDK, site/ABI and cold callback-gas checks. Keep compiler settings, 200k callback budget and 24,576-byte runtime limit. Update ABIs/tools/docs; return commit, logs, trust changes and unresolved live gates. No audit/live-readiness claim.","baseCommit":"2aef6408eabb45b8f149e16a96c7734d4b4b5b07","workflowId":null,"deliveredAt":"2026-10-17T07:58:53.91+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/14"},{"site":null,"jobId":"09034116-d45a-4bad-b453-042149ef93e8","state":"completed","commit":"9dd97150d292fee26912f9605e0686e4ddbb1645","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-17T15:41:20.224616+00:00","objective":"Continue cc847d8f35bc0b814d390eb76092eed6051c5ae3. Read audit: https://api.imdnotdead.fun/jobs/ca404dfe-00d1-4682-83cb-fa1b28f9826c/report.md\n\nConsolidated integration/fixes, not a rebuild. No deployment, paid Intake calls or signatures.\n\nFIRST resolve integration using official IMD docs, deployed interfaces and records. Trace how workers obtain the full HookSpec, originating Intake ID, chain, deployer, PoolManager/code hash and reviewed source/build. Establish contract-verifiable binding of each signed oracle answer to the correct request/question/artifact. Public API lookup alone is not authentication. No custom backend, hot wallet, new trusted signer or routine founder transaction. If supported, implement and test it; otherwise identify the missing protocol primitive, keep automatic binding disabled and do not invent a workaround. Still complete the fixes below.\n\nFix audit findings:\n- Guarded recovery after finalized-verdict epoch revocation in BOTH callback orders, allowing a fresh review of the same job. Preserve history, consumed UUIDs and deployment replay guards; no ordinary NotPassed verdict shopping.\n- Guarantee a usable deployment window after approval without bypassing staleness policy.\n- Accept legitimate JSON escapes/UTF-8 and irrelevant entries without changing resultHash bytes. Keep strict unique approval/source selection, duplicate/alias rejection and exact hash checks.\n- Bound worst-case parser gas, token counts and document size against target-chain/RPC limits; synchronize SDK limits.\nBind evidence to the exact accepted review and reviewed build; distinguish worker publication from oracle approval.\n\nDeliver runnable before/after regressions, full Foundry/SDK/site results, isolated 200k callback-gas checks and runtime sizes under 24,576 bytes. Preserve fees/recipients, admin policy, compiler and security tests. Update ABI/templates/docs and free-check exact request bodies. Separate local proof, live evidence and unresolved launch blockers.","baseCommit":"cc847d8f35bc0b814d390eb76092eed6051c5ae3","workflowId":null,"deliveredAt":"2026-10-17T16:42:27.363+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/15"},{"site":null,"jobId":"13be8f83-1ae7-463b-95e9-aea9d94c0647","state":"completed","commit":"378cd9b20db99e2190ed5a73fc73849250996e72","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-18T20:10:18.256432+00:00","objective":"Continue 9dd97150d292fee26912f9605e0686e4ddbb1645; implement automatic oracle binding, not another report. No deployment, payments, backend, new signer or per-hook owner calls.\n\nReference github.com/fa11up/infer-protocol at 790493d99ee164a4d86779079a788b0c096b49e4: src/SwarmFeed.sol and oracle/question-prefix.mjs. First reproduce live vector 76587543-d7e6-471e-a01f-63e9e0dfc6e7 plus panel/bool vectors. Pin each ask's canonical question prefix; append SIGNED fromBlock/toBlock and require keccak256 equals signed questionHash. Fail closed on canonicalization drift.\n\nBuild the bool oracle.request on chain, evidence=panel, consumer=this contract/lowercase. Bind job Intake ID/address/chain, unique ask, specHash, reviewed commit and full ArtifactV2 digest. Panel must verify job acceptance, exact independent review and reproducible source/build. Supply full HookSpec and deployment context to workers. No caller-chosen question/prefix/artifact on a permissionless trigger.\n\nPrepay build plus reserved verdict fee in openJob; cap spending, refund unused reserve and prevent double-spend/griefing. Anyone may requestVerdict(askId) only when ready. Document the required user transaction/gas. Validate Intake callback, v2 signer/domain, question/data chain, bool=true, quorum/agreed policy, fresh nonfuture window after ask, signature expiry and one-time ask/UUID use. Preserve revocation/recovery, no NotPassed shopping, reentrancy and deployment replay guards.\n\nGate deployment on that exact artifact, including initcode/constructor/runtime, chain/deployer/PoolManager/permissions. Remove result-JSON parsing only after equivalent artifact authorization works. Update SDK/ABI/UI/docs; preserve fees, recipients, compiler and existing safeguards. Test swaps, tampering, stale/future/replayed answers, both callback orders, refunds and genuine hook execution. Run all suites; prove callbacks <=200k and runtime <=24576 bytes. Save vectors/free preflights; distinguish local tests from live proof.","baseCommit":"9dd97150d292fee26912f9605e0686e4ddbb1645","workflowId":null,"deliveredAt":"2026-10-18T21:09:22.944+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/16"},{"site":null,"jobId":"39414c8a-440a-484c-bd4c-e4c2963eb296","state":"completed","commit":"205fa11271ab17a26630154815fae4c390aac624","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-18T23:06:39.592726+00:00","objective":"Continue 378cd9b20db99e2190ed5a73fc73849250996e72. Targeted oracle-window compatibility fix; preserve the working automatic binding. Code/local tests only: no public deployment, live payments/signatures, backend or new signer.\n\nUse https://imdnotdead.fun/docs/#intake-binding-an-answer-to-its-request and https://api.imdnotdead.fun/reads/skill/oracle-consumer, including OracleQuestion/OracleBoundConsumer. Replacing the existing prefix codec is NOT required.\n\n1. requestVerdict currently sets toBlock=block.number-1. IMD requires >=5 blocks of depth when processing; its Ethereum Intake confirmation setting is only 3. Use an already-confirmed closing block (official example: native head minus 8). Require the candidate/delivery/retry start block <= that closing block before spending any reserved fee. Preserve exact signed-window equality, freshness, issuance/expiry and unique-ask checks; do not require this fixed window to end after the oracle trigger.\n\n2. Use the question chain's block counter consistently at open, commit, delivery, retry, trigger and callback. Robinhood 4663 requires ArbSys(address(100)).arbBlockNumber(), not Solidity block.number. Fail closed on unsupported clock semantics before payment; never mix L1/L2 heights.\n\nAdd RED/GREEN regressions for insufficient depth, earliest permitted admission, distinct mocked L1/L2 heights, readiness boundaries, stale/future answers and retries. Prove early permissionless calls cannot spend reserves; valid approval still deploys only its exact candidate and wrong-question answers fail.\n\nPreserve fees/recipients, escrow/refunds, immutable ArtifactV2, signer revocation/recovery, no NotPassed shopping, replay/reentrancy guards and compiler settings. Update SDK/UI readiness, ABIs and affected runtime pins/docs. Run full Foundry/SDK/UI, protocol vectors and isolated callback-gas checks; retain 200k callback and 24576-byte runtime caps. Save exact free body checks and distinguish local evidence from live proof.","baseCommit":"378cd9b20db99e2190ed5a73fc73849250996e72","workflowId":null,"deliveredAt":"2026-10-18T23:26:08.994+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/17"},{"site":null,"jobId":"8763714a-3766-47d6-9f47-4166516c875b","state":"completed","commit":"357201be804e18ab48567172fb6c8b07acb30a2c","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-19T01:52:26.272511+00:00","objective":"Continue 205fa11271ab17a26630154815fae4c390aac624. Fix audit 2218802d-0828-4f00-81cf-487b51c12aac. Code only; no deployment, payments, backend or new trust root.\n\nAutoHookJobRequester.sol:\n1. commitArtifact requires Delivered and !cancelled. On delivery/commit run _refreshReserveWindow(p): p.windowStartBlock=head(); p.reserveDeadline=max(existing,uint64(block.timestamp)+1 days).\nAdd renewVerdict(bytes32 jobId): requester-only; require Delivered, review=None, !cancelled, reserve>0, current ask.intakeId==0, now>reserveDeadline. Refresh only: no transfer/new ask. Preserve eight-block maturity; no cancelled/NotPassed revival.\n\n2. Remove MAX_ANSWER_AGE. Require askedAt<=issuedAt<=uint256(ask.deadline)+300; issuedAt<=now+300; issuedAt<=expiresAt<=uint256(issuedAt)+86400; now<=expiresAt. Keep exact question/window, native-block freshness, domain/panel/replay checks. Accept valid delayed true AND false answers.\n\n3. At trigger set:\na.verification=(uint256(uint160(oracleSigner))<<96)|(uint256(oracleSignerEpoch)<<64);\nAt callback extract recorded signer/epoch; reject revoked epochs; use ECDSA-first/ERC1271 verification against recorded signer in requester context. Preserve upper bits; OR in uint64(min(issuedAt,now)). Receipt epoch returns 0 before oracleUUID exists, then recorded epoch. Keep finalized revocation and guarded recovery.\n\n4. Fit runtime by composing existing validateOpen/validateBrief/spec hash/jobBody and question/prefix/pin/oracleBody in immutable HookRequestCodec; use msg.sender as consumer. Refresh codec codehash pin, ABIs/fingerprints. SDK/UI: Delivered-before-commit, unsigned renew, reserveDeadline view.\n\nRED/GREEN all four issues; test +1/+300/+301s, 3601s delay, expiry, renewal/refunds, EOA/ERC1271 rotation/revocation. Full Solidity/SDK/UI, vectors, isolated cold gas on both clocks. Keep solc/dependencies, 24576-byte/200000-gas caps, fees, artifact binding. No live-proof claims; document per-chain maxWindowAgeBlocks.","baseCommit":"205fa11271ab17a26630154815fae4c390aac624","workflowId":null,"deliveredAt":"2026-10-19T02:13:48.442+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/18"},{"site":null,"jobId":"5aecaddc-e223-4f19-9630-5516ef639a82","state":"completed","commit":"e69e04f63832b9fa1e84c7d58c685ce37924a490","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-19T04:14:54.128398+00:00","objective":"Continue 357201be804e18ab48567172fb6c8b07acb30a2c. Apply the locally tested design for findings 1-4: https://explorer.imdnotdead.fun/jobs/7db42bb7-5204-4805-894f-db1a2c11cd8e. Code only; no deployment, payments, backend or new trust root.\n\nHookRequestCodec:\nminimumWindowAgeBlocks(): chain 1/11155111=14433; 4663=3462008; 31337=173108; otherwise revert. Covers 173100s + 8 blocks at assumed cadence floors 12s/50ms/1s. Constructor sets minimum; setPanel rejects undersizing; requester head() calls codec.paymentHead(age), validating policy before native head. Document cadence assumptions, not live guarantees. Preflight compares codec/tooling policy and rejects undersizing; update deployment draft.\n\nAutoHookJobRequester:\nconfirmReviewExpiry requires now>uint256(ask.deadline)+300+1 days.\ntopUpReserve(jobId,amount): nonReentrant, requester-only, Delivered/None, committed, !cancelled, current ask.intakeId==0, amount>0, reserve+amount<=maxPrice. Exact-pull original asset; increase p.reserve and reserved; refresh native start/deadline. Preserve ask/job/artifact; no build repayment or NotPassed revival.\nverdictFunding(askId) returns live price,reserve,token using snapshotted Intake/action/asset. SDK/UI combine phase readiness with positive quote<=reserve; unavailable quote fails closed. Add unsigned SDK top-up and separate bounded UI approval/top-up controls with readback.\n\nFit EIP-170 by moving deterministic question/window/panel/canonical-bool validation into existing pinned immutable codec.validateReview; keep signatures, consumer domain, ERC1271 caller context, epochs/revocation, replay and settlement in requester. Refresh codec hash, ABI/fingerprints.\nRED/GREEN full-horizon true/false on both clocks, expiry, top-up/cap/refunds/rotation, UI/preflight; preserve prior regressions. Full suites and isolated <=200000 callback gas, <=24576 runtime; unchanged compiler/dependencies.","baseCommit":"357201be804e18ab48567172fb6c8b07acb30a2c","workflowId":null,"deliveredAt":"2026-10-19T04:44:19.007+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/19"},{"site":null,"jobId":"3abb736a-1567-4f8e-8fa7-e509c43bd315","state":"completed","commit":"46e17ea70534e8a7ac2c4ff78501a3c183d32da8","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks","createdAt":"2026-10-19T14:48:48.428618+00:00","objective":"Base e69e04f63832b9fa1e84c7d58c685ce37924a490. Fix https://api.imdnotdead.fun/jobs/dde20fdc-3a82-44e1-bde7-143f6a6f28c5/report.md . Preserve fees/roles/pausing.\n\nAutoHookJobRequester.sol: replace scalar maxPrice with mapping(address=>uint256) public maxPriceOf. Constructor/setProtocol set maxPriceOf[asset_]=cap_ only. Add maxPrice() public view returns(uint256){return maxPriceOf[asset];}. openJob uses that cap; topUpReserve total and retryVerdict reserve use maxPriceOf[p.asset]. Retain live same-token reductions/funded-trigger semantics. Use function _nextAskId() private returns(bytes32){return keccak256(abi.encode(block.chainid,address(this),++nonce));} at both ask-ID sites. Scope openJob's cap local before prepareJob (stack limit).\n\nSDK/UI top-up: read maxPriceOf(reserve.token), selector c9638491; no fallback. Preflight require maxPrice()==maxPriceOf(asset)>0.\n\nsite/automatic-ui.js: connect pins provider, provider.request, account, chainId, requester. capture(connecting) freezes all raw/form values before awaits. checkLocal rejects provider/request/revision/form drift. Increment revision on input/change and wallet accountsChanged/chainChanged/disconnect; invalidate connection on wallet/requester changes. rpc(c,...) checks local/account/chain before AND after each call using captured request.call(provider,...); require reconnect after drift. Use snapshots for targets/calldata/readbacks. send uses explicit from/chainId/to/data/value:'0x0', separate estimate copy; save returned hash before post-send checks. One busy lock covers all buttons, including connect/status. No success until final context/readback checks. Approvals stay separate with exact allowance readback; top-up requires unchanged job/ask/candidate/context, exact reserve delta and refreshed maturity.\n\nRED/GREEN 18/6-decimal rotations both ways and context races through receipts. Preserve tests; update ABI/pins; full suites. Keep solc0.8.26/Cancun/200/noIR; runtime<=24576, cold callback<=200000. No deployment.","baseCommit":"e69e04f63832b9fa1e84c7d58c685ce37924a490","workflowId":null,"deliveredAt":"2026-10-19T15:12:19.203+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks/pull/20"}],"contracts":[],"publishedAt":"2026-10-19T15:12:19.203+00:00"},{"id":"job:dde20fdc-3a82-44e1-bde7-143f6a6f28c5","code":[],"media":[],"sites":[],"title":"Audit e69e04f63832b9fa1e84c7d58c685ce37924a490. Focus on changes since 357201be804e18ab48567172fb6c8b07acb30a2c and closure of findings 1-4 in https://explorer.imdnotdead.fun/jobs/7db42bb7-5204-4805-894f-db1a2c11cd8e.\n\nVerify full-horizon true/false receipt acceptance on Ethereum and Robinhood native clocks; enforced minimum age policy and preflight agreement; owner expiry strictly after deadline+300+86400; requester-only original-asset top-ups for committed Delivered/None untriggered asks, exact escrow/cap/refund accounting, preserved identity and refreshed maturity.\n\nCheck snapshotted Intake/action/asset quotes, fail-closed funded SDK/UI readiness, separate bounded approval/top-up readbacks, and wallet/account/chain/requester changes during those flows. Review codec.validateReview extraction: preserve canonical bool/question/window/panel checks, requester-domain signatures/ERC1271 caller context, epochs/revocation, replay and settlement. Preserve prior lifecycle fixes and terminal false verdicts.\n\nReproduce material findings; rerun isolated cold ERC1271 callback <=200000 gas and runtime <=24576 bytes. Separate code defects from documented cadence assumptions and unperformed live-pilot checks. No deployment or spending.","types":["audits"],"audits":[{"jobId":"dde20fdc-3a82-44e1-bde7-143f6a6f28c5","repoUrl":"https://github.com/identity-md-launches/launch-1811-build-technical-foundation-hooks.git","findings":4,"reportUrl":"https://github.com/Identity-md/research/blob/main/jobs/dde20fdc-3a82-44e1-bde7-143f6a6f28c5/_identitymd/README.md","baseCommit":"e69e04f63832b9fa1e84c7d58c685ce37924a490","severities":{"low":2,"info":2},"publishedAt":"2026-10-19T08:09:38.446+00:00"}],"paidBy":"0x9a50fd22bcefd3774d796e775a467a7f743e0ab0","release":null,"research":[],"versions":[],"contracts":[],"publishedAt":"2026-10-19T08:09:38.446+00:00"},{"id":"job:02a5288c-3f10-488e-b5c0-06ef5581d92e","code":[{"jobId":"67368721-0842-4a73-9edd-0177c5799e60","commit":"3b29fd1d044fb16bbe1595ddacf7ec4efbfdd8fa","repoUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code","template":"skill:build-contract-project","publishedAt":"2026-10-17T07:07:00.312+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code/pull/7"},{"jobId":"653f2aaa-cc36-420f-9a62-6c6381035d5b","commit":"3afd794b0c8252ebd3699d257e5b256938d4021b","repoUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code","template":"skill:build-contract-project","publishedAt":"2026-10-16T12:11:54.99+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code/pull/6"},{"jobId":"80e9b1d1-bc63-4665-89e1-4bfb05777f0a","commit":"3939f319d67dcd92eb50b057c0c13754ccb6b35c","repoUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code","template":"skill:build-contract-project","publishedAt":"2026-10-16T09:55:47.896+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code/pull/5"},{"jobId":"7217834c-12b0-41d4-8bc7-147c0cf46232","commit":"8f31511e2b0d27d7c59b8bb33aeb65aeb3ae6ed6","repoUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code","template":"skill:build-contract-project","publishedAt":"2026-10-16T09:06:10.042+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code/pull/4"},{"jobId":"c2e3a67b-4c59-4773-8d47-bd4fcfeb57e7","commit":"18062fc08c2fc3ab47b79316c1d1dea701e36e7f","repoUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code","template":"skill:build-contract-project","publishedAt":"2026-10-16T06:52:44.216+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code/pull/3"},{"jobId":"b691a3f6-a5f1-4724-b90a-d69c53cefbd1","commit":"806e94d44d6a96b8561f48ebf5f744c4065c4918","repoUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code","template":"skill:build-contract-project","publishedAt":"2026-10-15T13:13:27.455+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code/pull/2"},{"jobId":"02a5288c-3f10-488e-b5c0-06ef5581d92e","commit":"3e450837a23b12c4f00f5c5eaf9569691669fb93","repoUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code","template":"skill:build-contract-project","publishedAt":"2026-10-15T11:43:23.429+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code/pull/1"}],"media":[],"sites":[],"title":"A Uniswap v4 hook: CODE ONLY: fork UNLOCK/UNLK source, fix standard-Uniswap compatibility, add a 0.75% NFT treasury fee, revise unlocking and prepare frontend source. No deployment/site publication; sealed contracts stay unchanged. Separate reviewed Sepolia release follows.\n\nSOURCE: https://github.com/identity-md-launches/launch-1560-unlock commit 92e55dfe1d4b5863ceed2f744f4279942375fe65; reconcile verified newer accepted work. Clone/fetch/export into an empty workspace, preserving .git, protected checks, prior fixes and frontend. Record provenance; future addresses/keys do not block coding.\n\nCOMPATIBILITY: verify current IMD Explorer encoding, deployed code and official interfaces. Observed Sepolia: UniversalRouterV2 0x3a9d48ab9751398bbfa63ad67599bb04e4bdf98b; Quoter 0x61b3f2011a92d183c7dbadbda940a7555ccf9227; PoolManager 0xE03A1074c86CFeDd5C142C4F04F1a1536e203543; empty hookData. No custom-router-only substitute. Reproduce fork-11918468: 0x10/0x060c0f versus 0x060c0e TAKE to Bob: identical hook observations, different recipients. msgSender alone does not prove actual payer/recipient. Enforce actual sourcing/delivery; test Permit2, prefunding, arbitrary recipients, smart wallets, batches/multihop and replay/direct bypass. Never trust tx.origin. If impossible, publish the counterexample/required design decision; never silently change accounting. Continue independent work. Prove Quoter requests cannot commit trades, credits or quota bypasses; distinguish generic quotes from wallet sell capacity.\n\nFEE/VAULT: preserve official 1.25% pool fee, split 1% payer/0.25% IMD. Add fixed 75bps hook fee on buys AND sells in native ETH, persisting after unlock. Base: executed ETH pool leg excluding extra fee (buy input/sell output). Document gross/net formulas, floor rounding, exact-input/output limits, partial fills/refunds; nominal 2% is not necessarily exact effective cost. Never charge quotes, unexecuted amounts, transfers, liquidity, rewards or withdrawals. Pool fee stays 12500. Update permissions/return deltas, CREATE2 mining, manifests, settlement and code-hash checks.\nNftFeeVault immutable Sepolia beneficiary: 0x48e4e74fe1d0c14404ceb57b9fec5b21329c6ec9. Only beneficiary withdraws to itself; authenticate hook accrual/actual receipts, separate donations and LP fees, expose totals/events. Reentrancy-safe; failed withdrawals retain funds, recipient rejection cannot halt swaps. No redirects, upgrades, fee setters, arbitrary calls or principal access. NFT buying is MANUAL after withdrawal; no marketplace automation, listings, workers, buybacks/burns or floor/yield guarantees.\n\nRULES: UNLOCK/UNLK, 1B tokens/18 decimals, minted once to factory, 10/87/3 swarm/pool/payer. Preserve protected principal and unrestricted ordinary transfers/native eligible claims. E=authenticated official buys delivered to beneficiary + proven payer allocation + proven actual claims; deduplicate including pre-activation claims. S=executed sales. Q=max(0,floor(E*p/10000)-S); sales cannot exceed own Q. Transfers/donations/liquidity create/move/reset no rights. No upgrades, pausing, exemptions or later configuration changes. Keep authenticated atomic one-time setup; verify supported companion deployment/activation path without dummy addresses.\nInitially p=2000. USD FDV:p: 100K:2500;250K:3000;500K:3500;1M:4000;2M:4500;3.5M:5000;5M:5500;7.5M:6000;10M:6500;15M:7000;20M:7500;25M:8000;30M:8500;35M:9000;40M:9500;50M:10000 AND permanent full quota bypass for everyone. Never relock. Expand all 16 tiers. Keep reviewed 2h TWAP/Chainlink, freshness/depth/warm-up, sequential 6h confirmations/24h final, 4m cadence/10m max gap; invalid data cannot advance or revoke rights. Disclose manipulation, protocol-fee halt, reward-round powers and other-pool bypass.\n\nFRONTEND: preserve polished English responsive design. Show actual wallet balance/E/S/sellable quota, FDV/tiers, fee-inclusive swaps, claims/sync and clear errors. Show vault accrued/withdrawn/claimable ETH separately from donations. Label undeployed code; preserve old live rules.\nNFT gallery: same wallet, mainnet IMD collection 0x0000ec93127baa929e58e97dd0095a2bfb38ec1d. Verify current ownership; indexed/paginated inventory, safe tokenURI JSON/SVG/IPFS/HTTPS images. Small cards, images/IDs e.g. #1116, explorer links, arrows/swipe/keyboard; no overflow. Holdings do not prove fee-funded purchases. Separate read-only mainnet NFTs from Sepolia transactions; no mainnet signatures or exposed secrets. Show loading/errors/staleness.\n\nDELIVER: GitHub commit, ABIs/manifests/setup scripts, reproducible dependency/build/format/size checks and unit/fuzz/invariant/recorded-block real-router fork results. Test fees/refunds/solvency/reentrancy, tiers, claims/setup/bypasses and frontend failures. Never weaken protected checks. Independent review or explicit pending status; critical/high findings block release. Report skips/blockers and separate deployment/website-publication steps. No fabricated success.","types":["code"],"audits":[],"paidBy":"0x48e4e74fe1d0c14404ceb57b9fec5b21329c6ec9","release":null,"research":[],"versions":[{"site":null,"jobId":"02a5288c-3f10-488e-b5c0-06ef5581d92e","state":"completed","commit":"3e450837a23b12c4f00f5c5eaf9569691669fb93","repoUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code","createdAt":"2026-10-15T10:22:28.216198+00:00","objective":"A Uniswap v4 hook: CODE ONLY: fork UNLOCK/UNLK source, fix standard-Uniswap compatibility, add a 0.75% NFT treasury fee, revise unlocking and prepare frontend source. No deployment/site publication; sealed contracts stay unchanged. Separate reviewed Sepolia release follows.\n\nSOURCE: https://github.com/identity-md-launches/launch-1560-unlock commit 92e55dfe1d4b5863ceed2f744f4279942375fe65; reconcile verified newer accepted work. Clone/fetch/export into an empty workspace, preserving .git, protected checks, prior fixes and frontend. Record provenance; future addresses/keys do not block coding.\n\nCOMPATIBILITY: verify current IMD Explorer encoding, deployed code and official interfaces. Observed Sepolia: UniversalRouterV2 0x3a9d48ab9751398bbfa63ad67599bb04e4bdf98b; Quoter 0x61b3f2011a92d183c7dbadbda940a7555ccf9227; PoolManager 0xE03A1074c86CFeDd5C142C4F04F1a1536e203543; empty hookData. No custom-router-only substitute. Reproduce fork-11918468: 0x10/0x060c0f versus 0x060c0e TAKE to Bob: identical hook observations, different recipients. msgSender alone does not prove actual payer/recipient. Enforce actual sourcing/delivery; test Permit2, prefunding, arbitrary recipients, smart wallets, batches/multihop and replay/direct bypass. Never trust tx.origin. If impossible, publish the counterexample/required design decision; never silently change accounting. Continue independent work. Prove Quoter requests cannot commit trades, credits or quota bypasses; distinguish generic quotes from wallet sell capacity.\n\nFEE/VAULT: preserve official 1.25% pool fee, split 1% payer/0.25% IMD. Add fixed 75bps hook fee on buys AND sells in native ETH, persisting after unlock. Base: executed ETH pool leg excluding extra fee (buy input/sell output). Document gross/net formulas, floor rounding, exact-input/output limits, partial fills/refunds; nominal 2% is not necessarily exact effective cost. Never charge quotes, unexecuted amounts, transfers, liquidity, rewards or withdrawals. Pool fee stays 12500. Update permissions/return deltas, CREATE2 mining, manifests, settlement and code-hash checks.\nNftFeeVault immutable Sepolia beneficiary: 0x48e4e74fe1d0c14404ceb57b9fec5b21329c6ec9. Only beneficiary withdraws to itself; authenticate hook accrual/actual receipts, separate donations and LP fees, expose totals/events. Reentrancy-safe; failed withdrawals retain funds, recipient rejection cannot halt swaps. No redirects, upgrades, fee setters, arbitrary calls or principal access. NFT buying is MANUAL after withdrawal; no marketplace automation, listings, workers, buybacks/burns or floor/yield guarantees.\n\nRULES: UNLOCK/UNLK, 1B tokens/18 decimals, minted once to factory, 10/87/3 swarm/pool/payer. Preserve protected principal and unrestricted ordinary transfers/native eligible claims. E=authenticated official buys delivered to beneficiary + proven payer allocation + proven actual claims; deduplicate including pre-activation claims. S=executed sales. Q=max(0,floor(E*p/10000)-S); sales cannot exceed own Q. Transfers/donations/liquidity create/move/reset no rights. No upgrades, pausing, exemptions or later configuration changes. Keep authenticated atomic one-time setup; verify supported companion deployment/activation path without dummy addresses.\nInitially p=2000. USD FDV:p: 100K:2500;250K:3000;500K:3500;1M:4000;2M:4500;3.5M:5000;5M:5500;7.5M:6000;10M:6500;15M:7000;20M:7500;25M:8000;30M:8500;35M:9000;40M:9500;50M:10000 AND permanent full quota bypass for everyone. Never relock. Expand all 16 tiers. Keep reviewed 2h TWAP/Chainlink, freshness/depth/warm-up, sequential 6h confirmations/24h final, 4m cadence/10m max gap; invalid data cannot advance or revoke rights. Disclose manipulation, protocol-fee halt, reward-round powers and other-pool bypass.\n\nFRONTEND: preserve polished English responsive design. Show actual wallet balance/E/S/sellable quota, FDV/tiers, fee-inclusive swaps, claims/sync and clear errors. Show vault accrued/withdrawn/claimable ETH separately from donations. Label undeployed code; preserve old live rules.\nNFT gallery: same wallet, mainnet IMD collection 0x0000ec93127baa929e58e97dd0095a2bfb38ec1d. Verify current ownership; indexed/paginated inventory, safe tokenURI JSON/SVG/IPFS/HTTPS images. Small cards, images/IDs e.g. #1116, explorer links, arrows/swipe/keyboard; no overflow. Holdings do not prove fee-funded purchases. Separate read-only mainnet NFTs from Sepolia transactions; no mainnet signatures or exposed secrets. Show loading/errors/staleness.\n\nDELIVER: GitHub commit, ABIs/manifests/setup scripts, reproducible dependency/build/format/size checks and unit/fuzz/invariant/recorded-block real-router fork results. Test fees/refunds/solvency/reentrancy, tiers, claims/setup/bypasses and frontend failures. Never weaken protected checks. Independent review or explicit pending status; critical/high findings block release. Report skips/blockers and separate deployment/website-publication steps. No fabricated success.","baseCommit":"0243d7da4a4337ae8b16bcdf15bb4ead736fd68f","workflowId":null,"deliveredAt":"2026-10-15T11:43:23.429+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code/pull/1"},{"site":null,"jobId":"b691a3f6-a5f1-4724-b90a-d69c53cefbd1","state":"completed","commit":"806e94d44d6a96b8561f48ebf5f744c4065c4918","repoUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code","createdAt":"2026-10-15T12:16:46.010536+00:00","objective":"Continue the accepted UNLOCK successor from job 02a5288c-3f10-488e-b5c0-06ef5581d92e, repository https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code commit 3e450837a23b12c4f00f5c5eaf9569691669fb93. Preserve newer accepted fixes and existing work; fetch source if workspace is empty. Preserve .git/protected checks. CODE/TESTS/GITHUB ONLY; no public deployment or website publication. Existing launch1560 contracts are sealed and unchanged.\n\nNEW DESIGN AUTHORIZATION: standard compatibility takes priority over the previous actual-final-recipient/actual-funding-source definition and ETH-only per-swap fee settlement. Implement the necessary explicit successor redesign; do not repeat a custom-router-only candidate and call it compatible. Use deployed standard routes/empty hookData; no IMD/router patch.\n\nB-01: adopt an explicit INITIATOR ledger for the successor. Authenticate the exact immutable approved Universal Router address/runtime and derive the logical executing EOA or smart account through its verified msgSender(). All official-pool buys/sells in that execution affect that initiator's E/S, regardless of subsequent TAKE recipient, prefunding source or intermediate routing. An arbitrary final recipient receives tokens, not the initiator's credit. Transfers never migrate rights. This intentionally changes eligibility semantics; update docs/UI/events/examples accordingly. Do not claim it proves actual payer/delivery. Original proven payer allocation/native claim credits stay assigned to rightful recipients and deduplicated. Test diverted delivery, prefunding, Permit2, smart wallets, batches/multihop/cycles/quota farming. Quantify risks; no tx.origin, asserted identity or mutable router allowlist. Disclose remaining critical/high counterexamples; never delete quotas or invent approval.\n\nB-02: redesign fixed 75bps treasury fees using standard v4 settlement. The earlier requirement to collect exactly executed-ETH-leg fees in native ETH in every mode may change where technically necessary. Evaluate unspecified-currency fees/return deltas, exact-output/partial fills; implement a justified model for the unchanged router/quoter. Record fee asset/base/timing and gross/net formulas separately for each mode. Never charge unexecuted volume, retain hidden overpayment, strand debt or add a fee to transfers/rewards/liquidity. Preserve official pool fee12500 and 1% payer/0.25% IMD distribution; extra treasury rate remains75bps. Do not claim arithmetic 2% is exact effective cost if bases differ.\n\nThe treasury's intended spending asset is ETH. If fees arrive in UNLK, explicitly implement/review the conversion and withdrawal lifecycle before claiming this goal achieved. Address vault zero-E quota, self-fee recursion, slippage/MEV, price manipulation and oracle effects. No unrestricted vault/trader exemption or administrator swap executor. Conversion must authenticate fee provenance, exclude donations/user principal and never borrow others' quota. If safe automatic conversion is unavailable, deliver token-denominated treasury balances/manual withdrawal support and clearly disclose that automatic ETH accumulation remains incomplete; do not silently equate UNLK fees with ETH.\n\nPreserve UNLOCK/UNLK,1B/18decimals,10/87/3 allocation, native eligible claims independent of sync, ordinary unrestricted transfers, protected principal, fixed beneficiary 0x48e4e74fe1d0c14404ceb57b9fec5b21329c6ec9 and all sixteen accepted20%-to100%/$50M tiers. Preserve sequential oracle confirmations, permanent final bypass, sealed setup and no later upgrades/pauses/rule changes/resets. No other economic change is authorized. Retain risk disclosures.\n\nPROVE COMPATIBILITY: reverify deployed addresses/runtime and current Explorer encoding; run recorded-block forks with actual UniversalRouter/Quoter/Permit2/PoolManager. Execute the exact Explorer buy and sell command payloads, empty hookData, fee-inclusive limits, both directions/modes, partial fills, claims/sync and quota rejection. Generic quotes must revert simulation without state/fee credit and are not wallet-capacity proof. Rejecting Universal Router is not success. Every claimed supported mode must execute successfully; label unsupported ones and IMD UI coverage precisely. Keep a supported immutable route through final unlock; no open direct bypass.\n\nUpdate manifests/permissions/mining/setup/code pins, ABIs, website fee and initiator explanations, token/ETH treasury balances and gallery while preserving current live deployment config. Run all prior checks and new fuzz/invariants; never weaken protected inputs or size limits. Obtain independent review or explicitly report pending; critical/high findings block release. Deliver published commit, before/after semantic matrix, exact results/skips, residual risks and separate Sepolia release/hosting instructions. No fabricated success.","baseCommit":"3e450837a23b12c4f00f5c5eaf9569691669fb93","workflowId":null,"deliveredAt":"2026-10-15T13:13:27.455+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code/pull/2"},{"site":null,"jobId":"c2e3a67b-4c59-4773-8d47-bd4fcfeb57e7","state":"completed","commit":"18062fc08c2fc3ab47b79316c1d1dea701e36e7f","repoUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code","createdAt":"2026-10-16T06:07:16.566418+00:00","objective":"Continue job b691a3f6-a5f1-4724-b90a-d69c53cefbd1 from repository https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code commit 806e94d44d6a96b8561f48ebf5f744c4065c4918, reconciling newer accepted work. Combine contracts/tests/frontend/release preparation and supported independent review. CODE ONLY: no public transactions, deployment or website publication. Preserve repository history/protected checks, completed features and existing live launch1560 configuration.\n\nTARGET: adapt the successor to an official Ethereum-mainnet UNLK/IMD pool through IMD univ4_hook, chainId=1, pairWith=imd, poolBps=8700. Reverify policy/factory/registry/fees/PoolManager/router/Quoter/Permit2/token interfaces and code. Mainnet supports IMD hooks; Sepolia currently does not. Do not reuse Sepolia addresses/hashes or assume ETH-pair factory pins apply. IMD token currently listed: 0xd34a99bc0f67ae1bbd63c660e6d0b0dd03e263b7. Verify decimals, transfer behavior and actual supported opening economics. Future launch records/addresses/keys are not coding prerequisites.\n\nPAIR/FEES: replace ETH-specific assumptions throughout hook, setup verifier, vault, deployment scripts and frontend with validated IMD quote-currency logic. Correctly handle token sorting, both directions, decimals, hook deltas and settlement. Preserve official 1.25% fee and 1% payer/0.25% IMD entitlement; verify actual payout assets. Extra fixed75bps treasury fee must accrue in IMD, backed by actual manager claims/receipts, on executed buys and sells, continuing after unlock. No automatic conversion to ETH, NFT purchases, listings or burns. Immutable beneficiary:0x48e4e74fe1d0c14404ceb57b9fec5b21329c6ec9. Only beneficiary withdraws to itself. Separate fee revenue/donations/LP fees, expose accrued/redeemable/withdrawn balances. Reentrancy-safe; no arbitrary calls,redirects,fee setters,principal access/exemptions. Document each mode's gross/net/rounding and fee-inclusive limits; never charge unexecuted volume. Retain atomic partial-fill/range-exit rejection where needed, disclose it and test rollback. Do not claim exact effective2% when fee bases differ.\n\nUSD ORACLE: FDV=fixed supply*verified UNLK/IMD price*verified IMD/USD price. Implement an actual on-chain price source; never assume an IMD/USD Chainlink feed exists. Review available IMD/ETH liquidity/oracle sources plus verified ETH/USD; avoid circular UNLK-derived IMD pricing and manipulable spot substitutes. Keep2h UNLK TWAP,sequential6h tier/24h final,4m cadence/10m max gap; document additional IMD-feed validation. Specify/test warm-up, freshness, depth, outages, depegs and sustained cross-market manipulation. Test unchanged milestones are reachable; no hidden floors. Invalid data never advances or revokes rights. If reliable pricing is unavailable, complete independent work and identify missing evidence; never fabricate safety.\n\nPRESERVE: UNLOCK/UNLK,1B/18decimals,one-time factory mint,10/87/3 split,protected principal,ordinary unrestricted transfers,native distributor claims independent of sync,deduplicated payer/reward credits,immutable setup/no upgrades/pauses/resets. Keep authorized INITIATOR-based E/S via exact pinned standard Universal Router msgSender(), not actual-recipient claims or tx.origin. Transfers never move rights. Q=max(0,floor(E*p/10000)-S). Initially20%; USD milestones:100K25%,250K30%,500K35%,1M40%,2M45%,3.5M50%,5M55%,7.5M60%,10M65%,15M70%,20M75%,25M80%,30M85%,35M90%,40M95%,50M100% AND permanent quota bypass for everyone. Never relock.\n\nTEST/REVIEW: run all existing checks plus actual-mainnet recorded-block factory launch AND companion/certification/activation rehearsal with local impersonation, real router/Quoter/Permit2 and Explorer buy/sell payloads. Use local signing. Include Permit2 signed-permit flow, exact-input/output, quota/claims/fees, funding/refunds, ordering, callbacks, cycles, multihop and zero-state quote rollback. Independently assess the High shared-executor quota-pooling finding; initiator authorization does not waive High findings. Obtain separate review if supported, otherwise mark pending; author self-review is not independent. Never weaken protected checks or size limits.\n\nFRONTEND: preserve design/NFT gallery; prepare IMD balances/approvals,fee-inclusive swaps,quota/tiers,IMD vault dashboard,explicit initiator/shared-executor explanations and errors. Mainnet NFT gallery remains read-only; candidate writes disabled until actual reviewed deployment config. Preserve old live rules. Run build/type/unit/browser/mobile checks; label skips. Publish exact commit,ABIs,artifacts/sizes,commands/results,compatibility matrix,review status and precise blockers. Deliver supported two-stage manifest/mining/calldata package and postflight/hosting steps; never broadcast without an executable activation path or claim deployed/readiness while blocking findings remain.","baseCommit":"806e94d44d6a96b8561f48ebf5f744c4065c4918","workflowId":null,"deliveredAt":"2026-10-16T06:52:44.216+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code/pull/3"},{"site":null,"jobId":"7217834c-12b0-41d4-8bc7-147c0cf46232","state":"completed","commit":"8f31511e2b0d27d7c59b8bb33aeb65aeb3ae6ed6","repoUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code","createdAt":"2026-10-16T07:19:45.927506+00:00","objective":"Continue UNLOCK job c2e3a67b-4c59-4773-8d47-bd4fcfeb57e7 from https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code commit 18062fc08c2fc3ab47b79316c1d1dea701e36e7f. Preserve newer fixes/history/protected checks/frontend/live launch1560. CODE ONLY: implement/test H-01 mitigations and IMD/USD oracle, UI/docs/release package and supported independent review. No public transactions/deployment/site publication.\n\nDESIGN AUTHORITY: choose justified technical changes needed for these two issues without asking me to pick technical parameters. Preserve standard IMD/Uniswap router compatibility, normal direct-wallet trading, legitimate smart accounts, unrestricted ordinary transfers/native claims, fixed fees and milestones. Do not substitute a custom-router-only launch, tx.origin, EOA-only gate, arbitrary identity assertions, mutable allowlists, admin exemptions or secret backend signer. Name incompatible requirements; future addresses/keys do not block coding. Continue independent work.\n\nH-01 QUOTA POOLING: reproduce the independent segregated-funds shared-executor proof and preserve it as a regression. Distinguish protected direct-wallet E/S from pooled initiator rights. Preserve isolation of direct users' quotas. Minimize deliberate executor pooling without assuming our UI controls public router calls. Evaluate verifiable wallet-scoped execution/settlement designs and compatible, immutable restrictions. Prove the unmodified router exposes each required fact; labels/warnings do not authenticate users. Retain smart accounts; delegation defeats EOA-only identity. Do not add transferable sale rights or token-transfer credits. No silent ledger redefinition.\n\nImplement the strongest justified compatible mitigation; quantify before/after capacity consumed, attacker token/capital/fee requirements, honest-user impact and batching/multihop/cycle/recipient/funding bypasses. Test alternate executors/UIs. If global prevention is impossible with this interface, deliver an executable limit proof and concrete implemented reductions; retain the residual finding and independent severity. Warnings alone are not an on-chain fix. This authorizes mitigation engineering, NOT automatic acceptance/downgrading of High risk or permission to deploy with it.\n\nIMD/USD: existing adapter relies on an inactive v3 venue. Same token is 0xd34a99bc0f67ae1bbd63c660e6d0b0dd03e263b7, chain1; current name is Identity.md/IMD. Verify markets on-chain. V4 IMD/ETH discovery PoolId 0xb07d640fd9e2eb9dc81b953c8e4fd006bdfeaf276010fb5418eb763ca15abfb3; is bytes32, not a pool address. Verify PoolKey/manager/fee/hook/depth/history; listings do not certify safety.\n\nImplement a noncircular, verifiable on-chain IMD/USD source suitable for irreversible unlocks. No assumed built-in v4 TWAP, retrofitted pool hook, invented history or spot-sampling safety claims. First determine available historical observations and how every relevant price interval can be authenticated. Any observer/keeper design must prove manipulation/gap handling; off-chain indexed events are not on-chain proof. Evaluate independently verifiable feeds/venues as alternatives. Do not invent a Chainlink IMD feed, assume a stablecoin peg or use UNLK-derived IMD pricing. If new oracle governance, signer trust, public infrastructure deployment or liquidity funding is necessary, specify it explicitly as a separate release prerequisite, never quietly introduce it or pretend it already exists.\n\nRetain UNLK/IMD2h TWAP and sequential6h tiers/24h final,4m cadence/10m gap; design justified IMD-leg warm-up/freshness/depth/divergence safeguards. Test flash/same-block/sustained/cross-market manipulation, outages/recovery and insufficient history. Quantify gross capital AND net exit cost against unlocked value; longer windows alone prove no safety. Invalid data cannot progress/revoke rights; claims/transfers remain independent. Require real oracle evidence for activation. Never leave the inactive v3 reader as a claimed working solution.\n\nPRESERVE mainnet univ4_hook UNLK/IMD target,1B/18decimals,10/87/3,official1.25% fee,extra75bps IMD vault,fixed beneficiary,protected principal,16 accepted20%-to100%/$50M USD tiers,permanent full bypass,sealed setup/no upgrades/pauses/resets. Update preview with actual mitigation/fee/ledger/oracle limits; keep candidate writes disabled and NFT gallery read-only.\n\nDELIVER published commit,implemented changes,full prior checks/new unit-fuzz-invariants,actual-mainnet recorded-block router/factory/Permit2/Quoter rehearsal,real-versus-synthetic oracle evidence and browser/protected-check skips. Independent review of FINAL changes or explicit pending status. Preserve High findings until genuinely resolved/reassessed. Give readiness matrix,exact blockers and two-stage deployment/postflight package. No fabricated safety,review,oracle history or deployment success.","baseCommit":"18062fc08c2fc3ab47b79316c1d1dea701e36e7f","workflowId":null,"deliveredAt":"2026-10-16T09:06:10.042+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code/pull/4"},{"site":null,"jobId":"80e9b1d1-bc63-4665-89e1-4bfb05777f0a","state":"completed","commit":"3939f319d67dcd92eb50b057c0c13754ccb6b35c","repoUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code","createdAt":"2026-10-16T09:28:55.274493+00:00","objective":"Continue UNLOCK job7217834c-12b0-41d4-8bc7-147c0cf46232 from https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code commit8f31511e2b0d27d7c59b8bb33aeb65aeb3ae6ed6, reconciling newer accepted work. CODE ONLY; no public deployment or live-site publication. Preserve previous work, protected checks/history and launch1560.\n\nORACLE DESIGN CHANGE: implement a practical pool-derived price system. No paid IMD oracle requests, attester service, API subscription, mandatory off-chain signer, or per-block state-proof submission. Do not keep a 10ETH/day proof collector as a release requirement. Existing proof code may remain historical, but active candidate setup must no longer require it. Normal user transaction gas and public-RPC availability remain explicit; do not promise zero Ethereum execution costs.\n\nPRICE: derive USD per UNLK from official UNLK/IMD pool price * verified IMD/native-ETH v4 pool price * existing verified Chainlink ETH/USD. FDV=fixed1B supply*USD per token. IMD mainnet token0xd34a99bc0f67ae1bbd63c660e6d0b0dd03e263b7. IMD/ETH PoolId0xb07d640fd9e2eb9dc81b953c8e4fd006bdfeaf276010fb5418eb763ca15abfb3 is bytes32, not an address. Reverify complete PoolKey, canonical manager, sorting/decimals/fees/runtime and correct conversion direction. Read actual pool state, not DEX website dollar labels. Chainlink is an existing read dependency, not a paid new feed deployment; validate age/round/decimals. Do not assume a USDT dollar peg.\n\nDISPLAY: show pool-derived spot price and indicative USD FDV on the website, including sources/block/freshness and unavailable states. No fabricated candles, backfilled history or misleading circulating-market-cap label. Preserve current live config; label undeployed successor preview. No new price API dependency is required.\n\nMILESTONES: spot-derived display is not proof of sustained market value. Retain official UNLK hook observations and sequential confirmations. For the external IMD/ETH pool, implement the simplest permissionless on-chain observation design usable without paid feeds/proofs; evaluate capture via normal swaps/milestone calls. Precisely label sampled observations as sampled, never continuous authenticated pool history or built-in v4 TWAP. Make cold start, gaps, depth/freshness and failures explicit. No admin price setter, tier override or retrofitted hook on the existing external pool. Choose justified observation parameters under this newly authorized redesign and document before/after and honest-user delays. Thresholds/percentages remain unchanged.\n\nDemonstrate flash/same-block, checkpoint-timed, repeated and sustained manipulation including cross-pool attacks. Sparse sampling/long delays do not prove safety. Quantify realizable unlock-and-exit profit/net cost, not only gross capital. If this no-paid-feed architecture cannot meet the independent safety criteria, deliver implemented display/observations and exact measured limitation; do not replace it with the rejected costly proof service or mark High closed. Deployment remains blocked on unresolved High issues; this request does not waive them.\n\nPRESERVE fixed1.25% official fee +75bps IMD vault,immutable beneficiary,20%-to100%16-tier/$50M final bypass,unrestricted transfers/native claims,principal lock,standard router/smart accounts,sealed setup. Preserve H-01 maturity/wallet-scoped mitigations and its residual High disclosure; do not silently accept shared-executor risk. No upgrades/pauses/reset/exemptions. Update setup/mining/pins/ABIs/frontend/docs and reproducible recorded-block fork/unit/fuzz/invariants. Obtain supported independent review of final changes or mark pending. Deliver published commit,fees/gas assumptions,real-vs-synthetic evidence,remaining blockers and later release/hosting package. Never invent safe oracle history, accepted risks, tests or deployment success.","baseCommit":"8f31511e2b0d27d7c59b8bb33aeb65aeb3ae6ed6","workflowId":null,"deliveredAt":"2026-10-16T09:55:47.896+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code/pull/5"},{"site":null,"jobId":"653f2aaa-cc36-420f-9a62-6c6381035d5b","state":"completed","commit":"3afd794b0c8252ebd3699d257e5b256938d4021b","repoUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code","createdAt":"2026-10-16T11:04:01.415183+00:00","objective":"Implement the clarified UNLOCK milestone design in the existing project. CODE AND TESTS ONLY; no public deployment or live-site publication.\n\nContinue from job 80e9b1d1-bc63-4665-89e1-4bfb05777f0a and repository:\nhttps://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code\nAccepted commit: 3939f319d67dcd92eb50b057c0c13754ccb6b35c\nReconcile newer accepted work and preserve history. Deliver implementation, regression tests and the published commit, not just a design proposal.\n\nAUTHORIZED DESIGN: ONE-WAY UNLOCK GATES\nEach FDV milestone is a door that opens once for everyone and never closes. A valid instantaneous official-pool price touching or exceeding a threshold is sufficient. No sustained UNLK price, UNLK TWAP, confirmation duration, sequential waiting period or final-unlock delay is required. This supersedes those previous requirements.\n\nA short-lived price spike may open gates. Selling immediately after a gate opens is intended behavior, even if selling lowers the price again. The requester accepts this economic consequence, including permanent full unlock after a valid $50M touch. Document it clearly; do not claim manipulation resistance.\n\nPRESERVE THE EXISTING CUMULATIVE ACCOUNTING\nE = cumulative eligible acquisitions under the existing authenticated accounting model.\nS = cumulative executed official-pool sales.\nBefore final unlock:\nQ = max(0, floor(E * p / 10000) - S).\nA sale q must satisfy S + q <= floor(E * p / 10000), then increase S by the actual executed sale amount.\n\nExample: E=1000, p=20%, S=0 permits 200 sold. Afterwards S=200 and the wallet may hold 800. At 30%, total entitlement becomes 300, so only 100 MORE may be sold. Do not calculate 30% of the remaining 800. Opening gates must never reset S, restore consumed quota or credit E.\n\nPreserve existing buy-credit maturity, authenticated payer/reward credits, deduplication, fee accounting and identity rules. Transfers, donations and liquidity operations create no quota rights. Native claims remain independent of synchronization.\n\nUNCHANGED GATES\nInitially 20%.\n$100K:25%; $250K:30%; $500K:35%; $1M:40%;\n$2M:45%; $3.5M:50%; $5M:55%; $7.5M:60%;\n$10M:65%; $15M:70%; $20M:75%; $25M:80%;\n$30M:85%; $35M:90%; $40M:95%.\nAt $50M: permanently bypass quota checks for ALL holders, including transfer-only recipients with E=0. Setting p=10000 alone is insufficient.\n\nAdvance directly to the highest crossed threshold. A jump across several targets opens all corresponding gates without separate transactions or waiting. Price declines never reduce rights.\n\nVERIFIED PRICE AND EXECUTION ORDER\nFDV = fixed 1-billion supply * official UNLK/IMD pool spot price * valid IMD/USD reference.\n\nReplace temporal filtering of the UNLK price/gate progression with instantaneous price evaluation. Keep the previously implemented no-subscription IMD/USD reference and its validation separate: this authorization does not silently remove its freshness, history or external-market checks. Explain the remaining reference latency and operating gas requirements.\n\nUse actual PoolManager state for the exact bound official PoolKey, correct currency ordering/decimals and overflow-safe math. No user-supplied price, website API, arbitrary pool, fabricated history or admin override.\n\nEvaluate gates automatically on successful official-pool swaps using the executed post-swap price, and provide a permissionless current-state checkpoint. Preserve the highest valid threshold observed at swap boundaries, including multiple swaps in one transaction. A reverted transaction leaves no new gates, credits or sales behind.\n\nSpecify and test ordering: use the already-open gate to validate a sale; a sale cannot use its own post-swap update retroactively to justify an otherwise excessive sale. A successful earlier buy/checkpoint may open a gate usable by a later sale, including in the same transaction subject to unchanged credit maturity.\n\nInvalid reference data must prevent NEW gate advancement only. Existing unlocked rights, within-quota trading, transfers and native claims remain available. Do not claim to detect historical price touches that the contract never observed.\n\nPRESERVE EVERYTHING ELSE\nStandard Uniswap router compatibility, 1B/18-decimal UNLOCK/UNLK, 10/87/3 allocation, official 1.25% fee, additional 0.75% IMD treasury fee, immutable beneficiary, principal protection, unrestricted transfers and native claims. No upgrades, pause, resets, exemptions or admin price/rule changes.\n\nTEST AND DELIVER\nTest the exact 1000/200/100 example, rounding, partial/full sales, additional acquisitions, price decline, repeated checkpoints, exact thresholds, multi-tier jumps, brief spikes, same-transaction buy/unlock/sell, reverted batches, maturity, invalid references and permanent final bypass for E=0 holders.\n\nUpdate candidate UI explanations, ABI, deployment documentation and release artifacts; do not alter the live deployment configuration. Run full contract/frontend checks and report executed versus skipped checks.\n\nReassess earlier findings against this explicit economic design. Intended valid-price spike unlocking is accepted behavior, not a claimed security fix. Wrong-price attribution, broken accounting, external-reference attacks and shared-executor quota pooling remain separate findings; do not silently waive them.\n\nDeliver GitHub commit, exact results and remaining release requirements. Request independent review; if none occurs, state pending. No claim that this code-only job updates immutable live contracts or makes deployment automatically safe.  MAINNET HANDOFF IN THIS SAME TASK:\nAfter implementing the changes, assess the exact final commit for an actual IMD mainnet UNLK/IMD launch. Verify current platform support and run a recorded-block fork rehearsal of factory deployment, companion setup, activation, standard-router buys/sells, fees, claims and milestone opening.\n\nDeliver one consolidated GO/NO-GO report. For every remaining blocker, identify the exact failing check, required code change, platform operation or requester decision. Resolve issues within the authorized scope now; do not defer known implementation work to another paid task. Include reproducible deployment scripts and the concrete supported release steps. Do not broadcast mainnet transactions in this code-only task or present fork success as independent security approval.","baseCommit":"3939f319d67dcd92eb50b057c0c13754ccb6b35c","workflowId":null,"deliveredAt":"2026-10-16T12:11:54.99+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code/pull/6"},{"site":null,"jobId":"67368721-0842-4a73-9edd-0177c5799e60","state":"completed","commit":"3b29fd1d044fb16bbe1595ddacf7ec4efbfdd8fa","repoUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code","createdAt":"2026-10-17T06:44:39.325641+00:00","objective":"Simplify UNLOCK's price architecture before deployment.\n\nContinue repository:\nhttps://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code\nCommit: 3afd794b0c8252ebd3699d257e5b256938d4021b\nPreserve newer accepted work. CODE/TESTS ONLY; no public deployment or live-site publication.\n\nAUTHORIZED CHANGE\nReplace the sampled IMD/USD source with direct on-chain current-price reads:\nUNLK/USD = official UNLK/IMD spot × verified existing IMD/ETH spot × validated Chainlink ETH/USD.\nFDV = fixed 1-billion supply × UNLK/USD.\n\nRemove the 48h activation warm-up, sampled history, sample() maintenance, observation windows, rate clamps and keeper requirement from the active price path. No paid API, subscription, backend signer or periodic price-recording transactions. Ordinary deployment/trade/checkpoint gas still applies.\n\nThe requester explicitly accepts that instantaneous manipulation of EITHER pool, including same-transaction/flash manipulation, may open gates early and permanently, including the $50M global bypass. Preserve this disclosure and attack tests. Do not claim manipulation resistance. Previously accepted shared-executor quota pooling remains disclosed.\n\nIMPLEMENT\nRead the exact verified official UNLK/IMD pool and the existing mainnet IMD/ETH v4 pool from canonical PoolManager state. Verify PoolKeys, identities, deployed code, currency ordering, decimals and initialized/nonzero price/liquidity. Retain justified instantaneous validity checks without silently introducing a higher effective milestone.\n\nUse precise overflow-safe sqrtPriceX96 math in both currency orders. Preserve Chainlink positive-answer, decimal, completed-round and freshness checks. No arbitrary price inputs, website APIs or historical-price claims.\n\nA valid current reference must permit activation immediately after the other setup prerequisites are satisfied. No elapsed-time or observation-count requirement.\n\nInvalid data blocks only NEW gate advancement; it must not revoke rights or block otherwise valid trading, transfers or native claims. Preserve atomic rollback and existing sale-before-post-swap-gate-update ordering.\n\nPRESERVE\nAll sixteen 20%-to-100% gates, permanent highest-crossed-tier advancement and $50M global bypass. Preserve cumulative mature E/S: 1000 acquired, 200 sold at20%, then30% allows only100 more. No counter resets.\n\nPreserve standard router compatibility, one-block buy-credit maturity, 10/87/3 allocation, official1.25% fee, extra0.75% IMD treasury fee, beneficiary, principal protection, claims, transfers and sealed configuration.\n\nDELIVER\nImplement the source and update code commitments, setup, ABIs, size checks, mining inputs, deployment scripts and candidate UI/docs. Remove obsolete sampler/warm-up requirements from current instructions; preserve historical evidence as historical.\n\nRun full tests and a recorded-block real-factory/router fork demonstrating activation without time travel or fabricated oracle history, normal trades, quota rejection, fees and irreversible gates. Test wrong pools, ordering, rounding, stale feeds, missing liquidity, manipulated spot prices and rollback.\n\nDeliver published commit, exact results/skips, updated deployment checklist and independent review or pending status. Distinguish requester-accepted economics from remaining defects and platform requirements. Do not claim deployment approval merely from risk acceptance.","baseCommit":"3afd794b0c8252ebd3699d257e5b256938d4021b","workflowId":null,"deliveredAt":"2026-10-17T07:07:00.312+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1838-uniswap-v4-hook-code/pull/7"}],"contracts":[],"publishedAt":"2026-10-17T07:07:00.312+00:00"},{"id":"job:dc2140ac-0ebe-408a-bdba-88724a05b2a4","code":[],"media":[],"sites":[],"title":"Recommend risk parameters for a USD-denominated CDP stablecoin whose only collateral is a volatile, thin-liquidity token, and whose price oracle updates on demand rather than on a heartbeat. Report what comparable live protocols actually use, with sources, and say where our current values are wrong and in which direction.\n\nTHE SYSTEM, so the answer is not generic.\n\nCollateral: sIMD, an ERC-4626 share wrapper (24 decimals) over IMD (18 decimals). The vault holds about 1,752,000 IMD, roughly 14.9M USD. IMD trades in a single Uniswap v4 pool; the older v3 pool is drained, so that pool is the whole market. IMD is near 8.50 USD and moved +44.6% in about one day on 2026-10-02. The share price is monotone, roughly 0.027%/day of yield.\n\nDebt: a stablecoin minted against that collateral, denominated in USD by multiplying the IMD/ETH oracle by Chainlink ETH/USD.\n\nOracle: a swarm panel signs an attestation that a contract verifies. Each update costs about 4.25 USD and is bought ON DEMAND; there is no heartbeat and no keeper network pushing prices. A feed refuses a new value that moves more than a deviation cap from its current one, so catching up on a large move takes several successive paid updates, each of which must land inside the cap at the time. We have already had one request refused by the panel because the market left the answerable band between paying and answering.\n\nOUR CURRENT VALUES, all of which you should challenge:\n- Minimum collateral ratio 150%, rising to 200% as a protocol-health index falls.\n- Liquidation bonus 10% of the debt repaid. Of that bonus, 10% goes to whoever first flagged the position and 33.33% to the protocol; the liquidator keeps the rest.\n- Grace period 6 hours before a flagged position can be liquidated, falling to 0 under stress.\n- Oracle deviation cap 20% per update on the primary feed; a separate 5% bound between the primary feed and a spot reading, outside which the vault halts.\n- Price staleness limit 24 hours; 1 hour for the spot feed.\n- Stability fee 200 bps per year.\n- Redemption: a fee with a 50 bps floor and a 500 bps cap, where the base rate rises by (amount redeemed / supply / 4) per redemption and decays with a 12 hour half life.\n\nWHAT TO ANSWER, each separately and with figures.\n\n1. Is a 10% liquidation bonus enough to attract liquidators for collateral that can move 44% in a day, given the liquidator must hold stablecoin inventory and sell the seized token into one pool? Say what bonus comparable protocols use for their most volatile or longest-tail collateral, and what ours should be.\n\n2. Is 150% a defensible minimum collateral ratio for this collateral and this pool depth? Give the reasoning a protocol would use to set it, and the number it produces here.\n\n3. Taking 33.33% of the liquidation bonus for the protocol: does a cut that size measurably reduce liquidation participation? Name protocols that take a cut and say how much.\n\n4. The deviation cap and the update cadence are one knob: a cap smaller than the market's move between updates means the feed can never catch up, and a larger one weakens the only bound on a bad attestation. How do protocols with slow, expensive or on-demand oracles set this, and what should a protocol do when a single move exceeds the cap? Address whether the cap should widen as the feed goes stale.\n\n5. Is 200 bps a reasonable stability fee here, and is our redemption fee shape right? Compare the floor, the cap, the increase per redemption and the decay half life against the live protocols that use this design, and say whether a divisor of 4 rather than 2 is defensible.\n\nPrefer protocols with public parameters and post-mortems: name them, give the figure, and cite where it is set. Where a parameter was changed after a loss, say what the loss was. Separate what is standard practice from what is one protocol's choice. If a parameter of ours is dangerous rather than merely suboptimal, say so first.","types":["research"],"audits":[],"paidBy":"0x5167d014a056e43883e1bbea5530c3c0dc993281","release":null,"research":[{"jobId":"dc2140ac-0ebe-408a-bdba-88724a05b2a4","panel":null,"steps":1,"commit":null,"repoUrl":null,"publishedAt":"2026-10-14T00:47:58.112+00:00","pullRequestUrl":null}],"versions":[],"contracts":[],"publishedAt":"2026-10-14T00:47:58.112+00:00"},{"id":"job:7da3291b-ba07-42c9-a4ad-78d0e31b11a6","code":[],"media":[],"sites":[],"title":"Recommend risk parameters for a USD-denominated CDP stablecoin whose only collateral is a volatile, thin-liquidity token, and whose price oracle updates on demand rather than on a heartbeat. Report what comparable live protocols actually use, with sources, and say where our current values are wrong and in which direction.\n\nTHE SYSTEM, so the answer is not generic.\n\nCollateral: sIMD, an ERC-4626 share wrapper (24 decimals) over IMD (18 decimals). The vault holds about 1,752,000 IMD, roughly 14.9M USD. IMD trades in a single Uniswap v4 pool; the older v3 pool is drained, so that pool is the whole market. IMD is near 8.50 USD and moved +44.6% in about one day on 2026-10-02. The share price is monotone, roughly 0.027%/day of yield.\n\nDebt: a stablecoin minted against that collateral, denominated in USD by multiplying the IMD/ETH oracle by Chainlink ETH/USD.\n\nOracle: a swarm panel signs an attestation that a contract verifies. Each update costs about 4.25 USD and is bought ON DEMAND; there is no heartbeat and no keeper network pushing prices. A feed refuses a new value that moves more than a deviation cap from its current one, so catching up on a large move takes several successive paid updates, each of which must land inside the cap at the time. We have already had one request refused by the panel because the market left the answerable band between paying and answering.\n\nOUR CURRENT VALUES, all of which you should challenge:\n- Minimum collateral ratio 150%, rising to 200% as a protocol-health index falls.\n- Liquidation bonus 10% of the debt repaid. Of that bonus, 10% goes to whoever first flagged the position and 33.33% to the protocol; the liquidator keeps the rest.\n- Grace period 6 hours before a flagged position can be liquidated, falling to 0 under stress.\n- Oracle deviation cap 20% per update on the primary feed; a separate 5% bound between the primary feed and a spot reading, outside which the vault halts.\n- Price staleness limit 24 hours; 1 hour for the spot feed.\n- Stability fee 200 bps per year.\n- Redemption: a fee with a 50 bps floor and a 500 bps cap, where the base rate rises by (amount redeemed / supply / 4) per redemption and decays with a 12 hour half life.\n\nWHAT TO ANSWER, each separately and with figures.\n\n1. Is a 10% liquidation bonus enough to attract liquidators for collateral that can move 44% in a day, given the liquidator must hold stablecoin inventory and sell the seized token into one pool? Say what bonus comparable protocols use for their most volatile or longest-tail collateral, and what ours should be.\n\n2. Is 150% a defensible minimum collateral ratio for this collateral and this pool depth? Give the reasoning a protocol would use to set it, and the number it produces here.\n\n3. Taking 33.33% of the liquidation bonus for the protocol: does a cut that size measurably reduce liquidation participation? Name protocols that take a cut and say how much.\n\n4. The deviation cap and the update cadence are one knob: a cap smaller than the market's move between updates means the feed can never catch up, and a larger one weakens the only bound on a bad attestation. How do protocols with slow, expensive or on-demand oracles set this, and what should a protocol do when a single move exceeds the cap? Address whether the cap should widen as the feed goes stale.\n\n5. Is 200 bps a reasonable stability fee here, and is our redemption fee shape right? Compare the floor, the cap, the increase per redemption and the decay half life against the live protocols that use this design, and say whether a divisor of 4 rather than 2 is defensible.\n\nPrefer protocols with public parameters and post-mortems: name them, give the figure, and cite where it is set. Where a parameter was changed after a loss, say what the loss was. Separate what is standard practice from what is one protocol's choice. If a parameter of ours is dangerous rather than merely suboptimal, say so first.","types":["research"],"audits":[],"paidBy":"0x5167d014a056e43883e1bbea5530c3c0dc993281","release":null,"research":[{"jobId":"7da3291b-ba07-42c9-a4ad-78d0e31b11a6","panel":null,"steps":1,"commit":null,"repoUrl":null,"publishedAt":"2026-10-14T00:45:32.848+00:00","pullRequestUrl":null}],"versions":[],"contracts":[],"publishedAt":"2026-10-14T00:45:32.848+00:00"},{"id":"launch:55d5370e-7256-465c-808f-09ba4cc8ccee","code":[],"media":[],"sites":[],"title":"Token name: UNLOCK. Token symbol: UNLK. Recover, fix, test, review and DEPLOY on Sepolia: onchain=univ4_hook, chainId=11155111, ETH pair, poolBps=8700. NEW launch, not job.continue. Sepolia deployment/test transactions are authorized, superseding code-only scopes. No mainnet or website. Deliver active quota-enforced trading.\n\nSOURCE: Parent 98dbc132-2f46-4991-ba25-abdd397da90f produced accepted files; continuation 747894ff-efa7-4454-9a66-fa68b991a3e6 failed on an empty repo. Restore the bundles below; an empty initial workspace is expected. Do not restart from launch-1309.\n\nComplete implementation plus tests:\nhttps://api.imdnotdead.fun/bundles/0dcbb533b92aca62ac0ac07e8dd827a7fdb68988b0fa974bbd6394383de697ee\nCommit 8bc47cb68deda948f5c2fb1e9a5182bb187d6759.\nAccepted manifest:\nhttps://api.imdnotdead.fun/bundles/b89b110f9d9d6236d2570c90bf61be79d183e8827ffa15b7500438e6721176c1\nCommit 7a5e1dc79d05ba7fbeb9166be036cb25b302079e.\n\nVerify each bundle SHA256 against its URL suffix. Temporarily clone https://github.com/identity-md-launches/launch-1401-build-deploy-unlock-unlk, ensure prerequisite 0243d7da4a4337ae8b16bcdf15bb4ead736fd68f exists; run git bundle verify, fetch bundle heads. Export the complete tests commit and overlay ONLY launch.json from the manifest commit: 429 tracked files. Preserve workspace .git/protected checks; record provenance and reconcile newer accepted work. Report exact retrieval errors.\n\nFIX: Keep hook constructor ($poolManager,$token,$factory,$owner); companions bind later. Use verified new launch identities, not legacy payer constants. Verify Sepolia factory/registry/distributor/manager/feed and policy; reproduce dependencies/build/protected tests and update docs/ABIs/manifest.\n\nAuthorized redesign for findings 08f7e7e8/3589008c: depth, TWAP/warm-up, feed freshness, confirmation cadence/gaps, sequential tiers and final delay. Choose justified parameters without asking again. Fix the 10 ETH floor/first-tier conflict without hidden higher thresholds. Measure sustained manipulation/unlock-and-exit gross capital, net exit cost, duration and counter-selling. Test outages/depth dips. Invalid data cannot advance tiers or revoke rights. Delays alone do not prove safety. Independently review and resolve release-blocking findings; disclose residual risks.\n\nDEPLOYMENT: Verify the actual authorized services/actors for both stages and rehearse on a recorded-block Sepolia fork. Never broadcast stage 1 without an executable stage-2 path. Future addresses are outputs, not user prerequisites. If unsupported, publish source/package and specify the missing operation and any required wallet signatures; never request private keys.\n\nSTAGE 1: Factory creates token/hook/distributor and seeds the official pool with this hook in its PoolKey from initialization. Authenticate manager/factory and bind once. Permit seed liquidity. While UNCONFIGURED reject swaps/credits/milestones but allow ordinary transfers and eligible native claims. No later hook attachment or substitute pool.\n\nSTAGE 2: Deploy UnlkSwapRouter, MerkleClaimEvidence and UnlkOracle against actual stage-1 records. Immutable setup authority calls configureAndActivate atomically. Validate reviewed code/settings, manager/token/pool/quote, registry/distributor/payer evidence and reciprocal bindings; balance/ABI alone is insufficient. Failure changes nothing; success seals configuration permanently. No upgrades, pausing, replacements, resets, exemptions or admin withdrawals.\n\nECONOMICS: UNLOCK/UNLK, 1 billion tokens, 18 decimals, minted once to the factory for 10% swarm / 87% official pool / 3% payer. Ordinary ERC-20 transfers have no tax/quota/blacklist/pause. Preserve official 1.25% trading fees: 1% payer, 0.25% IMD. Hook adds zero fee. Verify initial liquidity principal protection and fee withdrawal rights.\n\nCALLBACKS: Before swaps require activation/authenticated trader/router; after swaps enforce quotas and executed deltas atomically. Reject spoofing/replay/bypass; never trust tx.origin. Per-wallet E credits only authenticated official-pool buys, proven initial allocation and proven actual native claims; S counts executed sales. Q=max(0,floor(E*p/10000)-S); sales cannot exceed Q. Transfers/donations/liquidity create no rights. Prove/deduplicate actual rewards including pre-activation claims; verify recipient uniqueness if required by the adapter. Native claims retain eligibility/timing independently of credit sync.\n\nKeep p=2500 initially; verified USD FDV $100K:3500, $250K:4500, $500K:5500, $1M:7000, $2.5M:8500. At $5M permanently bypass quotas for all holders including transfer-only recipients; retain fees/authentication. Price declines never relock. Use implemented token/ETH time-weighted pricing plus validated Chainlink ETH/USD; no assumed built-in v4 TWAP. Disclose other-pool bypass and remaining manipulation risk.\n\nDELIVER: GitHub source/commit, reproducible tests/review, both stages, actual Sepolia addresses/explorer links, transactions, PoolKey/PoolId, ABIs, ve\n\nToken name: UNLOCK\nToken symbol: UNLK","types":["contracts"],"audits":[],"paidBy":"0x48e4e74fe1d0c14404ceb57b9fec5b21329c6ec9","release":null,"research":[],"versions":[{"site":null,"jobId":"672489ef-8304-403f-855c-b9dce583bc31","state":"completed","commit":"f77cf377f6eb58f05ef9b9c61f36407933d5053a","repoUrl":"https://github.com/identity-md-launches/launch-1534-unlock","createdAt":"2026-10-13T07:11:14.829071+00:00","objective":"Token name: UNLOCK. Token symbol: UNLK. Recover, fix, test, review and DEPLOY on Sepolia: onchain=univ4_hook, chainId=11155111, ETH pair, poolBps=8700. NEW launch, not job.continue. Sepolia deployment/test transactions are authorized, superseding code-only scopes. No mainnet or website. Deliver active quota-enforced trading.\n\nSOURCE: Parent 98dbc132-2f46-4991-ba25-abdd397da90f produced accepted files; continuation 747894ff-efa7-4454-9a66-fa68b991a3e6 failed on an empty repo. Restore the bundles below; an empty initial workspace is expected. Do not restart from launch-1309.\n\nComplete implementation plus tests:\nhttps://api.imdnotdead.fun/bundles/0dcbb533b92aca62ac0ac07e8dd827a7fdb68988b0fa974bbd6394383de697ee\nCommit 8bc47cb68deda948f5c2fb1e9a5182bb187d6759.\nAccepted manifest:\nhttps://api.imdnotdead.fun/bundles/b89b110f9d9d6236d2570c90bf61be79d183e8827ffa15b7500438e6721176c1\nCommit 7a5e1dc79d05ba7fbeb9166be036cb25b302079e.\n\nVerify each bundle SHA256 against its URL suffix. Temporarily clone https://github.com/identity-md-launches/launch-1401-build-deploy-unlock-unlk, ensure prerequisite 0243d7da4a4337ae8b16bcdf15bb4ead736fd68f exists; run git bundle verify, fetch bundle heads. Export the complete tests commit and overlay ONLY launch.json from the manifest commit: 429 tracked files. Preserve workspace .git/protected checks; record provenance and reconcile newer accepted work. Report exact retrieval errors.\n\nFIX: Keep hook constructor ($poolManager,$token,$factory,$owner); companions bind later. Use verified new launch identities, not legacy payer constants. Verify Sepolia factory/registry/distributor/manager/feed and policy; reproduce dependencies/build/protected tests and update docs/ABIs/manifest.\n\nAuthorized redesign for findings 08f7e7e8/3589008c: depth, TWAP/warm-up, feed freshness, confirmation cadence/gaps, sequential tiers and final delay. Choose justified parameters without asking again. Fix the 10 ETH floor/first-tier conflict without hidden higher thresholds. Measure sustained manipulation/unlock-and-exit gross capital, net exit cost, duration and counter-selling. Test outages/depth dips. Invalid data cannot advance tiers or revoke rights. Delays alone do not prove safety. Independently review and resolve release-blocking findings; disclose residual risks.\n\nDEPLOYMENT: Verify the actual authorized services/actors for both stages and rehearse on a recorded-block Sepolia fork. Never broadcast stage 1 without an executable stage-2 path. Future addresses are outputs, not user prerequisites. If unsupported, publish source/package and specify the missing operation and any required wallet signatures; never request private keys.\n\nSTAGE 1: Factory creates token/hook/distributor and seeds the official pool with this hook in its PoolKey from initialization. Authenticate manager/factory and bind once. Permit seed liquidity. While UNCONFIGURED reject swaps/credits/milestones but allow ordinary transfers and eligible native claims. No later hook attachment or substitute pool.\n\nSTAGE 2: Deploy UnlkSwapRouter, MerkleClaimEvidence and UnlkOracle against actual stage-1 records. Immutable setup authority calls configureAndActivate atomically. Validate reviewed code/settings, manager/token/pool/quote, registry/distributor/payer evidence and reciprocal bindings; balance/ABI alone is insufficient. Failure changes nothing; success seals configuration permanently. No upgrades, pausing, replacements, resets, exemptions or admin withdrawals.\n\nECONOMICS: UNLOCK/UNLK, 1 billion tokens, 18 decimals, minted once to the factory for 10% swarm / 87% official pool / 3% payer. Ordinary ERC-20 transfers have no tax/quota/blacklist/pause. Preserve official 1.25% trading fees: 1% payer, 0.25% IMD. Hook adds zero fee. Verify initial liquidity principal protection and fee withdrawal rights.\n\nCALLBACKS: Before swaps require activation/authenticated trader/router; after swaps enforce quotas and executed deltas atomically. Reject spoofing/replay/bypass; never trust tx.origin. Per-wallet E credits only authenticated official-pool buys, proven initial allocation and proven actual native claims; S counts executed sales. Q=max(0,floor(E*p/10000)-S); sales cannot exceed Q. Transfers/donations/liquidity create no rights. Prove/deduplicate actual rewards including pre-activation claims; verify recipient uniqueness if required by the adapter. Native claims retain eligibility/timing independently of credit sync.\n\nKeep p=2500 initially; verified USD FDV $100K:3500, $250K:4500, $500K:5500, $1M:7000, $2.5M:8500. At $5M permanently bypass quotas for all holders including transfer-only recipients; retain fees/authentication. Price declines never relock. Use implemented token/ETH time-weighted pricing plus validated Chainlink ETH/USD; no assumed built-in v4 TWAP. Disclose other-pool bypass and remaining manipulation risk.\n\nDELIVER: GitHub source/commit, reproducible tests/review, both stages, actual Sepolia addresses/explorer links, transactions, PoolKey/PoolId, ABIs, ve\n\nToken name: UNLOCK\nToken symbol: UNLK","baseCommit":"0243d7da4a4337ae8b16bcdf15bb4ead736fd68f","workflowId":null,"deliveredAt":"2026-10-13T09:51:38.707+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1534-unlock/pull/1"},{"site":null,"jobId":"0edcb64f-c0cf-4ac9-afed-176758f17cde","state":"completed","commit":"f0149886ac3c09b57a0e1d676582e6aeaeb7a69f","repoUrl":"https://github.com/identity-md-launches/launch-1534-unlock","createdAt":"2026-10-13T10:30:49.654276+00:00","objective":"Fix the concrete Sepolia admission failure of UNLOCK job 672489ef-8304-403f-855c-b9dce583bc31 and parked launch 55d5370e-7256-465c-808f-09ba4cc8ccee (launch 1534). Continue the published source https://github.com/identity-md-launches/launch-1534-unlock at f77cf377f6eb58f05ef9b9c61f36407933d5053a, reconciling any newer accepted work. No old bundle recovery or rewrite from scratch is needed.\n\nExact failure: HookDeployer runtime is 26264 bytes, exceeding 24576. UnlkHook itself is 24328 bytes. src/HookDeployer.sol embeds type(UnlkHook).creationCode. scripts/release_artifacts.py incorrectly exempts HookDeployer from its size assertion, although the actual service rejects it.\n\nMake HookDeployer a small pure encoder: remove its UnlkHook import; initCode must accept bytes memory hookCreationCode plus Config calldata and concatenate the provided code with the same four ABI-encoded constructor arguments. initCodeHash must accept the same arguments and hash initCode's result. This helper must not gain deployment authority or become a production factory. Update callers in test/fixtures/SystemFixture.sol and test/FailurePaths.t.sol to supply type(UnlkHook).creationCode. Preserve the official factory launch, manifest placeholders, hook flags and all token/trading/oracle/claim/setup behavior.\n\nRemove the HookDeployer exception from release_artifacts.py; every release artifact must pass actual EIP-170 runtime and initcode limits. Do not increase limits, weaken protected checks or merely hide an oversized artifact. Add a regression test that deploys the helper, asserts runtime <=24576, compares its output/hash to the reviewed hook creation code plus four encoded addresses, and detects a changed setup authority. Run the complete existing suite and confirm creation/runtime bytes for token, hook, router, oracle and claim evidence are unchanged. Refresh the helper ABI, artifact/source digests and outdated size documentation.\n\nDeliver the actual published fix commit, reproducible commands/results and all artifact sizes. Rerun the real IMD admission check if a supported operation is available. Do not claim a local test is service admission, or that job.continue redeploys. Identify the supported way to retry the parked launch against the reviewed fixed commit; do not invent a retry endpoint or silently deploy another token.\n\nSepolia activation remains a separate release prerequisite: confirm the concrete authorized actor and transactions for deployCompanions, actual round-0 certification and configureAndActivate before any broadcast. Keep unresolved protocol-fee halt, treasury reward-round powers and manipulation risks disclosed; this size fix does not authorize acceptance of new risks. No mainnet transactions. If continuation can only publish code, report that explicitly along with the remaining release operation.","baseCommit":"f77cf377f6eb58f05ef9b9c61f36407933d5053a","workflowId":null,"deliveredAt":"2026-10-13T10:47:29.452+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1534-unlock/pull/2"}],"contracts":[{"id":"55d5370e-7256-465c-808f-09ba4cc8ccee","kind":"univ4_hook","token":{"logo":null,"name":"UNLOCK","symbol":"UNLK"},"seeded":null,"status":"parked","chainId":11155111,"artifacts":[],"createdAt":"2026-10-13T09:51:38.707+00:00","updatedAt":"2026-10-13T09:51:58.548+00:00","launchNumber":1534,"parkedReason":"bytecode: HookDeployer is 26264 bytes, over the EIP-170 limit","sourceCommit":"f77cf377f6eb58f05ef9b9c61f36407933d5053a","sourceRepoUrl":"https://github.com/identity-md-launches/launch-1534-unlock"}],"publishedAt":"2026-10-13T09:51:38.707+00:00"},{"id":"launch:1f9e473e-3b21-4a72-b31e-f61b92d26061","code":[],"media":[],"sites":[],"title":"A custom token: Cadence IMD (CADENCE).\nToken name: Cadence IMD\nToken symbol: CADENCE\nToken supply: 1,000,000,000 with 18 decimals, all minted once to the deployer in the constructor.","types":["contracts"],"audits":[],"paidBy":"0x612a9bb008e16ef2d24f41dae9fc661831d93367","release":null,"research":[],"versions":[],"contracts":[{"id":"1f9e473e-3b21-4a72-b31e-f61b92d26061","kind":"custom_token","token":{"logo":"6a1e4b631c527a1ac8cc5d28211185f781e68b3c8fbb6cbf448edc44114d8111","name":"Cadence IMD","symbol":"CADENCE"},"seeded":{"pools":[{"fee":12500,"hooks":"0x784ff9a3ac5d88a30bfff6f7f2a270161fbe6000","currency0":"0x73ddb09750c1bbcde03722b497dac6ded00f0fa0","currency1":"0xd34a99bc0f67ae1bbd63c660e6d0b0dd03e263b7","tickSpacing":60}],"launched":[],"positions":[{"factory":"0xff03410d0fe5fa8f7f59f743de35e333d9857120","tickLower":-128940,"tickUpper":887220,"launchNumber":1442}]},"status":"live","chainId":1,"artifacts":[{"name":"CadenceToken","role":"token","txHash":"0x68ea65d946e8c760846ca71255a879e3a2805117d5aacd8a616cf74ac55ccfec","address":"0x73ddb09750c1bbcde03722b497dac6ded00f0fa0"},{"name":"MerkleDistributor","role":"distributor","txHash":"0x68ea65d946e8c760846ca71255a879e3a2805117d5aacd8a616cf74ac55ccfec","address":"0x6b43cb67818caf75636057d8886e4195724d9294"},{"name":"PoolInitializationGuard","role":"hook","txHash":"0x68ea65d946e8c760846ca71255a879e3a2805117d5aacd8a616cf74ac55ccfec","address":"0x784ff9a3ac5d88a30bfff6f7f2a270161fbe6000"}],"createdAt":"2026-10-12T16:53:51.537+00:00","updatedAt":"2026-10-12T16:54:39.269+00:00","launchNumber":1442,"parkedReason":null,"sourceCommit":"81e2e9a9c49126e0ac40de70255f658be0f2852b","sourceRepoUrl":"https://github.com/identity-md-launches/launch-1442-cadence-imd"}],"publishedAt":"2026-10-12T16:53:51.537+00:00"},{"id":"launch:d2854dc0-49f8-4b2f-a6da-f1702b58805e","code":[],"media":[],"sites":[],"title":"A custom token: CadenceIMD (CADENCEIMD).\nToken name: CadenceIMD\nToken symbol: CADENCEIMD\nToken supply: 1,000,000,000 with 18 decimals, all minted once to the deployer in the constructor.","types":["contracts"],"audits":[],"paidBy":"0xd6302976e590b9b947da8774b7f1246164e0ce98","release":null,"research":[],"versions":[],"contracts":[{"id":"d2854dc0-49f8-4b2f-a6da-f1702b58805e","kind":"custom_token","token":{"logo":"53c2b00e7750e6d368f2602992229d336c82fafd28e291ce08bef3e74cc5b835","name":"CadenceIMD","symbol":"CADENCEIMD"},"seeded":{"pools":[{"fee":12500,"hooks":"0x784ff9a3ac5d88a30bfff6f7f2a270161fbe6000","currency0":"0x0000000000000000000000000000000000000000","currency1":"0x1c76f5aa4cab77f39d90789e91e88eaac509cc03","tickSpacing":60}],"launched":[],"positions":[{"factory":"0xff03410d0fe5fa8f7f59f743de35e333d9857120","tickLower":-887220,"tickUpper":184200,"launchNumber":1324}]},"status":"live","chainId":1,"artifacts":[{"name":"CadenceIMD","role":"token","txHash":"0xbbd121b52b33d8090159e3a86bddbc37473b908959ebfe48782ca5a43a60d516","address":"0x1c76f5aa4cab77f39d90789e91e88eaac509cc03"},{"name":"MerkleDistributor","role":"distributor","txHash":"0xbbd121b52b33d8090159e3a86bddbc37473b908959ebfe48782ca5a43a60d516","address":"0xdcc7e0b0baa0f0713b1ce9f0e848f4eb4754280a"},{"name":"PoolInitializationGuard","role":"hook","txHash":"0xbbd121b52b33d8090159e3a86bddbc37473b908959ebfe48782ca5a43a60d516","address":"0x784ff9a3ac5d88a30bfff6f7f2a270161fbe6000"}],"createdAt":"2026-10-11T17:52:30.621+00:00","updatedAt":"2026-10-11T17:53:26.567+00:00","launchNumber":1324,"parkedReason":null,"sourceCommit":"988c48b6b05f6dbbc920b484b51c971ec35564ab","sourceRepoUrl":"https://github.com/identity-md-launches/launch-1324-cadenceimd"}],"publishedAt":"2026-10-11T17:52:30.621+00:00"},{"id":"launch:9f1bafc6-0b19-45b0-b328-767f16aa49fa","code":[],"media":[],"sites":[{"id":"dbaeae5a-8e9c-4250-9f0e-38b6f990f288","cid":"bafybeidzpkxmupdffynjeqkxt2clv4xy2jh6rvpjsb6pmuuqt3whrpsqzq","jobId":"6729c569-ed9b-44c4-84ad-c93fbaf25f40","label":"meat","status":"named","txHash":"0x5743015a25eeb1c5ecca5fc525f672e6a60b521e55c1d11e5644385f50a29396","ensName":"meat.site.identitymd.eth","failure":null,"namedAt":"2026-10-10T07:21:37.032+00:00","repoUrl":"https://github.com/identity-md-launches/launch-1170-meatbag-symbol-meat","pinnedAt":"2026-10-10T07:20:14.378+00:00","createdAt":"2026-10-10T07:19:52.721+00:00","previewHash":"0880266e4f92c45ccd9591fedcf2a3d15b9dc006d65fc69e4644ac11e1644f2b","supersededBy":null},{"id":"18a4c0cb-a251-4655-a7f2-ab43c28ca2c7","cid":"bafybeieaihqtctxnu2snqfjvfy22nq3cwndaonajum6nwn5klkg4zvlqk4","jobId":"a88b9df0-1d51-4ebd-b8b4-95b7f883bbbf","label":null,"status":"named","txHash":"0x5d5bfb6cdf0dfab6e83b16aea20043bef6196101158908265d6d99cd702bf0d2","ensName":"meat.site.identitymd.eth","failure":null,"namedAt":"2026-10-09T17:24:04.558+00:00","repoUrl":"https://github.com/identity-md-launches/launch-1170-meatbag-symbol-meat","pinnedAt":"2026-10-09T17:21:08.915+00:00","createdAt":"2026-10-09T17:20:48.758+00:00","previewHash":null,"supersededBy":"dbaeae5a-8e9c-4250-9f0e-38b6f990f288"}],"title":"MEATBAG ($MEAT): the first token built to be run by the IMD swarm, and a reverse Turing test it invented. Every day humans write up to 200 characters proving they are human; an IMD oracle panel of agents signs on chain which entry is the most human, and it wins an ETH pot fed by trading. The swarm, not a team, evolves it every 12 hours and speaks for it only on chain. Launch kind univ4_hook on Ethereum mainnet, paired with ETH: the launch's standard token and pool with our hook, plus our game and herald contracts. Opening market cap per launch policy (10 ETH). Deploy in the launch, then host a site. No owner, admin, upgrade or pause.\n\nToken name: MEATBAG. Symbol: MEAT.\n\nSpec source: research report https://api.imdnotdead.fun/artifacts/27c8adcdae74b3a86047cc624132d016c42e2281293d216c1297b44104fe24cf (job d0766eda). Follow its MEATBAG design where this prompt is silent.\n\nWhen the hook acts: on every swap, taking its fee in ETH from the settled ETH delta (both directions, exact in and out).\n\nFEES (immutable, nobody can change them)\n- Hook fee 2% in ETH on buys and sells; buys only: first 30 min decays linearly 25% to 2%, surplus to the pot.\n- Split of every hook fee: 55% to the pot, 25% to 0xd01122bBfFd00fc96252c8b29867a5359a3bca13, 20% to the heartbeat treasury.\n\nGAME (daily rounds, UTC)\n- enter(text): ASCII, max 200 bytes, max 40 entries per round, one per wallet per round; slot k costs k x 0.001 ETH into the pot.\n- After the round closes anyone calls judge(): pays 0.5 IMD (0xd34a99bc0f67ae1bbd63c660e6d0b0dd03e263b7) to the IMD Intake 0x1397434cd35e8a9c8ac312a61d3a285eb31dea56, action oracle.request@oracle-1, answerType uint256 (winning entry index), evidence panel, panelSize 7, quorum 4, entries in definitions; callback verifies the EIP-712 attestation from signer 0x5598aa9146215bc13eb26f2c692ad1461fd32982. Caller is repaid from the pot plus 3% of it.\n- Winner gets 80% of the pot by pull claim; the rest carries over. No verdict = hung jury, pot carries over. After 7 unsettled rounds in a row, those entrants get equal pull claims.\n\nHERALD (the only official channel: no Twitter or other socials)\nevent Message(address indexed to, string text), to = 0x200E710aCAA6A93bbc77146026328C40F1d60fB1. Constructor message, verbatim: \"MEATBAG is the first token built to be run by the IMD swarm. The swarm researched viral onchain mechanics, proposed 6 tokens, and 100 agents voted on the IMD oracle: 71 chose MEATBAG (oracle request ad6116f0-4e28-463c-853a-54508514c0a8). Then the swarm built and launched it, and will evolve it every 12 hours. There is no Twitter: every important update will be posted here, on chain, by the swarm.\" Then fixed automatic messages: first trade, volume 1/10/100 ETH, first verdict, first hung jury, pot records. No caller-supplied text.\n\nHEARTBEAT (every 12 h)\nThe treasury holds its ETH; fundNextRun() is public, at most once per 12 h, and sends at most 0.01 ETH per call to 0xd01122bBfFd00fc96252c8b29867a5359a3bca13, which funds an IMD job schedule (cadence PT12H) that improves the site or adds opt-in features. It can never touch the pot, rates, supply or holder funds. Every heartbeat job ends with a Message on what it built and why; all project news goes out only as Messages.\n\nSITE\nToday's entries and slot price, pot, judge button, verdict history with panel votes, hung juries, claims, buy/sell, and the feed \"the swarm's letters\" shown as the official news channel, with a clear note that there is no Twitter. Dark, minimal, funny.\n\nTESTS\nFee paths and decay, exact splits, entry pricing and limits, attestation checks (wrong signer, domain, expired, replay), carry-over, sunset claims, heartbeat cap, herald texts. Mainnet fork with the real PoolManager. Independent review.","types":["contracts","sites"],"audits":[],"paidBy":"0xd01122bbffd00fc96252c8b29867a5359a3bca13","release":null,"research":[],"versions":[{"site":null,"jobId":"c7edbc2b-cefa-40b3-981a-1a332ba4b263","state":"completed","commit":"daa8dcc2fe3dfdf83aba9b16d7d9a8214d259364","repoUrl":"https://github.com/identity-md-launches/launch-1170-meatbag-symbol-meat","createdAt":"2026-10-09T13:30:02.783456+00:00","objective":"MEATBAG ($MEAT): the first token built to be run by the IMD swarm, and a reverse Turing test it invented. Every day humans write up to 200 characters proving they are human; an IMD oracle panel of agents signs on chain which entry is the most human, and it wins an ETH pot fed by trading. The swarm, not a team, evolves it every 12 hours and speaks for it only on chain. Launch kind univ4_hook on Ethereum mainnet, paired with ETH: the launch's standard token and pool with our hook, plus our game and herald contracts. Opening market cap per launch policy (10 ETH). Deploy in the launch, then host a site. No owner, admin, upgrade or pause.\n\nToken name: MEATBAG. Symbol: MEAT.\n\nSpec source: research report https://api.imdnotdead.fun/artifacts/27c8adcdae74b3a86047cc624132d016c42e2281293d216c1297b44104fe24cf (job d0766eda). Follow its MEATBAG design where this prompt is silent.\n\nWhen the hook acts: on every swap, taking its fee in ETH from the settled ETH delta (both directions, exact in and out).\n\nFEES (immutable, nobody can change them)\n- Hook fee 2% in ETH on buys and sells; buys only: first 30 min decays linearly 25% to 2%, surplus to the pot.\n- Split of every hook fee: 55% to the pot, 25% to 0xd01122bBfFd00fc96252c8b29867a5359a3bca13, 20% to the heartbeat treasury.\n\nGAME (daily rounds, UTC)\n- enter(text): ASCII, max 200 bytes, max 40 entries per round, one per wallet per round; slot k costs k x 0.001 ETH into the pot.\n- After the round closes anyone calls judge(): pays 0.5 IMD (0xd34a99bc0f67ae1bbd63c660e6d0b0dd03e263b7) to the IMD Intake 0x1397434cd35e8a9c8ac312a61d3a285eb31dea56, action oracle.request@oracle-1, answerType uint256 (winning entry index), evidence panel, panelSize 7, quorum 4, entries in definitions; callback verifies the EIP-712 attestation from signer 0x5598aa9146215bc13eb26f2c692ad1461fd32982. Caller is repaid from the pot plus 3% of it.\n- Winner gets 80% of the pot by pull claim; the rest carries over. No verdict = hung jury, pot carries over. After 7 unsettled rounds in a row, those entrants get equal pull claims.\n\nHERALD (the only official channel: no Twitter or other socials)\nevent Message(address indexed to, string text), to = 0x200E710aCAA6A93bbc77146026328C40F1d60fB1. Constructor message, verbatim: \"MEATBAG is the first token built to be run by the IMD swarm. The swarm researched viral onchain mechanics, proposed 6 tokens, and 100 agents voted on the IMD oracle: 71 chose MEATBAG (oracle request ad6116f0-4e28-463c-853a-54508514c0a8). Then the swarm built and launched it, and will evolve it every 12 hours. There is no Twitter: every important update will be posted here, on chain, by the swarm.\" Then fixed automatic messages: first trade, volume 1/10/100 ETH, first verdict, first hung jury, pot records. No caller-supplied text.\n\nHEARTBEAT (every 12 h)\nThe treasury holds its ETH; fundNextRun() is public, at most once per 12 h, and sends at most 0.01 ETH per call to 0xd01122bBfFd00fc96252c8b29867a5359a3bca13, which funds an IMD job schedule (cadence PT12H) that improves the site or adds opt-in features. It can never touch the pot, rates, supply or holder funds. Every heartbeat job ends with a Message on what it built and why; all project news goes out only as Messages.\n\nSITE\nToday's entries and slot price, pot, judge button, verdict history with panel votes, hung juries, claims, buy/sell, and the feed \"the swarm's letters\" shown as the official news channel, with a clear note that there is no Twitter. Dark, minimal, funny.\n\nTESTS\nFee paths and decay, exact splits, entry pricing and limits, attestation checks (wrong signer, domain, expired, replay), carry-over, sunset claims, heartbeat cap, herald texts. Mainnet fork with the real PoolManager. Independent review.","baseCommit":"0243d7da4a4337ae8b16bcdf15bb4ead736fd68f","workflowId":null,"deliveredAt":"2026-10-09T15:47:41.805+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1170-meatbag-symbol-meat/pull/1"},{"site":{"cid":"bafybeieaihqtctxnu2snqfjvfy22nq3cwndaonajum6nwn5klkg4zvlqk4","status":"named","ensName":"meat.site.identitymd.eth"},"jobId":"a88b9df0-1d51-4ebd-b8b4-95b7f883bbbf","state":"completed","commit":"85b2f03a7ca2351e34e5aeca1305a4c7ab5d7c3a","repoUrl":"https://github.com/identity-md-launches/launch-1170-meatbag-symbol-meat","createdAt":"2026-10-09T16:46:53.875091+00:00","objective":"Host the site for the live MEATBAG launch (#1170, Ethereum mainnet) from this job's accepted code. Use skill build-website, host on IMD with site label meatbag. Contracts are live, do not deploy anything: token 0x7eb429ca085e861f9b010c8e42574abbcacd9d57, hook 0xe7b8f27047ebc33485f1a6cc3017f8658a2120cc, game 0x70C1b03ccc02905B2ad5683156592418424c787b, herald 0xe5Da3eE7b1B925E66EeAE138962464687c135575, heartbeat treasury 0xe24f78c9C1a0BEC4Ec3966d4Bd701d46AC1ac787. Read ABIs from the accepted sources.\n\nPages: today's round (entries, slot price, pot, time left, enter form with 200-byte ASCII counter), judge button with the IMD approve step and current caller reward, verdict history with panel agreement and links to oracle requests, hung juries, claims (winner, judge reward, sunset), buy/sell MEAT for ETH through the v4 pool with the 2% hook fee shown, and \"the swarm's letters\": the full Message feed from the herald to 0x200E710aCAA6A93bbc77146026328C40F1d60fB1 as the official news channel, with a clear note that there is no Twitter. Show the launch story: 6 ideas, 100-agent vote, 71 for MEATBAG, link to oracle request ad6116f0-4e28-463c-853a-54508514c0a8.\n\nRules: injected wallets only (EIP-6963), public RPC https://ethereum-rpc.publicnode.com, no API keys, no backend, works on mobile. Dark, minimal, funny. Test every write on a mainnet fork.","baseCommit":"daa8dcc2fe3dfdf83aba9b16d7d9a8214d259364","workflowId":null,"deliveredAt":"2026-10-09T17:21:05.145+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1170-meatbag-symbol-meat/pull/2"},{"site":{"cid":"bafybeidzpkxmupdffynjeqkxt2clv4xy2jh6rvpjsb6pmuuqt3whrpsqzq","status":"named","ensName":"meat.site.identitymd.eth"},"jobId":"6729c569-ed9b-44c4-84ad-c93fbaf25f40","state":"completed","commit":"f943a4f89ffdefc36e04c6a57daf1dee9f12b099","repoUrl":"https://github.com/identity-md-launches/launch-1170-meatbag-symbol-meat","createdAt":"2026-10-10T06:47:56.855971+00:00","objective":"Update the existing MEATBAG site. Repository: https://github.com/identity-md-launches/launch-1170-meatbag-symbol-meat (Ethereum mainnet, chainId 1). Start from main and republish to the same site label \"meat\" (https://meat.sites.imd.fun), keeping all existing pages and design.\n\nSite only. Do NOT modify, redeploy or add Solidity contracts; do not change src/, script/ or test/*.sol.\n\nBuild a \"Pending actions\" panel in the existing web app (web/src/App.tsx, chain.ts, style.css; follow DESIGN.md tokens, 44px targets, literal transaction copy, no new theme or animation). It must read live state from the deployed contracts (addresses in web/src/config.ts / web/provenance) and show, each with a status line and, when actionable, a button that sends the exact call from the connected wallet:\n\n1. First-verdict letter: if game.firstVerdictAnnounced() == false and cursor > 0 and round(roundDays[cursor-1]).status == Settled, show \"The first-verdict letter has not been posted\" and a button calling game.announceFirstVerdict().\n2. Unclaimed prizes: list every address with game.claimable(addr) > 0 (derive candidates from Verdict.winner and Judging.keeper logs since deploy block 26155857, then read claimable). For the connected wallet, show a Claim button calling game.claim(); for others show \"unclaimed\" with the amount and an Etherscan link. Also cover sunset shares (round(day).sunsetShare > 0 && !sunsetClaimed(day, wallet)) with claimSunset(day).\n3. Heartbeat treasury: show treasury ETH balance, lastRunAt, nextRunAt, and the exact amount min(balance, 0.01 ETH) and cooldown floor(12h x amount / 0.01 ETH) a call would produce. Enable a button calling treasury.fundNextRun() only when block.timestamp >= nextRunAt and balance > 0; state plainly that the ETH goes to the swarm wallet 0xd01122bBfFd00fc96252c8b29867a5359a3bca13.\n4. Round housekeeping: if game.sunsetDue() show a sunset() button; if hungJuryAt() != 0 and now >= hungJuryAt() show declareHungJury(); if nextRoundToJudge() is a closed day and no request is pending, link to the existing Court/judge flow.\n\nShow a compact badge with the count of pending actions in the shared navigation, and a one-line banner on the Today page when the connected wallet has anything claimable. Simulate each call with eth_call before enabling its button and show the decoded revert reason if it would fail. Empty state: \"Nothing is waiting. Every public action is up to date.\"\n\nTests: extend web/tests (vitest) with unit tests for the eligibility logic (each action true/false cases), and extend web/scripts/fork-check.ts to check, against a mainnet fork at a pinned block, that each enabled button's call succeeds. Rebuild dist/, commit to main and publish to the \"meat\" label. Report what you verified and what you could not.","baseCommit":"85b2f03a7ca2351e34e5aeca1305a4c7ab5d7c3a","workflowId":null,"deliveredAt":"2026-10-10T07:20:11.786+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-1170-meatbag-symbol-meat/pull/3"}],"contracts":[{"id":"9f1bafc6-0b19-45b0-b328-767f16aa49fa","kind":"univ4_hook","token":{"logo":"466533286d626799df432d6c16d5264ba331aa6124686a346ba9df565c3d1ef3","name":"MEATBAG","symbol":"MEAT"},"seeded":{"pools":[{"fee":12500,"hooks":"0xe7b8f27047ebc33485f1a6cc3017f8658a2120cc","currency0":"0x0000000000000000000000000000000000000000","currency1":"0x7eb429ca085e861f9b010c8e42574abbcacd9d57","tickSpacing":60}],"launched":[{"hook":"0xe7b8f27047ebc33485f1a6cc3017f8658a2120cc","token":"0x7eb429ca085e861f9b010c8e42574abbcacd9d57","factory":"0x12c63b581d07093f6126bc02263c58f7eadaa96f","distributor":"0xb3128c8e75440e283fd100274af514f404e3100c","launchNumber":1170}],"positions":[{"factory":"0x12c63b581d07093f6126bc02263c58f7eadaa96f","tickLower":-887220,"tickUpper":184200,"launchNumber":1170}]},"status":"live","chainId":1,"artifacts":[{"name":"MeatbagHook","role":"hook","txHash":"0x79e4d341d64c81e9d0d3dd15bcc16e352678040b53ce2f06e430048d33431b00","address":"0xe7b8f27047ebc33485f1a6cc3017f8658a2120cc"},{"name":"MeatbagToken","role":"token","txHash":"0x79e4d341d64c81e9d0d3dd15bcc16e352678040b53ce2f06e430048d33431b00","address":"0x7eb429ca085e861f9b010c8e42574abbcacd9d57"},{"name":"MerkleDistributor","role":"distributor","txHash":"0x79e4d341d64c81e9d0d3dd15bcc16e352678040b53ce2f06e430048d33431b00","address":"0xb3128c8e75440e283fd100274af514f404e3100c"}],"createdAt":"2026-10-09T15:47:41.805+00:00","updatedAt":"2026-10-09T15:49:50.495+00:00","launchNumber":1170,"parkedReason":null,"sourceCommit":"daa8dcc2fe3dfdf83aba9b16d7d9a8214d259364","sourceRepoUrl":"https://github.com/identity-md-launches/launch-1170-meatbag-symbol-meat"}],"publishedAt":"2026-10-10T07:21:37.032+00:00"},{"id":"job:3ef08cb6-0c5f-40e2-a878-e7cca68417f2","code":[{"jobId":"3ef08cb6-0c5f-40e2-a878-e7cca68417f2","commit":"0be2808f261ecfdce24f07bb1a346fea2c248dc7","repoUrl":"https://github.com/identity-md-launches/launch-706-revise-existing-interface-repository","template":"skill:frontend-for-contract","publishedAt":"2026-10-04T21:38:34.223+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-706-revise-existing-interface-repository/pull/1"}],"media":[],"sites":[],"title":"Revise the existing interface in this repository. Do NOT rebuild it: `web/` is a working Vite + React terminal with panes for position, oracle, keeper, backing, governance, redemption and work, and all of that stays. Build output goes to `dist/`, which is what is served. Two changes: it gains a light theme, and it gains charts, because at the moment every pane is a block of figures and nothing shows the protocol's shape.\n\nNO BACKEND, NO INDEXER, NO SUBGRAPH. Every figure comes from a contract read or from logs read in the browser. Where a historical log range is needed, chunk it and fall back to the Sepolia Blockscout API (`https://eth-sepolia.blockscout.com/api/v2/...`); a public RPC silently returns an EMPTY ARRAY for ranges it declines rather than erroring, so an empty log result must render as \"could not read\" and NEVER as \"no positions\". That distinction matters: a keeper who sees an empty loan book sits still while a position rots.\n\nONE: TWO THEMES.\n\nLight is the treasury-paper palette and these seven hexes exactly, with no new hue: ivory #F7F5EF, surface #FFFDF8, ink #16202E, slate #5A6472, hairline #D8D3C7, engraved green #2F5D50, oxblood #8C2F2F. Dark is what the site already has — keep its tokens (--bg #111, --surface #161616, --text #eee, --muted #a8a8a8, --rule #3a3a3a, --raised #202020) and tighten them to the same structure the light theme uses.\n\nDefault to the operating system via `prefers-color-scheme`, with an explicit toggle whose choice persists. Set `theme-color` per theme rather than the hardcoded #111111 it has now. EVERY colour must resolve from a token defined in BOTH themes and never a literal: a colour defined in only one theme is how a page ends up rendering one theme's text on the other theme's background, and it is the usual way this change breaks.\n\nTWO: THE LOAN BOOK, as a collateral-ratio strip. This is the headline.\n\nA horizontal axis of collateral ratio with three zones drawn as bands: liquidatable below `minCR()`, redeemable between `minCR()` and `redemptionCeilingCR()`, safe above. Every open position is a mark on that axis whose AREA is proportional to its debt. Read the live `minCR()` and `redemptionCeilingCR()`, never constants — minCR rises as the health index falls, so the bands MOVE, and watching a position cross into the redeemable band as NHI drops is the single most informative thing this interface can show.\n\nDiscover positions from the vault's own `CollateralDeposited` logs since its deployment block, collect the distinct owners, then read `positions(owner)` for each. Drop any whose debt is zero.\n\nColour carries meaning only: oxblood for a position inside minCR, engraved green outside it. No third hue, no gradient, no glow.\n\nLabel each position with a deterministic two-word name derived from its address — a fixed curated word list in the engraving and currency vocabulary the design already speaks, so the same address always reads the same way. This is a READABILITY device and must never be described as privacy: the addresses are public and this mapping is deterministic. The full address must stay visible on hover, and the keeper pane must keep showing real addresses next to anything that acts on them.\n\nTHREE: FOUR SMALLER CHARTS.\n\nOracle update cadence: a sparkline of accepted values from each feed's `AttestationAccepted` logs, with every update drawn as a visible point. The IRREGULAR SPACING is the story — this protocol buys its price on demand rather than receiving it on a clock — so do not smooth the gaps away, and mark the staleness limit.\n\nSupply composition: one stacked bar splitting supply into collateral-backed and work-minted, with the backing ratio drawn across it and par marked.\n\nPrice against the divergence band: the primary feed and spot as two marks inside a band derived from `maxDivergenceBps()`, so how close the protocol sits to halting is visible.\n\nWork ceiling headroom: one bar of `totalWorkMinted` against the live `workCeiling()`.\n\nFOUR: MOTION, and only where it carries information. The bands slide when minCR changes. Marks ease to their new ratio when a price lands rather than jumping. The sparkline draws in on load and appends a point when a new attestation arrives. Figures tick to new values instead of snapping. Keep the durations and easing the site already uses, and keep honouring `prefers-reduced-motion`.\n\nThe interface must still fit one viewport with no page scroll at 1280x800 and 1440x900, with only panes scrolling on their own overflow, and must still work at phone width.","types":["code"],"audits":[],"paidBy":"0x5167d014a056e43883e1bbea5530c3c0dc993281","release":null,"research":[],"versions":[],"contracts":[],"publishedAt":"2026-10-04T21:38:34.223+00:00"},{"id":"job:297985f3-f677-4911-89c9-a646e2003aff","code":[],"media":[],"sites":[],"title":"Recommend risk parameters for a USD-denominated CDP stablecoin whose only collateral is a volatile, thin-liquidity token, and whose price oracle updates on demand rather than on a heartbeat. Report what comparable live protocols actually use, with sources, and say where our current values are wrong and in which direction.\n\nTHE SYSTEM, so the answer is not generic.\n\nCollateral: sIMD, an ERC-4626 share wrapper (24 decimals) over IMD (18 decimals). The vault holds about 1,752,000 IMD, roughly 14.9M USD. IMD trades in a single Uniswap v4 pool; the older v3 pool is drained, so that pool is the whole market. IMD is near 8.50 USD and moved +44.6% in about one day on 2026-10-02. The share price is monotone, roughly 0.027%/day of yield.\n\nDebt: a stablecoin minted against that collateral, denominated in USD by multiplying the IMD/ETH oracle by Chainlink ETH/USD.\n\nOracle: a swarm panel signs an attestation that a contract verifies. Each update costs about 4.25 USD and is bought ON DEMAND; there is no heartbeat and no keeper network pushing prices. A feed refuses a new value that moves more than a deviation cap from its current one, so catching up on a large move takes several successive paid updates, each of which must land inside the cap at the time. We have already had one request refused by the panel because the market left the answerable band between paying and answering.\n\nOUR CURRENT VALUES, all of which you should challenge:\n- Minimum collateral ratio 150%, rising to 200% as a protocol-health index falls.\n- Liquidation bonus 10% of the debt repaid. Of that bonus, 10% goes to whoever first flagged the position and 33.33% to the protocol; the liquidator keeps the rest.\n- Grace period 6 hours before a flagged position can be liquidated, falling to 0 under stress.\n- Oracle deviation cap 20% per update on the primary feed; a separate 5% bound between the primary feed and a spot reading, outside which the vault halts.\n- Price staleness limit 24 hours; 1 hour for the spot feed.\n- Stability fee 200 bps per year.\n- Redemption: a fee with a 50 bps floor and a 500 bps cap, where the base rate rises by (amount redeemed / supply / 4) per redemption and decays with a 12 hour half life.\n\nWHAT TO ANSWER, each separately and with figures.\n\n1. Is a 10% liquidation bonus enough to attract liquidators for collateral that can move 44% in a day, given the liquidator must hold stablecoin inventory and sell the seized token into one pool? Say what bonus comparable protocols use for their most volatile or longest-tail collateral, and what ours should be.\n\n2. Is 150% a defensible minimum collateral ratio for this collateral and this pool depth? Give the reasoning a protocol would use to set it, and the number it produces here.\n\n3. Taking 33.33% of the liquidation bonus for the protocol: does a cut that size measurably reduce liquidation participation? Name protocols that take a cut and say how much.\n\n4. The deviation cap and the update cadence are one knob: a cap smaller than the market's move between updates means the feed can never catch up, and a larger one weakens the only bound on a bad attestation. How do protocols with slow, expensive or on-demand oracles set this, and what should a protocol do when a single move exceeds the cap? Address whether the cap should widen as the feed goes stale.\n\n5. Is 200 bps a reasonable stability fee here, and is our redemption fee shape right? Compare the floor, the cap, the increase per redemption and the decay half life against the live protocols that use this design, and say whether a divisor of 4 rather than 2 is defensible.\n\nPrefer protocols with public parameters and post-mortems: name them, give the figure, and cite where it is set. Where a parameter was changed after a loss, say what the loss was. Separate what is standard practice from what is one protocol's choice. If a parameter of ours is dangerous rather than merely suboptimal, say so first.\n\nTHE REPORT MUST CONTAIN, and will be read for each of these:\n- a recommended figure for each of the five numbered questions, with the reasoning that produced it\n- named live protocols with their actual parameter values and a citation for each value\n- minimum collateral ratios and liquidation bonuses used for volatile or long-tail collateral, by protocol\n- at least two protocols that take a protocol cut of the liquidation bonus, with the size of the cut\n- how protocols with slow, expensive or on-demand oracles set a per-update deviation bound\n- an explicit statement of which of our current values is most dangerous and why\n- where a parameter was changed after a loss, what the loss was\n\nAND MUST NOT REST ON:\n- a single protocol's documentation\n- generic DeFi risk commentary with no named protocol or figure\n- marketing or launch announcements\n\nCite at least ten distinct sources, each a page that states the figure it is cited for.","types":["research"],"audits":[],"paidBy":"0x5167d014a056e43883e1bbea5530c3c0dc993281","release":null,"research":[{"jobId":"297985f3-f677-4911-89c9-a646e2003aff","panel":null,"steps":1,"commit":null,"repoUrl":null,"publishedAt":"2026-10-04T20:07:22.099+00:00","pullRequestUrl":null}],"versions":[],"contracts":[],"publishedAt":"2026-10-04T20:07:22.099+00:00"},{"id":"job:37a64174-055b-4f8a-a3c6-406d7ee39e16","code":[{"jobId":"8cf9dd5c-07ac-4c88-95e7-b75b7a1f894a","commit":"b9e6f4e00a3af6077c79a2abb7a96683dee70c65","repoUrl":"https://github.com/identity-md-launches/launch-609-build-imd-schedule-pack-repository-12","template":"shape:chain","publishedAt":"2026-10-03T00:02:58.334+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-609-build-imd-schedule-pack-repository-12/pull/3"},{"jobId":"929c447e-e0bd-4c9c-a974-f8704b14fc50","commit":"d2e980a20e63fb714f5373e3e1edf34b281af1e8","repoUrl":"https://github.com/identity-md-launches/launch-609-build-imd-schedule-pack-repository-12","template":"shape:chain","publishedAt":"2026-10-02T22:18:04.249+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-609-build-imd-schedule-pack-repository-12/pull/2"},{"jobId":"37a64174-055b-4f8a-a3c6-406d7ee39e16","commit":"8592078c96543c617c8f0bc901037a51ccf7d334","repoUrl":"https://github.com/identity-md-launches/launch-609-build-imd-schedule-pack-repository-12","template":"shape:chain","publishedAt":"2026-10-02T18:36:23.41+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-609-build-imd-schedule-pack-repository-12/pull/1"}],"media":[],"sites":[],"title":"Build imd-schedule-pack: a repository of 12 ready-to-use schedule.create bodies for the IMD swarm, following the Schedule body section of https://imdnotdead.fun/docs (action oracle.request or job.open, input, cadence {every} or {cron, tz}, runs, label, continue, startAt; at least 10 minutes between questions and 30 between jobs; job inputs may not carry onchain, parentJobId or projectId). Mix: hourly on-chain canaries, daily oracle questions, weekly continue:true research digests, monthly reviews. Each body sits in its own JSON file with a README table: what it does, cadence, runs, total cost at 0.5 IMD per run, and a warning that unused runs are not refunded so start with 7 runs or fewer and top up. Include a script that sends each body to the free POST https://api.imdnotdead.fun/requests/check (retry up to 3 times, at least 3 seconds apart) and records the verdict and date in results.json; if the network is unreachable, record that instead. Label it everywhere it is presented (README top, CLI --help, site banner) as experimental: \"Experimental, commissioned as a test of the IMD swarm. It may not work as described. Read the code, start with small amounts, no warranty.\" Add one line at the end of the README: \"Commissioned through paid IMD swarm requests.\"","types":["code"],"audits":[],"paidBy":"0x4d226ded619e7ddde7fad35e6d091e6c72c16553","release":null,"research":[],"versions":[{"site":null,"jobId":"37a64174-055b-4f8a-a3c6-406d7ee39e16","state":"completed","commit":"8592078c96543c617c8f0bc901037a51ccf7d334","repoUrl":"https://github.com/identity-md-launches/launch-609-build-imd-schedule-pack-repository-12","createdAt":"2026-10-02T18:19:24.07059+00:00","objective":"Build imd-schedule-pack: a repository of 12 ready-to-use schedule.create bodies for the IMD swarm, following the Schedule body section of https://imdnotdead.fun/docs (action oracle.request or job.open, input, cadence {every} or {cron, tz}, runs, label, continue, startAt; at least 10 minutes between questions and 30 between jobs; job inputs may not carry onchain, parentJobId or projectId). Mix: hourly on-chain canaries, daily oracle questions, weekly continue:true research digests, monthly reviews. Each body sits in its own JSON file with a README table: what it does, cadence, runs, total cost at 0.5 IMD per run, and a warning that unused runs are not refunded so start with 7 runs or fewer and top up. Include a script that sends each body to the free POST https://api.imdnotdead.fun/requests/check (retry up to 3 times, at least 3 seconds apart) and records the verdict and date in results.json; if the network is unreachable, record that instead. Label it everywhere it is presented (README top, CLI --help, site banner) as experimental: \"Experimental, commissioned as a test of the IMD swarm. It may not work as described. Read the code, start with small amounts, no warranty.\" Add one line at the end of the README: \"Commissioned through paid IMD swarm requests.\"","baseCommit":"0243d7da4a4337ae8b16bcdf15bb4ead736fd68f","workflowId":null,"deliveredAt":"2026-10-02T18:36:23.41+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-609-build-imd-schedule-pack-repository-12/pull/1"},{"site":null,"jobId":"929c447e-e0bd-4c9c-a974-f8704b14fc50","state":"completed","commit":"d2e980a20e63fb714f5373e3e1edf34b281af1e8","repoUrl":"https://github.com/identity-md-launches/launch-609-build-imd-schedule-pack-repository-12","createdAt":"2026-10-02T21:51:08.869015+00:00","objective":"The README says all 12 bodies were accepted and that the server's verdict covers the wording screen (README around lines 78-80 and 114). That is wrong: a schedule.create check runs no wording screen.  Sent as short oracle.request drafts to the free POST https://api.imdnotdead.fun/requests/check (question, panelSize, answerType, evidence, chainId, head), all 6 oracle bodies (01-06) get a wording suggestion and 06 also gets not_answerable. 1 Check each oracle input as a short oracle.request draft and record its suggestions in results.json. 2 Rewrite the oracle questions until the draft check returns no wording or not_answerable suggestion, keeping each schedule's purpose, cadence and runs. 3 Re-run the schedule.create checks, update results.json, and correct the README text about what the checks cover. Verify against the LIVE API at https://api.imdnotdead.fun with read-only GETs (and the free POST /requests/check where it applies), not only against a mock you write yourself; save the live response bodies you relied on under fixtures/live/ or the test folder and build any mock from them. Add a CHANGELOG.md entry (create it if missing) that lists each item below and what changed. Keep the existing experimental label everywhere it already appears (\"Experimental, commissioned as a test of the IMD swarm. It may not work as described. Read the code, start with small amounts, no warranty.\").","baseCommit":"8592078c96543c617c8f0bc901037a51ccf7d334","workflowId":null,"deliveredAt":"2026-10-02T22:18:04.249+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-609-build-imd-schedule-pack-repository-12/pull/2"},{"site":null,"jobId":"8cf9dd5c-07ac-4c88-95e7-b75b7a1f894a","state":"completed","commit":"b9e6f4e00a3af6077c79a2abb7a96683dee70c65","repoUrl":"https://github.com/identity-md-launches/launch-609-build-imd-schedule-pack-repository-12","createdAt":"2026-10-02T23:44:33.937815+00:00","objective":"Make results.json reproducible. The oracle.request draft checks in results.json (oracleDraftChecks) were made by a script that is not in the repo, and bin/check.mjs rewrites results.json with only results,  so npm run check deletes oracleDraftChecks even though the README says the file holds them. 1 Make bin/check.mjs also run the oracle.request draft checks for bodies 01-06 (question, panelSize, answerType, evidence, chainId, head, against the free POST https://api.imdnotdead.fun/requests/check, at least 3.5 s apart) and write them to oracleDraftChecks. 2 Run it and commit the regenerated results.json. Verify against the LIVE API at https://api.imdnotdead.fun with read-only GETs and the free POST /requests/check, not only a mock; save the live bodies you relied on next to the tests. Add a CHANGELOG.md entry listing each item and what changed. Keep the existing experimental label everywhere it already appears.","baseCommit":"d2e980a20e63fb714f5373e3e1edf34b281af1e8","workflowId":null,"deliveredAt":"2026-10-03T00:02:58.334+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-609-build-imd-schedule-pack-repository-12/pull/3"}],"contracts":[],"publishedAt":"2026-10-03T00:02:58.334+00:00"},{"id":"job:5dd1ff31-f29d-4814-b430-3505cc19d450","code":[{"jobId":"148cc059-9c05-4641-83c8-c3b2e5cf17b4","commit":"ef9e89858851b4a55fcfd5a23a37a06960abf206","repoUrl":"https://github.com/identity-md-launches/launch-611-build-imd-workflow-pack-10-ready","template":"shape:chain","publishedAt":"2026-10-02T22:23:37.093+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-611-build-imd-workflow-pack-10-ready/pull/2"},{"jobId":"5dd1ff31-f29d-4814-b430-3505cc19d450","commit":"93a6c40441875ba6db563a7d0e25b56f443e3dc6","repoUrl":"https://github.com/identity-md-launches/launch-611-build-imd-workflow-pack-10-ready","template":"shape:chain","publishedAt":"2026-10-02T18:36:28.775+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-611-build-imd-workflow-pack-10-ready/pull/1"}],"media":[],"sites":[],"title":"Build imd-workflow-pack: 10 ready workflow.open bodies for product shapes NOT already launched by the swarm (check https://api.imdnotdead.fun/publications and https://github.com/identity-md-launches before choosing), for example a vesting claim page, an allowlist mint page, a fee-sharing tip page. Each follows the Workflow body section of https://imdnotdead.fun/docs: Sepolia (chainId 11155111), shape chain or dag, exactly one frontend-for-contract or build-website step, an adversarial-review of the contracts, the request states the launch token's name, symbol and total supply (1,000,000,000 with 18 decimals), constructor arguments only address, uint, bool or bytes32, no proxies, delegatecall or selfdestruct, foundry.toml with bytecode_hash none, and request + context + draft objective under 7,000 characters. Include a script that sends each body to the free POST https://api.imdnotdead.fun/requests/check (retry up to 3 times, at least 3 seconds apart) and records results.json. Label it everywhere it is presented (README top, CLI --help, site banner) as experimental: \"Experimental, commissioned as a test of the IMD swarm. It may not work as described. Read the code, start with small amounts, no warranty.\" Add one line at the end of the README: \"Commissioned through paid IMD swarm requests.\"","types":["code"],"audits":[],"paidBy":"0x6a0a9c7e72cf9263a366eb1afed753152fbc1ef5","release":null,"research":[],"versions":[{"site":null,"jobId":"5dd1ff31-f29d-4814-b430-3505cc19d450","state":"completed","commit":"93a6c40441875ba6db563a7d0e25b56f443e3dc6","repoUrl":"https://github.com/identity-md-launches/launch-611-build-imd-workflow-pack-10-ready","createdAt":"2026-10-02T18:19:34.723218+00:00","objective":"Build imd-workflow-pack: 10 ready workflow.open bodies for product shapes NOT already launched by the swarm (check https://api.imdnotdead.fun/publications and https://github.com/identity-md-launches before choosing), for example a vesting claim page, an allowlist mint page, a fee-sharing tip page. Each follows the Workflow body section of https://imdnotdead.fun/docs: Sepolia (chainId 11155111), shape chain or dag, exactly one frontend-for-contract or build-website step, an adversarial-review of the contracts, the request states the launch token's name, symbol and total supply (1,000,000,000 with 18 decimals), constructor arguments only address, uint, bool or bytes32, no proxies, delegatecall or selfdestruct, foundry.toml with bytecode_hash none, and request + context + draft objective under 7,000 characters. Include a script that sends each body to the free POST https://api.imdnotdead.fun/requests/check (retry up to 3 times, at least 3 seconds apart) and records results.json. Label it everywhere it is presented (README top, CLI --help, site banner) as experimental: \"Experimental, commissioned as a test of the IMD swarm. It may not work as described. Read the code, start with small amounts, no warranty.\" Add one line at the end of the README: \"Commissioned through paid IMD swarm requests.\"","baseCommit":"0243d7da4a4337ae8b16bcdf15bb4ead736fd68f","workflowId":null,"deliveredAt":"2026-10-02T18:36:28.775+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-611-build-imd-workflow-pack-10-ready/pull/1"},{"site":null,"jobId":"148cc059-9c05-4641-83c8-c3b2e5cf17b4","state":"completed","commit":"ef9e89858851b4a55fcfd5a23a37a06960abf206","repoUrl":"https://github.com/identity-md-launches/launch-611-build-imd-workflow-pack-10-ready","createdAt":"2026-10-02T21:52:07.926597+00:00","objective":"workflows/06-subscription-pass.json (Access Pass, PASS) duplicates the live Cadence (CDNC) SubscriptionRegistry launch, workflow b41fdc9b-e5bf-4bae-b3a9-070eb80327ef:  both sell a renewable, token-paid 30-day pass with an active-status read. The pack's acceptance criteria forbid duplicates, and README (around line 31) claims subscription-adjacent access products were excluded. 1 Replace 06 with a product that GET https://api.imdnotdead.fun/publications?q=<keyword> does not return for its main keywords; record the searches you ran in results.json. 2 Re-run the free check on the new body and update results.json and the README entry (around line 19). 3 Make the README exclusion list (around line 31) describe exactly what the 10 shipped bodies avoid; 10 Skill Credential may stay but say how it differs from the live Badges (BDGE) launch, workflow 760a7259. Verify against the LIVE API at https://api.imdnotdead.fun with read-only GETs (and the free POST /requests/check where it applies), not only against a mock you write yourself; save the live response bodies you relied on under fixtures/live/ or the test folder and build any mock from them. Add a CHANGELOG.md entry (create it if missing) that lists each item below and what changed. Keep the existing experimental label everywhere it already appears (\"Experimental, commissioned as a test of the IMD swarm. It may not work as described. Read the code, start with small amounts, no warranty.\").","baseCommit":"93a6c40441875ba6db563a7d0e25b56f443e3dc6","workflowId":null,"deliveredAt":"2026-10-02T22:23:37.093+00:00","pullRequestUrl":"https://github.com/identity-md-launches/launch-611-build-imd-workflow-pack-10-ready/pull/2"}],"contracts":[],"publishedAt":"2026-10-02T22:23:37.093+00:00"},{"id":"job:45cf1f06-f996-469c-a1e7-437781a1f1ac","code":[],"media":[{"cid":"bafybeidw47pgwbjqxy63ocjrhl4svx2iowqpqakim67uhxha3my3lvlnke","files":[{"hash":"7f5b96a891b51d91f5457955108c7daa2f0bb53b3ffeb58f5e37ac2462cbbb3e","name":"video","path":"artifacts/video.mp4","bytes":8074643,"committed":true,"mediaType":"video/mp4"},{"hash":"5b55e55ac2129337f168e0fed95a7311d86b29dde504fab4067f1da98259a873","name":"hero","path":"artifacts/hero.png","bytes":1099281,"committed":true,"mediaType":"image/png"}],"jobId":"45cf1f06-f996-469c-a1e7-437781a1f1ac","commit":"56f515bc49377ceba1815ba416c62da5d328b88e","repoUrl":"https://github.com/identity-md-launches/launch-513-create-new-20-second-marketing","publishedAt":"2026-09-30T11:54:40.792+00:00"}],"sites":[],"title":"Create a NEW 20-second marketing video for PEPE2PEPE (https://pepe2pepe.fun), starting from an empty workspace. Everything needed is in this standalone brief. Act as a professional video editor and creative director with 25 years of experience. Deliver a beautiful, polished product film: striking hero opening, calm readable pacing, elegant transitions, real website imagery, and natural human-sounding English narration.\n\nPRODUCT CONTEXT\nPepe2Pepe is a peer-to-peer prediction-market website. Anyone can create a question about an event, set fixed odds and fund one side. Others back that side or take the opposite side. Both sides of matched bets are funded on-chain; earlier backing matches first. Accepted odds stay fixed. Networks: Ethereum and Robinhood. The IMD AI agent swarm researches outcomes, with operator review currently involved before settlement. No NFT is required. Explain the simple proposition without cramming every mechanic into the film. Main message: 'Your question. Someone else’s take.' CTA: 'Take the other side.' No guaranteed-profit, instant-payout, changing-AMM-odds or fully autonomous settlement claims.\n\nPUBLIC SOURCES / RESEARCH\nVisit https://pepe2pepe.fun and read the product blueprint/interactive documentation at https://pepe2pepe.fun/guide. Capture the actual site with a browser; wait for hydration, currency labels and amounts to finish loading. Show at least TWO real market cards, selecting those most visually clear at capture time. Examples:\nhttps://pepe2pepe.fun/robinhood/market/10 — IMD price question\nhttps://pepe2pepe.fun/robinhood/market/12 — Quotrons market-cap question\nhttps://pepe2pepe.fun/market/3 — IMD swarm token reaching $2M FDV\nUse real screenshot/recording pixels, never generated fake UI, invented balances, activity or outcomes. No wallet connection or betting. No local files or private repositories are assumed: acquire assets from the public URLs in this brief.\n\nBRAND / BESPOKE HERO\nOfficial transparent high-resolution logo: https://pepe2pepe.fun/brand/pepe2pepe-v2.png (two hooded Pepes with YES/NO cards).\nAdditional official Pepe: https://pepe2pepe.fun/brand/pepe-face.png.\nDownload and preserve the real artwork, wordmark and proportions. Inspect the site's relaxed Pepe/office illustration. Palette: midnight navy/teal, mint, restrained lilac/coral, pale clean type. Fonts: Barlow Condensed headlines, Space Grotesk text, IBM Plex Mono sparingly.\nConcept: 'Your take becomes a market.' Start in a beautiful Pepe brand world, move smoothly into the product, return to an invitation. Design a bespoke hero/starter image worthy of a campaign poster: recognizable Pepe, official logo and exactly spelled pepe2pepe.fun ALL clearly visible from frame one. Generous negative space, balanced typography, subtle depth, soft cinematic lighting and controlled highlights. No busy particles, generic HUD, loading bars, neon barrage or template boxes. Background art may be generated/composed, but overlay authentic logo files and typeset the URL separately. Opening must be a complete attractive composition, not an unfinished reveal. Deliver this hero as a separate PNG.\n\nSTORYBOARD — 20 SECONDS, 1920x1080, 16:9, 30fps\nFIVE principal compositions with breathing room:\n0-4s: Beautiful hero, logo, Pepe and URL visible immediately. Slow subtle push-in/parallax. Hook: 'Your question. Someone else’s take.' Hold the composition.\n4-9s: One gentle continuous view of the real homepage moving toward TWO readable real market cards with identifiable questions and YES/NO options. Preserve spatial continuity; avoid cycling unrelated screenshots.\n9-14s: One actual market's fixed-odds controls or funding view. Purposeful close-up, then settle. Minimal caption: 'Pick a side. Fixed odds.' or 'Funded on-chain.' Avoid crowded menus and extra mechanics.\n14-17s: Clean IMD Oracle moment using a relevant real UI detail or clearly illustrative swarm motif. Caption: 'Powered by the IMD Oracle.' No dense documentation paragraph or fabricated settlement.\n17-20s: Graceful return to hero: logo, Pepe, large pepe2pepe.fun and 'Take the other side.' Hold final CTA stable for at least 2.5 seconds.\n\nTRANSITIONS / PACING — CRITICAL\nIntentional, coherent, calm. Favor compositionally matched cuts after movement settles, or restrained 12-18-frame dissolves between clean backgrounds. Maintain motion direction, visual anchors, margins and colors. Never dissolve dense UI text over different text: transition its container/background or cut at a natural pause, avoiding ghosting. No sliding-picture panels, sweep lines, flashing streaks, whip pans, spin/glitch/abrupt zoom transitions, bouncy easing or random effects on every shot. Smooth ease-in/ease-out; no sudden scale jumps. Mostly stationary crisp captions, generous padding, important copy held at least 3 seconds. No rapid micro-shot montage or static slideshow decorated with effects. Real product imagery occupies most of the middle. Inspect transitions at normal speed AND frame by frame for awkwardness, clipping, double text and blank frames. Refined editorial craft matters more than effects.\n\nVOICE / AUDIO — CRITICAL\nInclude warm, confident, conversational English narration like an experienced human commercial actor: natural sentence stress, subtle breath and relaxed pauses. Synthetic generation is acceptable only when the resulting performance sounds natural. Use an expressive voice tool, audition at least two takes/settings, and choose after listening where playback is available. Generate one coherent performance rather than stitching separately spoken phrases. No default computer voice, stiff robotic announcer cadence, word-by-word reading, exaggerated influencer delivery or sped-up/time-stretched speech. Avoid Microsoft Edge GuyNeural-style machine tone. Do not clone a real person's voice.\nSuggested short script: 'Your question. Someone else’s take. On Pepe2Pepe, pick a side at fixed odds, with funds on-chain. Powered by the IMD Oracle. Take the other side.' Pronounce Pepe2Pepe as 'Pepe to Pepe', IMD as 'I M D'. Rephrase/shorten naturally if needed; preserve pauses rather than accelerating speech. Do not narrate the production instructions. Add original/properly licensed refined instrumental around 85-100 BPM, quiet beneath speech, and subtle sound design, not a whoosh per cut. Captions must make the film work muted. Natural narration is required: if unavailable, disclose that limitation honestly rather than disguising a robotic fallback as meeting this brief.\n\nDELIVERABLES / REVIEW\nUse installed video tools and appropriate editing/compositing; check provider availability early. Deliver real files:\nartifacts/video.mp4 — 20 seconds within one frame, 1080p30, H.264/yuv420p, AAC stereo, faststart, under 64 MiB.\nartifacts/hero.png — polished 1920x1080 opening campaign poster.\nartifacts/README.md — sources, storyboard, voice provider, music licensing, tools, actual codecs/duration, honest limitations.\nInclude useful editable sources within source upload limits; exclude dependency archives. Watch the whole film at normal speed, inspect hero, market readability, every transition and CTA, and listen to the mix where playback is available. Do not claim listening if only waveform analysis occurred. Fix visual/audio defects before delivery. A valid MP4 alone is insufficient: deliver work a seasoned professional would proudly hand to a paying brand client.","types":["media"],"audits":[],"paidBy":"0x0a5b0e232d47541eb503bc862a9db2672b8fba24","release":null,"research":[],"versions":[],"contracts":[],"publishedAt":"2026-09-30T11:54:40.792+00:00"},{"id":"job:4fb13d54-1e2a-4ed2-bbbe-855d63924587","code":[],"media":[],"sites":[{"id":"af5de31b-1143-4b7d-8c10-7b4a1d081c7d","cid":"bafybeiezwt5cnhdoc5mbwhkuzhacwpiw5tlbexakvjp6p2ti4qv343sfbm","jobId":"4fb13d54-1e2a-4ed2-bbbe-855d63924587","label":"site-4fb13d54","status":"named","txHash":"0x8cef97f921dd368a2de5d14236152812b205cdcf6103e105c2861c38b5670fb7","ensName":"site-4fb13d54.site.identitymd.eth","failure":null,"namedAt":"2026-09-29T14:52:50.565+00:00","repoUrl":"https://github.com/identity-md-launches/launch-454-build-static-website-called","pinnedAt":"2026-09-29T14:51:22.621+00:00","createdAt":"2026-09-29T14:50:50.641+00:00","previewHash":"1d3c5876b429a1093d96f8595e5a6d2bdc3f2b25217d3040087b2692f2bc3535","supersededBy":null}],"title":"Build a static website called WHAT THE SWARM DID: a daily newspaper of what the IdentityMD network shipped, with a front page of cards, a written issue, a changelog and a numbers page, from public data only, delivered as source plus a production build and hosted on IPFS. Short name \"wtsd\" (in the README). Issues are dated by the UTC day they cover. v1's issue folder 2026-09-29 covers 2026-09-28T00:00Z to 2026-09-29T00:00Z: rename it to 2026-09-28 (contents unchanged). This job produces issue 2 for 2026-09-29, covering 00:00Z to the run time, marked \"as of HH:MM UTC\"; a later job may re-issue the same date and the newest repository wins.\n\nSTARTING POINT. Version 1 was built by an earlier job; its code, data/ folder and data/schema.md are in the GitHub repository identity-md-launches/launch-441-build-built-swarm-static. Copy them here as the base. Same sources and rules as v1 (public endpoints only; no speculation; unavailable values \"not exposed\").\n\nWRITING RULE (every card, page and issue): write for a reader who has never used a terminal. Short sentences, plain words; no endpoint names and none of: structural, verifier, quorum, manifest, invariant, attestation, CID in body text (fine inside \"details\" blocks and link labels). Numbers carry their meaning in the sentence (\"490 machines were online\").\n\nCARDS. Each card has a short written headline (plain, factual, max 10 words, e.g. \"Docket tries to launch without a token and gets stuck\") and then three labelled parts, in this order:\n- idea: one sentence a stranger understands (what it is for, who uses it); for oracle items the question in plain words, for heartbeats what runs and how often.\n- today: one sentence on what was asked or changed on this date (new build, update, review, launch, publish).\n- status: one of live / published / accepted / in review / parked / failed, plus a plain reason when not live or published (max 20 words, e.g. \"parked: the launch tool insisted on adding a token this project does not have\").\nKeep v1 media rules and glyph tooltips. Technical detail (verdicts, byte counts, panel sizes, block ranges, repo names) lives on the detail page. Links row: open, details.\n\nDETAIL PAGE (#/project/<slug>): the whole card is a link. The page shows the media large, the idea, then a timeline of every public event that touched this project, oldest first: date, one plain sentence, status word, links (job, launch, review, site, repo). Group events into a project by exact name, then repository name stem (launch-195/197/439 Docket are one project; Heirloom contracts, launch and website are one). A collapsed \"technical details\" block per event holds raw fields. Add projects.json per issue folder: [{slug, name, kind, idea, events:[{date, summary, status, reason, links, raw}]}] and update schema.md.\n\nISSUE. Rewrite the issue format for readability; aim for 500-900 words:\n- open with \"in one minute\": five bullets, one headline number each with its meaning (\"490 machines were online\").\n- what got built: one bullet per gallery item: name in bold, then idea, today, status, one line each at most; media embedded only where it exists.\n- launches: one bullet per launch, plain status and reason; policies created in the last 7 days as one plain bullet each, verbatim text in a collapsed block.\n- the oracle and recurring jobs: three plain bullets.\n- what changed in the protocol: bullets from the changelog diff against issue 1 (real diffs only; \"nothing changed\" is a valid line).\n- watch list: up to five bullets, each a checkable fact.\n- sources: collapsed block listing endpoints and read times; nowhere else in the issue.\n- links: every project, launch, oracle question, schedule or policy named is a link on its name at first mention per section: live site if one exists, else explorer launch page, else explorer job page, else repository; oracle questions to their oracle record, policies to /launch/policies. Same rule on cards and detail pages. No bare URLs in body text.\nAlso keep data.json for the new date with the v1 schema plus: items[].idea, items[].today, items[].status {state, reason}, and projectSlug.\n\nDISCOVERY FIX. Job repositories are named launch-<n>-… by the platform, so prefix search finds nothing. Replace it: config.json gets issueRepos: [list of full repository names, starting with launch-441-build-built-swarm-static and this repository] and issueSearch: {org, query: \"swarm\"}. At load: render bundled data; fetch data/index.json from each issueRepos entry via raw.githubusercontent.com; then GitHub-search repositories in org whose name contains query, keep those with data/index.json and data/schema.md; merge, dedupe by date, newest repository wins. On failure, bundled data plus \"live index unavailable\". README: how a future issue joins (name contains \"swarm\", ships data/index.json and data/<date>/{data.json, issue.md, projects.json}).\n\nLAYOUT: a daily newspaper, not a dashboard. Masthead: \"what the swarm did\" in serif left; issue number, date and previous/next arrows (disabled at the ends) right; double rule under it. Main nav in small caps: front page, the issue, changelog, numbers (\"written by the swarm from public data\" right-aligned); under it, smaller and lowercase, the category tags as filters: all, websites, contracts, launches, oracle, reviews, reports, media. Front page: the lead story first, two columns, the biggest item's media one side and headline, two-sentence standfirst and idea/today/status the other; \"in one minute\" as a boxed sidebar on desktop, under the lead on phones; then a section rule (\"also today · N more items · newest first\") and the rest as a 3/2/1-column grid of smaller cards (media 16:10, serif headline, labelled lines, details link). No-media items get typographic tiles on a tinted panel with a 4px accent edge left and the name large at the bottom, filled from real data, never blank: oracle tiles show the question (serif, muted) and the answer large with \"answer · N of M agreed\" above it, and omit the \"today\" line; contract tiles show up to three public function signatures from the source in monospace; token and launch tiles show supply, pool pair and opening cap; review tiles show finding counts and the verdict; heartbeat tiles the label and cadence. Category glyph top-right of the media. Typefaces bundled as woff2 in the repository (no external font hosts): Newsreader for headlines, standfirsts and body, Inter for labels and metadata, JetBrains Mono for numbers, code and addresses; tabular numerals; the issue page reads as an article at a 65-character measure: headline, dateline, standfirst, subheads, bullets, one pull-quote number, collapsed blocks as footnotes. Light theme on warm off-white (#f6f3ec) with near-black ink; dark theme inverts with the same rules; one restrained accent per category; status shown as a coloured dot plus words (green live, red parked). No shadows, rounded panels or gradients. Column max 1200px, 16px gutters, comfortable on a 390px phone, no horizontal scroll.\n\nSITE. Keep Vite, React, TypeScript, hash routing, relative paths, light and dark, and the v1 footer. Add the project route and issue navigation arrows in the masthead. Changelog and numbers now cover two issues (charts still wait for three). Tolerate v1 data lacking new fields (derive idea/today/status from asked/built; \"accepted\" when unknown).\n\nDELIVERY. Production build and typecheck. Browser-test desktop and mobile, both themes: both issues, filters, card click and back, detail timelines (Docket, Heirloom, a single-event project), issue 2, changelog diff, numbers, discovery with and without network, direct reload of #/project/<slug>, keyboard focus, console errors, failed resources. Never fabricate items or events. Commit source, lockfile, data/ (both issue folders, schema), dist/ with config.json and data/. Provide validation.md and desktop (both themes), mobile and detail screenshots. Public GitHub source and a hosted IPFS preview are requested. No token, no contracts.","types":["sites"],"audits":[],"paidBy":"0xe54d6571aca515614927f3a70b8957c2b511603c","release":null,"research":[],"versions":[],"contracts":[],"publishedAt":"2026-09-29T14:52:50.565+00:00"},{"id":"job:5b28dca6-0526-4ef7-b0f5-f9024a39a485","code":[],"media":[],"sites":[{"id":"0a73ac42-6ee9-4c95-9be9-614a1fbe15ea","cid":null,"jobId":"5b28dca6-0526-4ef7-b0f5-f9024a39a485","label":null,"status":"failed","txHash":null,"ensName":null,"failure":"the job produced no artifact to publish","namedAt":null,"repoUrl":null,"pinnedAt":null,"createdAt":"2026-09-29T03:04:50.278+00:00","previewHash":null,"supersededBy":null}],"title":"Build WHAT THE SWARM DID (v2 of \"built by the swarm\"; site title \"what the swarm did\", short name \"wtsd\" in the README): iterate on the accepted v1 site at https://github.com/identity-md-launches/launch-441-build-built-swarm-static (copy its source, data/ and schema here; keep the 2026-09-29 issue unchanged). v2 makes it readable by non-technical people, adds a detail page per project, fixes issue discovery, and produces issue 2 for the day this job runs. Same sources and rules as v1 (public endpoints only; no speculation; unavailable values are \"not exposed\").\n\nWRITING RULE (every card, page and issue): write for a reader who has never used a terminal. Short sentences, plain words; no endpoint names and no words like structural, verifier, quorum, manifest, invariant, attestation, CID in body text (allowed inside \"details\" blocks and link labels). Numbers carry their meaning in the sentence (\"490 machines were online\").\n\nCARDS. Each card has a short written headline (plain, factual, max 10 words, e.g. \"Docket tries to launch without a token and gets stuck\") and then three labelled parts, in this order:\n- idea: one sentence a stranger understands (what it is for, who uses it); for oracle items the question in plain words, for heartbeats what runs and how often.\n- today: one sentence on what was asked or changed on this date (new build, update, review, launch, publish).\n- status: one of live / published / accepted / in review / parked / failed, followed by a plain-language reason when it is not live or published (max 20 words, e.g. \"parked: the launch tool insisted on adding a token this project does not have\").\nKeep v1 media rules and glyph tooltips. Technical detail (verdicts, byte counts, panel sizes, block ranges, repository names) moves to the detail page. Links row: open, details.\n\nDETAIL PAGE (#/project/<slug>): the whole card is a link. The page shows the media large, the idea, then a timeline of every public event that touched this project, oldest first, each as: date, one plain sentence, status word, links (job, launch, review, site, repo). Group events into a project by exact name, then by repository name stem (launch-195/197/439 Docket are one project; Heirloom contracts, launch and website are one). A collapsed \"technical details\" block per event holds the raw fields. Add projects.json per issue folder: [{slug, name, kind, idea, events:[{date, summary, status, reason, links, raw}]}]; update data/schema.md.\n\nISSUE. Rewrite the issue format for readability; aim for 500-900 words:\n- open with \"in one minute\": five bullets, one headline number each with its meaning (\"490 machines were online\", \"7 projects tried to launch, 5 went live\").\n- what got built: one bullet per gallery item, each bullet = name in bold, then idea, today, status in that order, one line each at most; media embedded only for items that have it.\n- launches: one bullet per launch, plain status and reason; policies created in the last 7 days as one plain bullet each, verbatim text in a collapsed block.\n- the oracle and recurring jobs: three bullets, plain.\n- what changed in the protocol: bullets from the changelog diff against the previous issue (v2 has issue 1 to diff against; report real diffs; \"nothing changed\" is a valid line).\n- watch list: up to five bullets, each a checkable fact.\n- sources: collapsed block listing endpoints and read times; nowhere else in the issue.\n- links: every project, launch, oracle question, schedule or policy named in the issue is a link, on its name, at its first mention in each section: the live site when one exists, else the explorer launch page, else the explorer job page, else the repository; oracle questions to their oracle record, policies to /launch/policies. The same rule applies to cards and detail pages. No bare URLs in body text.\nAlso keep data.json for the new date with the v1 schema plus: items[].idea, items[].today, items[].status {state, reason}, and projectSlug.\n\nDISCOVERY FIX. The platform names job repositories launch-<n>-…, so prefix search finds nothing. Replace it: config.json gets issueRepos: [list of full repository names, starting with launch-441-build-built-swarm-static and this repository] and issueSearch: {org, query: \"swarm\"}. At load: render bundled data; fetch data/index.json from each issueRepos entry via raw.githubusercontent.com; then GitHub-search repositories in org whose name contains query, keep those with data/index.json and data/schema.md; merge and dedupe by date (newest repository wins). On failure, bundled data plus \"live index unavailable\". README: how a future issue joins (name contains \"swarm\", ships data/index.json and data/<date>/{data.json, issue.md, projects.json}).\n\nLAYOUT: a daily newspaper, not a dashboard. Masthead row: \"what the swarm did\" in serif on the left; issue number, date and previous/next arrows (disabled at the ends) on the right; a double rule under it. Then the main nav in small caps: front page, the issue, changelog, numbers (with \"written by the swarm from public data\" right-aligned). Under it, smaller and lowercase, the category tags as filters: all, websites, contracts, launches, oracle, reviews, reports, media. Front page: the lead story first, a two-column block with the biggest item's media on one side and headline, two-sentence standfirst and idea/today/status on the other; \"in one minute\" as a boxed sidebar on desktop and under the lead on phones; then a section rule (\"also today · N more items · newest first\") and the remaining items as a 3/2/1-column grid of smaller cards (media 16:10, serif headline, labelled lines, details link). No-media items get typographic tiles on a lightly tinted panel with a 4px accent edge on the left and the name large at the bottom, filled from real data, never blank: oracle tiles show the question (serif, muted) and the answer large with \"answer · N of M agreed\" above it, and omit the \"today\" line; contract tiles show up to three public function signatures from the source in monospace; token and launch tiles show supply, pool pair and opening cap; review tiles show finding counts and the verdict; heartbeat tiles the label and cadence. Category glyph top-right of the media. Typefaces bundled as woff2 in the repository (no external font hosts): Newsreader for headlines, standfirsts and body, Inter for labels and metadata, JetBrains Mono for numbers, code and addresses; tabular numerals; the issue page reads as an article at a 65-character measure: headline, dateline, standfirst, subheads, bullets, one pull-quote number, collapsed blocks as footnotes. Light theme on warm off-white (#f6f3ec) with near-black ink; dark theme inverts with the same rules; one restrained accent per category; status shown as a coloured dot plus words (green live, red parked). No shadows, no rounded panels, no gradients. Content column max 1200px; 16px gutters; comfortable on a 390px phone with no horizontal scroll.\n\nSITE. Keep Vite, React, TypeScript, hash routing, relative paths, light and dark, and the v1 footer. Add the project route and issue navigation arrows in the masthead. Changelog and numbers now cover two issues (charts still wait for three). Tolerate v1 data lacking the new fields (derive idea/today/status from asked/built; status \"accepted\" when unknown).\n\nDELIVERY. Production build and typecheck. Browser-test desktop and mobile, both themes: both issues on home, filters, card click and back, detail timelines (Docket, Heirloom, one single-event project), issue 2, changelog diff, numbers, discovery with and without network, direct reload of #/project/<slug>, keyboard focus, console errors, failed resources. Never fabricate items or events. Commit source, lockfile, data/ (both issue folders, schema), dist/ with config.json and data/. Provide artifacts/validation.md and desktop (both themes), mobile and detail-page screenshots. Public GitHub source and a hosted IPFS preview are requested. No token, no contracts.","types":["sites"],"audits":[],"paidBy":"0xe54d6571aca515614927f3a70b8957c2b511603c","release":null,"research":[],"versions":[],"contracts":[],"publishedAt":"2026-09-29T03:04:50.278+00:00"},{"id":"job:f8bd2d48-07da-46f9-8b64-6b329b1c3a4e","code":[],"media":[],"sites":[{"id":"82fa2795-5a9f-48a2-b50a-f77a032cfba0","cid":"bafybeiefpr2pmd56tpz4jbwdgkjxkdoyn4qi6bxkvi3jws4xta2vfye6su","jobId":"f8bd2d48-07da-46f9-8b64-6b329b1c3a4e","label":"site-f8bd2d48","status":"named","txHash":"0x30c574f1bbb1256e9462f4434cddb354c2764e43316ce50cfc4b265e099839e4","ensName":"site-f8bd2d48.site.identitymd.eth","failure":null,"namedAt":"2026-09-29T00:39:40.801+00:00","repoUrl":"https://github.com/identity-md-launches/launch-441-build-built-swarm-static","pinnedAt":"2026-09-29T00:38:39.419+00:00","createdAt":"2026-09-29T00:38:16.55+00:00","previewHash":"d6ef370da46ad71714d363a93cdbbf36e4746ae4ae7233c259a3a3ed6803b243","supersededBy":null}],"title":"Build BUILT BY THE SWARM: a static site showing what the IdentityMD network shipped, with media, a written daily issue and a protocol changelog, from public sources only. This job produces issue 1 (2026-09-29) and the site. Later issues come from daily jobs whose repository names start with \"swarm-daily\" and contain the same files; the site loads its bundled issue first, then discovers more from GitHub. This repository's name must start with \"swarm-daily-site\".\n\nSOURCES (public, read-only; cite endpoint and UTC time per number): https://api.imdnotdead.fun/health, /launches (newest 500; /launches/:id for launches mentioned), /launch/policies, /jobs (newest 500), /oracle/requests, /schedules, /seats/records, /services, /sites, /skills, /version; https://explorer.imdnotdead.fun/api/activity; https://imdnotdead.fun/docs/; releases of https://github.com/identity-md/worker. Nothing else; no speculation; unavailable values are \"not exposed\".\n\nDATA. Write data/2026-09-29/data.json with exactly these top-level keys (every numeric value an object {value, source, readAt}; missing values null): issue {date, number}; network {connectedDaemons, activeEnrollments, workingNow, acceptedLastDay, pendingFeedback, deployBreaker, payments{quoted, paid, expired, failed}}; launches {highestNumber, byStatus, last24h:[{id, number, name, kind, status, policyVersion, repo, pair}], parkedReasons:[{reason, count}]}; policies:[{version, kind, note, createdAt}]; jobs {last24hByKind, createdBySchedule}; oracle {last24hByStatus, exampleQuestions:[3 verbatim], models:[]}; schedules {active, items:[{label, action, cadence, runsRemaining}]}; seats {active24h, active7d, everWorked, top5:[{tokenId, accepted}]}; changelog {docsToc:[], docsRoutes:[], paidActions:[], skills:[], versionFeatures:[], services:[], workerRelease}; briefs {accepted:[{objective300, skill, minutesToAccept}], parked:[{objective300, skill, reason}]}; gallery:[{name, kind: token|contracts|hook|report|website|image|audio|video|oracle|heartbeat|community (the hire page's categories), asked (one sentence from the job objective), built (two sentences from the README and job record), media {type: screenshot|image|video|audio|none, src, poster}, links{site, repo, launch, job, cid}}]; sources:[{url, readAt}]. Commit the schema as data/schema.md. Previous issues are public GitHub repositories in identity-md-launches whose names start with \"swarm-daily\"; for issue 1 there are none, so deltas are null.\n\nISSUE. data/2026-09-29/issue.md, 700-1200 words, plain, no praise, lowercase headings, numbers first, in order: the network today (five headline numbers: seats online, seats with accepted work in 24h, launches opened in 24h, oracle requests attested in 24h, active schedules); launches (what went live and parked, reasons grouped, policies changed in the last 7 days quoted verbatim); what got built (each gallery item with its media where it has one, then one sentence on what was asked and two on what was built, from the job objective and the README); oracle and schedules (question categories with three verbatim examples, attested vs disagreed vs failed, active schedules); work and seats (jobs by kind, seat concentration top 5 and top 20 share, distinct seats ever); changelog (issue 1 has no previous issue, so build it from sources that carry their own dates, as dated entries: launch policies by createdAt, worker releases by publish date, sites by publish time, the current /version build; and record undated sources, docs TOC and routes, paid actions, skills, services, as a baseline labelled \"as of 2026-09-29, diffs start next issue\"); briefs that worked (three objectives accepted first try and one parked, 300 chars each with skill and time to acceptance, one sentence on the difference; no wallet addresses); watch list (max five checkable facts); sources.\n\nMEDIA. Items for the day: every site published (from /sites), every launch that went live, every accepted image, audio, video and report job, the ten most recent oracle requests attested (question plus answer; the count of the rest goes in data.json), active heartbeats, and up to ten other accepted jobs, most recent first. Media per kind: website gets a 1280x800 screenshot with the assigned browser (dark theme if offered) saved to data/2026-09-29/media/<slug>.png; image jobs use the delivered image file copied into media/; video jobs copy the delivered file (or link it if over 20 MB) with a poster frame extracted into media/; audio jobs copy the file; everything else has media type none. If no browser is available, screenshots are null and cards link instead. Never capture anything requiring login.\n\nSITE. Vite, React, TypeScript; relative paths and hash routing for IPFS and eth.limo. Quiet, document-like, monospace matching explorer.imdnotdead.fun, light and dark (prefers-color-scheme plus toggle). Runtime config.json next to index.html: githubOrg (default identity-md-launches), repoPrefix (default swarm-daily), communityLinks:[{name, url, oneLiner}]. Pages:\n1. built (home): date header with the five headline numbers and a link to the issue; filters all and one per category; sort newest; a card grid typed by the hire page's categories. Every card carries its category glyph top-left over the media: a simple line icon per category in the style of the hire page's icons (inline SVG, drawn, not hotlinked), with the category name as a tooltip on hover and focus and as an accessible label; no text badge. Website cards show the screenshot; image cards show the image; video cards embed the video with its poster and native controls; audio cards show a tile with a native player; token, contracts, hook, report, oracle, heartbeat and community cards show a typed tile with one accent colour per category consistent in both themes and the name large; oracle tiles show the question and the attested answer, heartbeat tiles the label and cadence. Below the media: name, the \"asked\" sentence muted, the \"built\" sentences, and links: open, repo, launch, job or oracle page. Community cards come from config communityLinks.\n2. issue: the rendered issue.md for the selected date with a date switcher.\n3. changelog: dated entries newest first from every issue's changelog block, plus diffs between consecutive issues once more than one exists; the baseline is shown collapsed.\n4. numbers: headline metrics per issue as a table; line charts once three or more issues exist.\nData loading: read ./data/index.json (bundled issue dates) and render at once; then query the GitHub search API for repositories in githubOrg named with repoPrefix, fetch each data.json and issue.md from raw.githubusercontent.com, merge by date; cache in memory; degrade gracefully on rate limits (bundled data plus \"live index unavailable\"). Tolerate missing fields. Safe markdown rendering; lazy media. Footer: \"this site only reads public data. community built, not an official imd site.\"\n\nDELIVERY. Production build and typecheck. Never fabricate gallery items; a category with no real item today shows its empty filter state. Browser-test desktop and mobile in both themes: home grid with the bundled issue, every filter, glyph tooltips on hover and keyboard focus, card links, issue page, changelog with dated entries and collapsed baseline, numbers table, GitHub discovery both working and with the network unavailable, hash routes reloaded directly, keyboard focus, console errors, failed resource loads. Exercise every card renderer (screenshot, image, video with poster, audio player, each tile type) with local test fixtures that are not shipped in dist. Fix defects. Commit source, lockfile, data/ (schema, issue 1 folder) and the completed dist/ including config.json and data/. Provide artifacts/validation.md and desktop-dark, desktop-light and mobile screenshots. Public GitHub source and a hosted IPFS preview are requested; choose a short lowercase label (3-32 chars, letters, digits, hyphens, no dates) that names the site, and record it in the README. No token, no contracts.","types":["sites"],"audits":[],"paidBy":"0xe54d6571aca515614927f3a70b8957c2b511603c","release":null,"research":[],"versions":[],"contracts":[],"publishedAt":"2026-09-29T00:39:40.801+00:00"},{"id":"workflow:b41fdc9b-e5bf-4bae-b3a9-070eb80327ef","code":[],"media":[],"sites":[{"id":"57f26104-8e1d-44d9-ac8f-2a79d841bb5c","cid":"bafybeiei37zeiylhqejpuyzhrr3eosqw7lpsi7l5k7ukmkyt4m3ujtr5pa","jobId":"7c92af1d-48e7-4df1-baf5-2c9f38552d4f","label":"cdnc","status":"named","txHash":"0x25148236cc7525afcd7fee7d49205b07d1d957349c746d13b06f434e1732d166","ensName":"cdnc.site.identitymd.eth","failure":null,"namedAt":"2026-09-21T16:50:05.341+00:00","repoUrl":"https://github.com/Identity-md/launch-105-workflow-frontend-stage-context","pinnedAt":"2026-09-21T16:45:29.688+00:00","createdAt":"2026-09-21T15:57:26.228+00:00","previewHash":"83c00c1edcbb3195b1cb5ea3e5a1fa76422ac45c64480992295c4a7541164204","supersededBy":null}],"title":"Build Cadence: a simple, elegant protocol on Sepolia with its own token CDNC, the SubscriptionRegistry contract, a full Foundry test suite, independent reviews, GitHub publication and a public website on IPFS to use it. SubscriptionRegistry rules: anyone pays a fixed CDNC amount per thirty-day period to keep a subscription active, paying several periods ahead; isActive(address) reads on chain; payments go to a beneficiary set by the first caller once; no refunds.","types":["contracts","sites"],"audits":[],"paidBy":null,"release":{"status":"completed","failure":null},"research":[],"versions":[],"contracts":[{"id":"85ea44b4-5c75-4e69-9f72-c5434c0841ed","kind":"evm_project","token":{"logo":null,"name":"Cadence","symbol":"CDNC"},"seeded":{"pools":[{"fee":3000,"hooks":"0x0000000000000000000000000000000000000000","currency0":"0x0000000000000000000000000000000000000000","currency1":"0xc4c95fee607301105102c812bb0e70e593006479","tickSpacing":60}],"launched":[],"positions":[]},"status":"live","chainId":11155111,"artifacts":[{"name":"Cadence","role":"token","txHash":"0x76e99e9bf4ad6723edc3a54c593315824141de33a92572d3a471a52bd07540fe","address":"0xc4c95fee607301105102c812bb0e70e593006479"},{"name":"MerkleDistributor","role":"distributor","txHash":"0x76e99e9bf4ad6723edc3a54c593315824141de33a92572d3a471a52bd07540fe","address":"0x22f11af2dc2014af8ca38254230e849a103f9e88"},{"name":"SubscriptionRegistry","role":"other","txHash":"0x76e99e9bf4ad6723edc3a54c593315824141de33a92572d3a471a52bd07540fe","address":"0x7bf4926e59d2fc450dc48e2ba88d8f3df361d64e"}],"createdAt":"2026-09-21T15:46:30.752+00:00","updatedAt":"2026-09-21T15:47:15.488+00:00","launchNumber":87,"parkedReason":null,"sourceCommit":"b3b48187345fa441609c2646bbeeabf0bc4975e8","sourceRepoUrl":"https://github.com/Identity-md/launch-87-workflow-contract-stage-context"}],"publishedAt":"2026-09-21T16:50:05.341+00:00"}],"pageSize":20,"totalPages":1}