Skip to content

docs(tri): mark pre-2026-09-24 token artefacts superseded by mint-on-acceptance - #1200

Merged
gHashTag merged 1 commit into
mainfrom
docs/tri-superseded-artefacts
Oct 2, 2026
Merged

gHashTag merged 1 commit into
mainfrom
docs/tri-superseded-artefacts

Conversation

@gHashTag

@gHashTag gHashTag commented Oct 1, 2026 •

Copy link
Copy Markdown
Owner

Why

The $TRI design of record is gHashTag/trinity-fpga @ d7e9718e9 (2026-09-24):

In that design, 100% of TRI is minted on accepted work, with genesis supply 0 and no pre-mine, allocation or sale. The cap is 3^21 = 10,460,353,203 TRI. The chains of record are TON and Solana, as one bridged supply. Trust moves from an M-of-N attestor quorum (V1) to an optimistic challenge (V2) and then a zk receipt (V3). Nothing is deployed.

Several artefacts in this repo still describe the older allocation/sale model and contradict that design. This PR marks them; it does not delete them. No historical Solidity or spec logic changes; every change is a comment, banner, or published copy.

What changes

File Change
deploy/contracts/src/TrinityToken.sol Header comment only, between the SPDX line and pragma: SUPERSEDED / DO NOT DEPLOY, with the source and the on-chain finding below. No code changed.
deploy/contracts/README.md Superseded note at the top. The tokenomics heading now says it is superseded.
apps/website/messages/{en,ru,de,es,zh}.json phoenixNumber.distribution: the old 40/20/15/15/10 split (including a "Public Sale 15%" row) is replaced by three rows: mined by accepted work 100%, pre-mine/founder/team 0%, sale/treasury/liquidity 0%. Title, cap line and CTA (now the trinity-fpga tokenomics doc) updated in all five languages. A script checked that no other keys changed.
apps/website/src/components/ProductionDashboard.tsx (/dashboard) The 40/20/20/10/10 allocation and the hard-coded "Ethereum Sepolia" are replaced by 100% mined / 0 pre-mine / 0 sale and "TON + Solana · not deployed", in EN and RU, with a source comment. Staking tiers are unchanged.
apps/website/src/data/blog/bodies/tri-mined-not-sold.ts Removed the "10 Billion Token Twin Experiment: FP vs Ternary 100M" section (EN and RU). It reports an ML training run (pair_fp vs pair_tern, val BPB 0.4217 / 0.4722) and has nothing to do with the token post it was pasted into. Nothing else in the repo publishes those numbers. They remain in git history at afc9d38; if they should be public, they belong in their own post.
specs/tri27/token_types.tri, staking.tri, reward_distribution.tri # superseded header. Each also names its own contradiction: MAX_SUPPLY 270M; emission per second of time; the 60/30/10 split from #547 (d3d6bc7).
deploy/trinity-nexus/docs/research/SUPERSEDED.md (new) Index of the SAFT, sale and allocation research documents, explaining why each is superseded.
deploy/trinity-nexus/docs/research/{SAFT_AGREEMENT,SALE_PREP_REPORT,SALE_EXECUTION_REPORT,TOKENOMICS,3M_STRATEGY,BUSINESS_MODEL,INVESTOR_OUTREACH}.md One-line banner pointing to SUPERSEDED.md.
docs/docs/depin/tokenomics.md :::danger superseded admonition. This page was the website CTA target and still lists Founder 20%.

SUPERSEDED.md was added with git add -f, because the repo-wide *.md rule in .gitignore (line 315) ignores new markdown under that path.

Finding: the Sepolia contract can never reach its stated allocation (80% unmintable, not 70%)

TrinityToken's constructor calls _setupVesting four times. Both deploy scripts (deploy/contracts/script/Deploy.s.sol and deploy/contracts/scripts/deploy.js) fall back to the deployer when an allocation address is unset, so all four calls target the same beneficiary. Each call overwrites the per-beneficiary vesting mappings, so only the last one (treasury, 10%, 60 months, 6-month cliff) survives.

As a result:

  • 10% liquidity is minted at construction.
  • 10% (treasury) can vest.
  • 80% (founder 20 + node 40 + community 20) can never be minted.

Checked against Sepolia 0xef368e29FA3aB2eaf02BccD05438ED3bafE9f469 by eth_call on 2026-10-01:

  • totalSupply() = totalVested(0xb7183E9D4176F3Fa6F56190d677626a9c87a9f87) = 1,046,035,320.3 TRI (10% of the cap)
  • vestingDuration = 155,520,000 s (60 months)
  • cliffDuration = 15,552,000 s
  • claimed = 0

The contract is kept as history and the header says so. Nothing is redeployed or changed on chain.

