Lexicon is a GenLayer registry for definitions, citations, revisions, moderation, semantic conflict checks and appeals.
This repository is a public proof package: it includes the product UI, the deployed GenLayer Studionet contract source, deployment metadata, finalized smoke transactions, and test evidence. Local wallet secrets are not included.
A governed registry of terms/definitions/entries moderated by consensus. The registry has a public 'code' (editorial standard); each entry is reviewed by GenLayer against the code and its cited public sources - compliant + well-cited entries are published, conflicting/unsupported ones rejected, and semantic conflicts flagged. Entries are disputable (challenge) and appealable, with contributor reputation + audit trail.
The frontend keeps the original product experience, while the contract adds a reviewable on-chain lifecycle: source records, GenLayer reasoning, challenge and appeal paths, indexed reads, and an audit trail that can be inspected after deployment.
| Area | Detail |
|---|---|
| Contract | contracts/lexicon_v2.py |
| Size | 37497 bytes |
| Network | GenLayer Studionet, chain id 61999 |
| Write methods | 15 |
| Read methods | 22 |
| GenLayer features | live web rendering, LLM execution, validator-comparative consensus |
| Deployment wallet | 0xD63B44f1248AC167B52ED3D7CA7670d3Ea280197 |
| Contract address | 0xBDa72fA79808d9221bA33D7223E9d1a5187E60A7 |
Architecture note:
LexiconRegistry V2 (# v0.2.16), 37497 bytes, 15 write + 22 view. Objects: Entry, Citation, Revision, Challenge, Appeal + Reputation + AuditEntry + a governing
codestring. Lifecycle DRAFT->OPEN->UNDER_REVIEW->REVIEWED->CHALLENGE_WINDOW->APPEALED->FINALIZED->ARCHIVED. DynArray[str] stores + TreeMap status/author indexes + reputation + recent ids + clock. GenLayer nondet (web.render + exec_prompt in eq_principle.prompt_comparative) for code-compliance moderation + per-citation credibility + semantic-conflict detection + challenge/appeal rulings; strict-JSON + prompt-injection guards + INVALID_REASONING_JSON fallback. Backward-compat wrappers get_code/set_code/submit_post/moderate/get_post/get_post_count keep the original frontend working.
Core smoke flow:
set_code
-> create_entry
-> add_citation
-> add_revision
-> open_review
-> moderate_with_genlayer
-> open_challenge_window
-> submit_challenge
-> resolve_challenge
-> finalize_entry
-> archive_entry
-> recalculate_reputation
Test result:
Schema valid
12 smoke writes finalized
27/27
Static frontend bundled for standalone Vercel deployment
Lexicon ships as a standalone static app:
- wallet connection through the bundled browser client
- GenLayer reads through
genlayer-js - writes routed through the connected EVM wallet
- bundled
shared/client files keep the Vercel deployment self-contained - deployed contract address pinned in
app.jsanddeployment.json
From this repository folder:
python -m http.server 8080Open:
http://localhost:8080/
npx --yes vercel@latest --prod --yesThis public repository intentionally excludes local secrets:
- no private keys
- no vault files
- no
.envfiles - no
.vercelproject state - no local dashboard data
Public files include frontend code, contract source, deployment metadata, tests, and non-sensitive proof links.