Correct #exact-costs: entry exists ONLY at Scintilla (register() has no level param; upgrade() one rung per call) — levels cannot be skipped; table now shows upgrade path + cumulative totals; AI prompt synced

Verified against the exact-match ABI on Sourcify: per-level entry rows on company charts are vestigial contract data with no callable path.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
martbost
2026-08-27 11:32:43 -05:00
parent bdfb40667e
commit b76a590714
2 changed files with 13 additions and 11 deletions
+12 -10
View File
@@ -85,17 +85,19 @@
<p style="color:var(--muted);line-height:1.65;margin:12px 0 0"><strong style="color:var(--text)">How to read it:</strong> at each depth below you, every position sends one upgrade pass-up when they level up — and the first two of them cover the cost of your <em>own</em> next upgrade, so your team can carry you up the ladder. Everything past those two is upside. A fully built matrix through all seven paying generations would be an enormous number — but "fully built" is rare, which is exactly why the honest play is steady team-building, not counting on a full fill.</p></div>
<div id="exact-costs" class="card" style="margin-top:20px;scroll-margin-top:16px"><div class="eyebrow" style="color:var(--teal)">Straight from the contract</div><h2 style="margin:6px 0 10px">The exact numbers — and why Entry ≠ Upgrade</h2>
<p style="color:var(--muted);line-height:1.65;margin:0 0 12px">Charts you'll see around the team round these slightly. The numbers below are read <strong style="color:var(--text)">live from the contract's public <code style="color:var(--gold)">getAllCosts()</code> function</strong> — anyone can verify them on Polygonscan, and nobody (not even the operators) can change them. Premium tier, in POL:</p>
<div class="table-wrap"><table class="table" style="min-width:560px"><thead><tr><th>Level</th><th>You send to join here</th><th>Your sponsor receives</th><th>Upgrade to next level</th></tr></thead><tbody>
<tr><td>1 · Scintilla</td><td>360.58</td><td>326.24</td><td>621.40</td></tr>
<tr><td>2 · Ascensus</td><td>721.15</td><td>652.47</td><td>1,242.80</td></tr>
<tr><td>3 · Fabrica</td><td>1,442.31</td><td>1,304.95</td><td>2,485.61</td></tr>
<tr><td>4 · Culmen</td><td>2,884.62</td><td>2,609.89</td><td>4,971.22</td></tr>
<tr><td>5 · Apex</td><td>5,769.23</td><td>5,219.78</td><td>9,942.44</td></tr>
<tr><td>6 · Fastigium</td><td>11,538.46</td><td>10,439.56</td><td>19,884.88</td></tr>
<tr><td>7 · Vertex</td><td>23,076.92</td><td>20,879.12</td><td>39,769.75</td></tr>
<tr><td>8 · Corona</td><td>46,153.85</td><td>41,758.24</td><td><span style="color:var(--muted)">top level</span></td></tr>
<p style="color:var(--muted);line-height:1.65;margin:0 0 12px"><strong style="color:var(--text)">Entry happens exactly once, and always at Scintilla:</strong> a new Premium position sends <strong style="color:var(--text)">360.58 POL</strong> (the 343.41 base + the contract's 5% admin charge, which applies to entries only). Your sponsor — the person whose link you used — receives <strong style="color:var(--text)">326.24</strong> (95% of the base). After that, everything is upgrades:</p>
<div class="table-wrap"><table class="table" style="min-width:560px"><thead><tr><th>Level</th><th>Upgrade price to reach it</th><th>Total spent to hold it (entry + upgrades)</th></tr></thead><tbody>
<tr><td>1 · Scintilla</td><td><span style="color:var(--muted)">— (entry: 360.58)</span></td><td>360.58</td></tr>
<tr><td>2 · Ascensus</td><td>621.40</td><td>981.98</td></tr>
<tr><td>3 · Fabrica</td><td>1,242.80</td><td>2,224.78</td></tr>
<tr><td>4 · Culmen</td><td>2,485.61</td><td>4,710.39</td></tr>
<tr><td>5 · Apex</td><td>4,971.22</td><td>9,681.61</td></tr>
<tr><td>6 · Fastigium</td><td>9,942.44</td><td>19,624.05</td></tr>
<tr><td>7 · Vertex</td><td>19,884.88</td><td>39,508.93</td></tr>
<tr><td>8 · Corona</td><td>39,769.75</td><td>79,278.68</td></tr>
</tbody></table></div>
<p style="color:var(--muted);line-height:1.65;margin:12px 0 12px"><strong style="color:var(--text)">Why the Entry and Upgrade columns are different prices:</strong> they're two different purchases, paid to two different people. <strong style="color:var(--text)">Entry</strong> is the one-time price to create a position — it goes to the sponsor who invited you (95% of the base price; the contract keeps a 5% admin charge on entries only). <strong style="color:var(--text)">Upgrade</strong> is what an existing member pays to climb one level — 100% of it travels up the matrix to a qualified member, with zero admin fee. Entry money and upgrade money are separate streams that never mix, so nothing is double-counted anywhere.</p>
<p style="color:var(--muted);line-height:1.65;margin:12px 0 12px"><strong style="color:var(--text)">Why entry and upgrades are different prices:</strong> they're two different purchases, paid to two different people. <strong style="color:var(--text)">Entry</strong> creates your position and pays your <em>sponsor</em>. <strong style="color:var(--text)">Upgrades</strong> climb your existing position one level at a time — 100% of every upgrade travels up the matrix to a qualified member, with zero admin fee. Separate streams that never mix, so nothing is double-counted anywhere.</p>
<p style="color:var(--muted);line-height:1.65;margin:0 0 12px"><strong style="color:var(--text)">Can you skip levels? No.</strong> The contract's <code style="color:var(--gold)">register()</code> function has no level input — every position starts at Scintilla — and <code style="color:var(--gold)">upgrade()</code> takes no target: each call moves you exactly one rung. (Some charts list an "entry price" for every level; those rows sit in the contract's data tables, but no function sells them — the ladder is climbed, never skipped.)</p>
<p style="color:var(--muted);line-height:1.65;margin:0 0 0"><strong style="color:var(--text)">And the upgrade ladder is tuned to the penny:</strong> every upgrade costs exactly double the one below it — 2 × 621.40 = 1,242.80, 2 × 1,242.80 = 2,485.61, all the way up with zero drift. That's the self-funding design: the first <em>two</em> pass-ups you catch at your level are exactly the price of your own next climb. <span class="micro">Contract prices are fixed constants, verifiable on-chain — never a promise of income. <a href="/contract" style="color:var(--teal)">How the contract works →</a></span></p></div>
<div id="cap" class="card" style="margin-top:20px;scroll-margin-top:16px"><div class="eyebrow" style="color:var(--teal)">Common question</div><h2 style="margin:6px 0 10px">"Does it cap out at 8 levels?"</h2>
<p style="color:var(--muted);line-height:1.65;margin:0 0 12px">Your <strong style="color:var(--text)">level</strong> caps at Corona (level 8) — that's the top, you can't upgrade past it. But your <strong style="color:var(--text)">earning does not cap</strong>, for two reasons:</p>