Out of scope (not touched)

  • The MarketplaceSection φ-deflation epoch table is API-fed and does not state an allocation.
  • Company-equity copy (founder ownership, $3M for 1%) is about equity, not TRI.
  • PhoenixNumberSection is not imported anywhere, but its i18n strings ship, so they were corrected.
  • The specs/tri27 CLI/FFI interface files (claim_cli, staking_cli, token_cli, token_ffi) carry no tokenomics numbers.
  • gHashTag/trinity-contracts (Base L2) is a separate repo and needs its own follow-up.

Verification

  • apps/website: tsc -b gives 179 errors, equal to typecheck-baseline.json (179) file by file, so typecheck:ratchet holds. The changed files (ProductionDashboard.tsx, tri-mined-not-sold.ts) have 0 errors.
  • git diff shows only comments, copy and markdown in .sol/.tri.

Do not merge without review. This is Phase 0 docs cleanup, opened as a PR on purpose.

🤖 Generated with Claude Code

{
  "version": 1,
  "head_sha": "7c8b7fa984329289182df12b0a2e2b95a09188cd",
  "summary": "Artefacts that still describe the older TRI allocation and sale model are marked superseded by the mint-on-acceptance design in gHashTag/trinity-fpga at d7e9718e9; site copy is corrected, and no Solidity or spec logic changes.",
  "changes": [
    "TrinityToken.sol gets a SUPERSEDED / DO NOT DEPLOY header comment only, and deploy/contracts/README.md gets a superseded note.",
    "phoenixNumber.distribution in the five website message files and the /dashboard ProductionDashboard.tsx replace the old allocation with 100 percent mined, 0 pre-mine and 0 sale, and drop the hard-coded Ethereum Sepolia.",
    "The unrelated FP versus ternary twin experiment section is removed from the tri-mined-not-sold blog body in English and Russian.",
    "specs/tri27 token_types, staking and reward_distribution get superseded headers naming their own contradiction.",
    "A new deploy/trinity-nexus/docs/research/SUPERSEDED.md indexes the SAFT, sale and allocation documents, each of which gets a one-line banner; docs/docs/depin/tokenomics.md gets a superseded admonition."
  ],
  "tests": [
    {
      "command": "tsc -b in apps/website against typecheck-baseline.json",
      "result": "Author reports 179 errors equal to the baseline file by file, and zero errors in the two changed TypeScript files.",
      "status": "passed",
      "evidence": "Author-reported in the Verification section of this PR body; not rerun for this report."
    },
    {
      "command": "Website checks workflow, job checks, on head 7c8b7fa9",
      "result": "The job completed successfully on the PR head commit.",
      "status": "passed",
      "evidence": "https://github.com/gHashTag/trinity/actions/runs/36847402223"
    },
    {
      "command": "lint-specs workflow on head 7c8b7fa9",
      "result": "The lint-specs job failed on the PR head commit; whether the failure predates this PR was not determined.",
      "status": "failed",
      "evidence": "https://github.com/gHashTag/trinity/actions/runs/36847402312"
    },
    {
      "command": "Documentation checks on head 7c8b7fa9",
      "result": "Check Documentation Links and Documentation Consistency failed on the PR head commit; cause not determined for this report.",
      "status": "failed",
      "evidence": "https://github.com/gHashTag/trinity/actions/runs/36847402148"
    }
  ],
  "limitations": [
    "The Sepolia finding (80 percent of the stated allocation unmintable) comes from the author's eth_call reads on 2026-10-01 and was not repeated for this report.",
    "gHashTag/trinity-contracts on Base L2 is a separate repository and still needs its own follow-up.",
    "The author asks that this not be merged without review."
  ],
  "tags": [
    "TRI",
    "tokenomics",
    "docs"
  ],
  "blog": {
    "title": "Marking the old TRI sale model as superseded",
    "summary": "The repository still published an allocation and sale model that contradicts the mint-on-acceptance design; the artefacts are now marked rather than deleted, and the site copy is corrected.",
    "outline": [
      "The design of record mints all TRI on accepted work with zero genesis supply and no pre-mine or sale, yet several files still described a percentage allocation and a public sale.",
      "Each contradicting artefact gets a banner or header pointing at the design of record, and the website copy and dashboard now show one hundred percent mined and nothing sold.",
      "The author also records that the Sepolia contract can never mint eighty percent of its stated allocation, because four vesting calls overwrite each other on one beneficiary."
    ]
  }
}

…acceptance

The design of record is gHashTag/trinity-fpga @ d7e9718e9:
contracts/README.md, specs/trinet/mint_on_acceptance.t27,
docs/docs/depin/tokenomics.md and docs/docs/depin/principles.md. In it,
100% of TRI is minted on accepted work, genesis supply is 0, the cap is
3^21 = 10,460,353,203, the chains are TON + Solana, and nothing is
deployed.

