AGI Club GitHub Pages Access Architecture
Direct ownership rule
- Unwrapped name:
ENS Registry owner(namehash) == connected wallet. - Wrapped name: Registry owner equals a recognized official ENS Name Wrapper;
ownerOf(namehash)andgetData(namehash).ownerboth equal the connected wallet; any reported expiry is still in the future. - Recognized wrapper in this release: the official ENS Name Wrapper deployment on Ethereum Mainnet at
0xD4416b13d2b3a9aBae7AcD5D6C2BbDBE25686401. Non-mainnet and unrecognized wrapper addresses are rejected.
Rejected authority
Token approval, isApprovedForAll, resolver control, manager rights, delegation, custody assertions, screenshots, off-chain claims, nested subdomains and previous ownership are not accepted.
Revalidation
The institution rechecks current ownership at session restoration, every five minutes, when the tab or window regains focus and before owner-center exports. Account change, network change, disconnect, transfer, expiry, session expiry or an uncertain ownership read relocks the application.
Receipt
The browser creates a downloadable signed receipt containing the exact name, wallet, ENS node, ownership mode, recognized wrapper, verification block, timestamps, signature, canonical deployment and an explicit statement that the control is client-side and non-confidential.
Data posture
No access proof is sent to GoalOS or MONTREAL.AI by this static application. Session evidence is stored in sessionStorage and disappears when the browser session closes. GitHub may process ordinary hosting telemetry under its own policies.