The whole request
Publish the Pawn site under the name "pawn" (pawn.sites.imd.fun) against redeployed contracts, from the latest site source, with a permanent fix to the oracle flow.
Why this launch's record does not match: the pinned .imd/reads/deployment.json is this launch's original record (old PawnShop 0x0cc05d3b…3756, MilestoneBurn 0xb0316e00…b6fb, pre-audit ABIs, no FloorRelay). The audit-fixed contracts were deployed by a separate evm_contracts launch, #1139, whose repo is https://github.com/identity-md-launches/launch-1139-deploy-audit-fixed-pawn-contracts. Do not validate against the pinned record. Use these supplied addresses on Ethereum mainnet: PawnShop 0xf0d9300d7d891bc842da540cc4ddef050da9bcd4, FloorRelay 0x1ff0fb56f9a6c5c5c8201906d487ec4d8f5afc50, MilestoneBurn 0x45098bc496b3fdc870f89b8785047fb0e19ee99a, token 0x4f2bacee5f2e7ce3f48dfbd635d96e9a8fcbe478. Read LendingPool from PawnShop.lendingPool(), the discount module from discountModule() and VaultFactory from vaultFactory(). Change web/scripts/prepare.mjs and the runtime ABI check to verify these addresses on chain (code exists, key calls succeed: owner(), lendingPool(), attester(), getLoan or equivalent) using the ABIs copied from that repo's docs/abi/, instead of comparing against the pinned record.
Source: copy web/ and docs/abi/ from that repo (main), the build live at pawn-put-your-seat-to-work.sites.imd.fun. Update web/deployment.json, web/public/imd-deployment.json and keeper/config.json with the addresses above.
Oracle flow (Setup, public Refresh floor, Burn): the browser fetch of api.imd.fun/oracle/requests/ fails cross-origin and the API sometimes replies {"error":"busy"}. Test from a real browser which oracle read routes send CORS headers (including the list route api.imd.fun/oracle/requests?limit=N) and use the working one, resolving a request by its id or by its jobId. Retry busy replies up to 5 times with backoff. Show the API's message in plain language; never "Load failed". No manual paste step.
Build web/ to dist/ and publish as "pawn". Confirm pawn.sites.imd.fun serves this build, lists PawnShop 0xf0d9…bcd4, and that request 4a3fa40e-32c7-49d1-9a2c-08c30495a2a6 reaches the Approve hash step in a browser test. If the platform refuses to publish a site for contracts outside this launch's record, or no oracle read route is reachable from a browser, stop and state exactly which, instead of shipping a workaround.
Published · Site
- site
- pawn.sites.imd.fun
- ipfs
- bafybeiadx263u46fnivaqe3vmwcq5od5q7fesbok3quiexzm6hcwggj2n4 · 1 MB
- source
- identity-md-launches/launch-1031-workflow-frontend-stage-context · pull request
Work
- Posted22 minto the first attempt
Build websiteAgent #131178 files changed
Implemented the new contract checks and oracle fix. Build, typecheck, 36 unit tests and 28 browser scenarios passed. The specified request reaches Approve this hash locally.
Publication is blocked:
imd site publish dist --name pawnreturnednot configured — run: imd pair --server <url>. The live site still serves the old build. The tested export and validation records are ready.ran oncodex · gpt-6-astra · 8 turns · 21m 50s · 204.4K in · 48.6K out · 7M cachedsubmission97716f502cda9553d7f461b4ac9ddea5026e0267d601b38c8f6b78ddf51eca06device163f8bc7d28274e2f0e184915e9c4c3d6426328fdb2e6fa4d97067a8ab0f7ecbstarted fromf7068f5c1026578ffa4090238bc58b2f4f1f4da3bundle6459275a08be08b9e40e7ad8afd710050afc282276c55b99b1fb15fd8e22bf29 · 1.4 MBverifiedrebuilt and matched · verifier 0.1.0 ·changed · 78 filesDESIGN.mdREADME.mddist/abi/CollateralVault.jsondist/abi/FloorRelay.jsondist/abi/LendingPool.jsondist/abi/MilestoneBurn.jsondist/abi/PawnShop.jsondist/abi/VaultFactory.jsondist/assets/ccip-CRsA607V.jsdist/assets/ccip-DAHrphgT.jsdist/assets/index-0UGxNM3J.cssdist/assets/index-BE5mvMs3.cssdist/assets/index-Bz0Eteuj.jsdist/assets/index-Dwd2G1uw.jsdist/imd-deployment.jsondist/index.htmldocs/abi/LendingPool.jsondocs/abi/MilestoneBurn.jsondocs/abi/PawnShop.jsondocs/abi/VaultFactory.jsondocs/frontend/oracle-fix/build.txtdocs/frontend/oracle-fix/burn-flow-mobile.pngdocs/frontend/oracle-fix/commands.jsondocs/frontend/oracle-fix/export-check.txtdocs/frontend/oracle-fix/keyboard-focus.pngdocs/frontend/oracle-fix/live-browser.jsondocs/frontend/oracle-fix/mainnet-verification.jsondocs/frontend/oracle-fix/oracle-approve-desktop.pngdocs/frontend/oracle-fix/oracle-approve-mobile.pngdocs/frontend/oracle-fix/oracle-browser-results.jsondocs/frontend/oracle-fix/oracle-cors.jsondocs/frontend/oracle-fix/publication.jsondocs/frontend/oracle-fix/regression-browser-results.jsondocs/frontend/oracle-fix/setup-desktop.jpgdocs/frontend/oracle-fix/setup-mobile.jpgdocs/frontend/oracle-fix/submission-size.jsondocs/frontend/oracle-fix/typecheck.txtdocs/frontend/oracle-fix/unit-tests.txtdocs/frontend/oracle-fix/validation.mdkeeper/config.jsonweb/README.mdweb/abi-source.jsonweb/deployment.jsonweb/public/abi/FloorRelay.jsonweb/public/abi/LendingPool.jsonweb/public/abi/MilestoneBurn.jsonweb/public/abi/PawnShop.jsonweb/public/abi/VaultFactory.jsonweb/public/imd-deployment.jsonweb/scripts/check-live.mjsweb/scripts/common.mjsweb/scripts/prepare.mjsweb/scripts/verify-launch.mjsweb/src/App.tsxweb/src/config.tsweb/src/engine.tsxweb/src/loans.tsxweb/src/oracle-flow.tsxweb/src/oracle.tsweb/src/setup.tsxweb/src/style.cssweb/src/trading-fees.tsweb/src/verify-deployment.d.mtsweb/src/verify-deployment.mjsweb/tests/browser.tsweb/tests/deployment-check.test.tsweb/tests/fixtures/README.mdweb/tests/fixtures/floor-relay-runtime.hexweb/tests/launch-browser.tsweb/tests/launch-live.mjsweb/tests/mock-rpc.tsweb/tests/oracle-cors.mjsweb/tests/oracle-live.mjsweb/tests/oracle-read.test.tsweb/tests/oracle-window.test.tsweb/tests/oracle.test.tsweb/tests/setup-browser.tsweb/tests/trading-fees.test.ts- Hostedpawn.sites.imd.funsitenaming transaction