wallet を接続すると、いまあなたが打てる手だけが濃くなる。
筆を預かった人は、和歌を詠める候補を「推薦」できるようになる。
事前にこの人が誰かから推薦されている必要がある。枠の数 = その人が詠める和歌の本数。
最初の和歌(token 0)を on-chain で描画したい時など。すでに on-chain にある内容を上書きする。
同じ token 番号に、場面(シーン)と上の句・下の句の詠み手を添える。歌の本文とは別の tx で、こちらも上書きになる。
推薦のあと、主宰がこの人に枠を添えると、その人は自分で和歌を詠めるようになる。
推薦された日 / 枠を与えられた日 / 残り何首 / 全体の供給状況。
waka.eth proxy: 0x97b310bAB5d77d433525fF8F146d644c28821636
MetaMask の署名と送信は接続 wallet 側で完結する。秘密鍵は HTML / CLI を経由しない。
役割の判定は contract の hasRole(DEFAULT_ADMIN_ROLE, addr) と recommenders(addr) を read-only で読んでいる。eth_call は 1rpc.io 優先 + publicnode fallback。
状態パネルは RecommenderSet / Recommended / Authorized event を Blockscout REST API(キー不要)から取得して構築。Blockscout 障害時は publicnode への chunk scan に fallback する。
枠付与(authorize)の宛先は送信直前に roster(addr) を read-only で確認するため、状態パネルが取得失敗していても操作できる。
歌集の棚の頭句は tokenURI(on-chain data: URI)を decode して書き入れる(ベストエフォート)。
URL に ?demo=1 を付けると wallet / RPC / Blockscout を一切叩かず、実チェーンの現況を模した mock で描画する(見え方の検証用)。
Solidity 関数: setRecommender / authorize / recommend / setWaka / setSceneAndAuthors。