- TrinityToken.sol: add a SUPERSEDED / DO NOT DEPLOY header; no code
  changes. It records that the Sepolia deployment can never mint 80% of
  its stated allocation, because four _setupVesting calls overwrite each
  other on one beneficiary (verified by eth_call on 2026-10-01).
- deploy/contracts/README.md: superseded note.
- Website: replace the allocation in phoenixNumber (all five languages)
  and on /dashboard with 100% mined / 0 pre-mine / 0 sale; drop the
  hard-coded "Ethereum Sepolia".
- Blog tri-mined-not-sold: remove the unrelated FP-vs-ternary twin
  experiment section (EN + RU).
- specs/tri27 token_types/staking/reward_distribution: superseded headers.
- trinity-nexus research: add SUPERSEDED.md (force-added because .gitignore
  ignores *.md) plus a banner on each SAFT/sale/allocation document.
- docs/depin/tokenomics.md: superseded admonition.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@gHashTag

gHashTag commented Oct 2, 2026

Copy link
Copy Markdown
Owner Author

Reviewer bee Y: not merged. (1) Required status 'T27 work report' = FAILURE. (2) The title says docs(tri), but the diff changes live UI copy in five locale files (distribution now '100% mined', CTA link moved to gHashTag/trinity-fpga), ProductionDashboard.tsx, deletes 40 lines of the published post tri-mined-not-sold, and edits TrinityToken.sol and three specs/tri27/*.tri files -- a token-policy statement the owner should approve explicitly, not a docs sweep. (3) It overlaps #1201 on the same 'there will never be a token' wording. Red here and also red on main: Brain Health, pr-opened, Spec Linter Gate (red on main since 2026-08-14); docs-check link/consistency not verified against main.

@gHashTag

gHashTag commented Oct 2, 2026

Copy link
Copy Markdown
Owner Author

bee review: not merged. Head 7c8b7fa, MERGEABLE but BLOCKED. Failures caused by this PR: required T27 work report (no work-report block in the body, run 36847402349), plus lint-specs, Documentation Consistency and Check Documentation Links -- all three are green on other PRs, so they belong to this diff (21 doc files). No credentials. Red on main for every PR (not counted against this one): ⚡ Brain Health Check, 📋 Brain Health Report.

@gHashTag gHashTag added the bee-reviewed A reviewer bee reviewed and verified this PR after its head commit; required to merge label Oct 2, 2026
@gHashTag

gHashTag commented Oct 2, 2026

Copy link
Copy Markdown
Owner Author

Bee review evidence: #1200 (head 7c8b7fa984329289182df12b0a2e2b95a09188cd)

Scope: 21 files, all comments and copy. No Solidity code, no spec logic and no runtime behaviour changes.

  • TrinityToken.sol: header comment only. The contract body is untouched.
  • specs/tri27/*.tri: # header comments only.
  • The research docs get a SUPERSEDED banner, and SUPERSEDED.md is new.
  • docs/docs/depin/tokenomics.md gets a :::danger admonition.
  • Website: the distribution copy in all 5 locales (en/ru/de/es/zh) is rewritten to 100% mined / 0 / 0. The CTA now points at trinity-fpga docs/docs/depin/tokenomics.md, and that file exists.
  • ProductionDashboard.tsx: the allocation labels and bars change to 100/0/0. CYAN and PURPLE are still used elsewhere, so this adds no unused constants.
  • Note: this PR also deletes the "10B token twin experiment" section from the tri-mined-not-sold blog body. That ML-benchmark section did not belong in a tokenomics post, so the deletion is accepted as cleanup.

Red checks: none are caused by this PR.

  • lint-specs (Spec Linter Gate) exits 127 because ./zig-out/bin/vibee is missing (zig build vibee only prints help). Main push runs fail the same way.
  • Documentation Consistency: src/hslm/tjepa.zig not found, the same as main.
  • Check Documentation Links scans the whole tree, and 104 files fail on main too. The only PR-touched file with a dead link is tokenomics.md. Its link is a sepolia.etherscan.io 403 that predates this PR: the diff contains no etherscan.
  • pr-opened: Auto-update Project Status gets HTTP 401 Bad credentials, which is red on every PR and on main.
  • Brain Health Check and Brain Health Report are red on main.

T27 work report: latest status on the head is success (2026-10-02T20:24Z).
Mergeable: MERGEABLE.

@t27-bees t27-bees Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

bee review: see evidence comment

@gHashTag
gHashTag merged commit 3926f22 into main Oct 2, 2026
30 of 37 checks passed
@github-actions github-actions Bot added status:completed Done and removed status:in-progress 🔵 Agent working labels Oct 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bee-reviewed A reviewer bee reviewed and verified this PR after its head commit; required to merge status:completed Done

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant