Skip to content

Makalu extra-works: bridge UI, DNNS search, lithc toolchain, faucet fix - #30

Merged
bachal-mb merged 6 commits into
mainfrom
feat/makalu-extra-works
Jun 22, 2026
Merged

Makalu extra-works: bridge UI, DNNS search, lithc toolchain, faucet fix#30
bachal-mb merged 6 commits into
mainfrom
feat/makalu-extra-works

Conversation

@bachal-mb

Copy link
Copy Markdown
Collaborator

Implements the actionable parts of the Makalu "extra works" backlog. Each stream was built and verified independently; specs for the integrations came from the lithosphere-dev-infra source-of-truth.

What's included

Stream 1 — LEP100 faucet (fix(tokens))
Faucet was already live; verified on-chain and fixed an FGPT↔MUSA token-metadata address swap (indexer SEEDED_TOKENS + both SQL seeds). DB self-corrects on next indexer deploy.

Stream 2 — MultX bridge UI (feat(bridge))
Makalu↔Kamet bridge page in the explorer (ethers v6 lock/claim against the deployed MultXBridge 0x5832…096a6), a same-origin /api/bridge/* proxy to bridge.litho.ai (mirrors the faucet proxy, avoids CORS), lib/bridge.ts client, and a Bridge nav link. Addresses cross-checked against the official @litho/multx-sdk v0.2.0 presets (exact match). Kept native ethers v6 (the SDK is v5) by decision.

Stream 4 — DNNS name resolution (feat(dnns))
lib/dnns.ts resolves .litho names via the Kamet DNNS registry (ENS fork, read-only ethers v6); the global search routes a resolved name to its address page.

Stream 7 — lithc toolchain (feat(toolchain))
New toolchain/ Rust workspace (std-only): lithic-syntax (lexer/parser/AST), real lithc/lithfmt/lithlint, and spec-only stubs lithls/lithdev/lithtest/lithsec/lithpkg. Golden tests parse the real .lithic examples.

Stream 3 — Thanos (docs(wallet)): comment-only status (not in the WalletConnect registry yet; injected/EIP-6963 already works).

Plus docs/makalu-extra-works-dependency-requests.md — forwardable spec asks for the still-blocked streams.

Verification

  • Makalu/api and Makalu/explorer tsc --noEmit clean for all new files (only a pre-existing unrelated build-info.test.ts issue remains).
  • Toolchain cargo test green incl. golden tests vs the real .lithic contracts (Windows: use the GNU toolchain — no MSVC linker).
  • Bridge ABI + DNNS resolution verified against the live chains; bridge API confirmed live.

Not in scope / still blocked

🤖 Generated with Claude Code

bachal-abro added 6 commits June 21, 2026 22:47
The explorer/indexer labeled two LEP100 token contracts with each other's
name/symbol. On-chain truth (chain 700777): 0xDB829be...1c5D is Mansa AI/MUSA
and 0x151ef36...D22e is FurGPT/FGPT. The indexer's seedTokenContracts() upserts
name/symbol ON CONFLICT DO UPDATE on every startup, so it was authoritatively
mislabeling these in the contracts table. The faucet env (FAUCET_TOKEN_ASSETS)
was already correct, so drips were unaffected; this fixes explorer display only.

Corrected in indexer SEEDED_TOKENS, init.sql, and seed-lep100-tokens.sql; the
DB self-corrects on the next indexer deploy.
New toolchain/ Cargo workspace (std-only) for the Lithic smart-contract
language: lithic-syntax (lexer/parser/AST), real lithc (parse + emit
summary/ast/abi), lithfmt (whitespace v0), lithlint (naming + @ai_budget
rules), and spec-only stubs lithls/lithdev/lithtest/lithsec/lithpkg.
Golden tests parse the real DOGE.lithic / FinesseWarriors.lithic examples.
Adds a Makalu<->Kamet bridge page to the explorer (ethers v6 lock/claim via
the deployed MultXBridge 0x5832...096a6), a same-origin /api/bridge/* proxy to
bridge.litho.ai (avoids CORS, mirrors the faucet proxy), a lib/bridge.ts client,
and a Bridge nav link. Addresses cross-checked against @litho/multx-sdk presets.
lib/dnns.ts resolves DNNS (.litho) names via the Kamet registry (ENS fork,
read-only ethers v6); SearchBar routes a resolved name to its address page.
Thanos is not in the WalletConnect registry (verified 0 listings 2026-06-22),
so there is no ID to feature yet; an EIP-6963 Thanos extension already surfaces
via the existing injected config. Comment-only.
Forwardable spec asks for the bridge/wallet/DNNS/Quantt/validator teams.

function BridgeContent() {
const { open } = useWeb3Modal();
const { address, isConnected, chainId } = useWeb3ModalAccount();
@github-actions

Copy link
Copy Markdown

Test Results

Package Passed Failed Skipped Total Duration
api 150 0 0 150 -1782123926.2s
indexer 41 0 0 41 -1782123926.2s
explorer no results

Coverage

Package Stmts % Branch % Funcs % Lines %
api 54.89 57.81 77.9 54.89
indexer 36.73 74.75 29.16 36.73
explorer no coverage

Generated by ci.yaml for e77ab2c3f9cd9574f837cf34afef7ad0546d3d82. Test JSON + coverage HTML are uploaded as run artifacts.

@bachal-mb
bachal-mb merged commit 131e2fd into main Jun 22, 2026
13 of 15 checks passed
@bachal-mb
bachal-mb deleted the feat/makalu-extra-works branch June 22, 2026 10:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants