Docs: trim remaining TimeCurve/FeeRouter mentions in 30 satellite files #276

Closed
opened 2026-06-01 12:28:47 +00:00 by PlasticDigits · 13 comments
PlasticDigits commented 2026-06-01 12:28:47 +00:00 (Migrated from gitlab.com)

Summary

Follow-up to #274 (closed). P0 operator/agent paths are clean and check-doc-retired-terms.sh passes, but 30 files under docs/ still contain TimeCurve or FeeRouter tokens (55 mentions total as of 4230ab7). Most are labeled retired cross-links or negative-test invariant rows — not active operator runbooks — but they still add noise for QA, contributors, and third-party agents.

Goal: Reduce remaining TimeCurve|FeeRouter surface in docs/ to the minimum needed for historical traceability, without reintroducing v1 operator instructions or duplicating arena-v2.md.

Parent: #274 · Epic: #238 · Policy: #263.


Files to update (30)

Baseline inventory (rg -l 'TimeCurve|FeeRouter' docs/ on main):

# File ~mentions Notes
1 docs/testing/invariants-and-business-logic.md 7 Negative-test / removal invariants — rephrase where possible without breaking anchor IDs
2 docs/qa/QA-onboarding-gitlab-issue-body.md 4 Compare-to-retired wording; keep /arena gate
3 docs/frontend/wallet-connection.md 4 Likely legacy env alias prose
4 docs/product/time-arena.md 3 Canonical spec — trim redundant v1 comparisons
5 docs/product/arena-v2.md 3 Same
6 docs/frontend/sound-effects-recommendations.md 3 Rename stale route/surface labels
7 docs/testing/strategy.md 2 Already cites #274 gate — tighten
8 docs/testing/manual-qa-checklists.md 2
9 docs/product/referrals.md 2 Strip TimeCurve-attached presale semantics only
10 docs/operations/deployment-guide.md 2 Collapse retired pointer further if possible
11 docs/onchain/security-and-threat-model.md 2 Move v1 threat rows to ≤1 retired paragraph
12 docs/onchain/cl8y-flow-audit.md 2 Already stubbed — remove FeeRouter.distributeFees token if historical table can cite #244 instead
13 docs/indexer/design.md 2 “Replaces legacy …” lines — shorten
14 docs/glossary.md 2 Retire or one-line glossary entries
15 docs/agent-phases.md 2 Retired stack list only — OK to rephrase without token
16 docs/testing/anvil-same-block-drill.md 1
17 docs/research/stablecoin-and-reserves.md 1
18 docs/README.md 1
19 docs/product/vision.md 1
20 docs/product/primitives.md 1
21 docs/operations/stage2-run-log.md 1 Historical log — label only
22 docs/operations/presale-doub-instant-distribution.md 1
23 docs/operations/final-signoff-and-value-movement.md 1
24 docs/onchain/treasury-contracts.md 1
25 docs/onchain/fee-routing-and-governance.md 1 “Retired FeeRouter …” paragraph
26 docs/integrations/kumbaya.md 1 One-line retired pointer already — rephrase token
27 docs/frontend/presale-vesting.md 1
28 docs/contracts/foundry-and-megaeth.md 1 Fork smoke note
29 docs/architecture/overview.md 1
30 docs/agent-implementation-phases.md 1

Out of scope: contracts/ (TimeCurve.sol, FeeRouter.sol, fork tests), frontend/e2e/ redirect tests, code comments, git history.


Instructions for the agent

  1. Read guardrails first: .cursor/skills/yieldomega-guardrails/SKILL.md · docs/agent-phases.md · closed #274 close comment.

  2. Use a git worktree (e.g. issue/274-residual-docs) — do not work directly on a dirty main.

  3. Inventory before edit:

    rg -n 'TimeCurve|FeeRouter' docs/ | sort
    rg -c 'TimeCurve|FeeRouter' docs/ | sort -t: -k2 -nr
    

    Classify each hit: delete, rephrase (drop token, keep meaning), or keep (invariant ID / anchor must stay).

  4. Edit policy (same as #263 / #274):

    • Delete duplicate v1 runbook prose; do not create docs/testing/archive/ stubs.
    • Rephrase “retired v1 launchpad / five-sink CL8Y model” instead of repeating TimeCurve / FeeRouter tokens when the token adds no test value.
    • Preserve Arena v2 cross-links: TimeArena, GET /v1/arena/*, VITE_TIME_ARENA_ADDRESS, play skills skills/README.md.
    • Preserve invariant anchor IDs (#timearena-v2-gitlab-260, #satellite-docs-gitlab-274, etc.) — update prose around them, do not rename anchors without fixing check-doc-anchors.sh.
    • Do not reintroduce VITE_FEE_ROUTER_*, idx_timecurve_*, or /timecurve as active QA paths.
  5. Optional hardening: extend scripts/check-doc-retired-terms.sh or add a warn-only count gate in CI if total docs/ mention count regresses above baseline — only if it does not false-positive on intentional invariant rows.

  6. Verification loop: verify → fix → reset infra (if touching scripts) → repeat. Docs-only: no infra reset required unless running e2e-anvil.sh.

  7. Commit / merge: single focused commit; merge to main; comment on this issue with before/after counts and checklist results.


Acceptance criteria

  • All 30 files in the table above were reviewed; each has either zero TimeCurve|FeeRouter tokens or a ≤1-line Retired label explaining why the token remains (invariant row IDs only).
  • rg 'TimeCurve|FeeRouter' docs/ mention count ≤ 25 (down from 55; ~55% further reduction).
  • rg -l 'TimeCurve|FeeRouter' docs/ file count ≤ 15 (down from 30).
  • P0 paths still clean: bash scripts/check-doc-retired-terms.sh passes (must not regress #274).
  • bash scripts/check-doc-anchors.sh passes — no broken invariants-and-business-logic.md#… links.
  • No operator-facing doc presents v1 five-sink routing or sale-end lifecycle as current behavior.
  • docs/testing/strategy.md and .cursor/skills/yieldomega-guardrails/SKILL.md cross-link this issue if counts/gates change.
  • Docs-only diff — indexer cargo test, frontend npm test, and bash scripts/e2e-anvil.sh unchanged (regression smoke).

Verification checklist

Step Command / action Expected
Baseline delta rg -c 'TimeCurve|FeeRouter' docs/ | wc -l and total mention count ≤ 15 files, ≤ 25 mentions
P0 gate bash scripts/check-doc-retired-terms.sh Exit 0
Anchor gate bash scripts/check-doc-anchors.sh Exit 0, no new broken anchors
Operator paths rg 'VITE_FEE_ROUTER|FeeRouter\.distributeFees|TimeCurve\.endSale|redeemCharms|idx_timecurve' docs/qa/ docs/testing/qa-local-full-stack.md docs/agent-phases.md docs/agent-implementation-phases.md Zero matches
QA onboarding Read docs/qa/QA-onboarding-gitlab-issue-body.md /arena, bots/timearena, no FeeRouter env gate
Agent smoke Ask Cursor agent with guardrails: “how do I run local QA?” Cites /arena, not TimeCurve page
Invariants Spot-check INV-DOCS-274-* rows still accurate Manual
Regression cd indexer && cargo test; cd frontend && npm test; bash scripts/e2e-anvil.sh All green
Skills rg 'play-timecurve' skills/ Zero (no resurrection)

  • Closed: #274 — satellite doc cleanup (P0 paths)
  • #263 — invariant bulk deletion
  • #243, #244 — retired stacks
## Summary Follow-up to [#274](https://gitlab.com/PlasticDigits/yieldomega/-/issues/274) (closed). P0 operator/agent paths are clean and `check-doc-retired-terms.sh` passes, but **30 files** under `docs/` still contain **`TimeCurve`** or **`FeeRouter`** tokens (**55 mentions** total as of `4230ab7`). Most are labeled **retired** cross-links or negative-test invariant rows — not active operator runbooks — but they still add noise for QA, contributors, and third-party agents. **Goal:** Reduce remaining `TimeCurve|FeeRouter` surface in `docs/` to the minimum needed for historical traceability, without reintroducing v1 operator instructions or duplicating [`arena-v2.md`](docs/product/arena-v2.md). Parent: [#274](https://gitlab.com/PlasticDigits/yieldomega/-/issues/274) · Epic: [#238](https://gitlab.com/PlasticDigits/yieldomega/-/issues/238) · Policy: [#263](https://gitlab.com/PlasticDigits/yieldomega/-/issues/263). --- ## Files to update (30) Baseline inventory (`rg -l 'TimeCurve|FeeRouter' docs/` on `main`): | # | File | ~mentions | Notes | |---|------|-----------|-------| | 1 | [`docs/testing/invariants-and-business-logic.md`](docs/testing/invariants-and-business-logic.md) | 7 | Negative-test / removal invariants — rephrase where possible without breaking anchor IDs | | 2 | [`docs/qa/QA-onboarding-gitlab-issue-body.md`](docs/qa/QA-onboarding-gitlab-issue-body.md) | 4 | Compare-to-retired wording; keep `/arena` gate | | 3 | [`docs/frontend/wallet-connection.md`](docs/frontend/wallet-connection.md) | 4 | Likely legacy env alias prose | | 4 | [`docs/product/time-arena.md`](docs/product/time-arena.md) | 3 | Canonical spec — trim redundant v1 comparisons | | 5 | [`docs/product/arena-v2.md`](docs/product/arena-v2.md) | 3 | Same | | 6 | [`docs/frontend/sound-effects-recommendations.md`](docs/frontend/sound-effects-recommendations.md) | 3 | Rename stale route/surface labels | | 7 | [`docs/testing/strategy.md`](docs/testing/strategy.md) | 2 | Already cites #274 gate — tighten | | 8 | [`docs/testing/manual-qa-checklists.md`](docs/testing/manual-qa-checklists.md) | 2 | | | 9 | [`docs/product/referrals.md`](docs/product/referrals.md) | 2 | Strip TimeCurve-attached presale semantics only | | 10 | [`docs/operations/deployment-guide.md`](docs/operations/deployment-guide.md) | 2 | Collapse retired pointer further if possible | | 11 | [`docs/onchain/security-and-threat-model.md`](docs/onchain/security-and-threat-model.md) | 2 | Move v1 threat rows to ≤1 retired paragraph | | 12 | [`docs/onchain/cl8y-flow-audit.md`](docs/onchain/cl8y-flow-audit.md) | 2 | Already stubbed — remove `FeeRouter.distributeFees` token if historical table can cite #244 instead | | 13 | [`docs/indexer/design.md`](docs/indexer/design.md) | 2 | “Replaces legacy …” lines — shorten | | 14 | [`docs/glossary.md`](docs/glossary.md) | 2 | Retire or one-line glossary entries | | 15 | [`docs/agent-phases.md`](docs/agent-phases.md) | 2 | Retired stack list only — OK to rephrase without token | | 16 | [`docs/testing/anvil-same-block-drill.md`](docs/testing/anvil-same-block-drill.md) | 1 | | | 17 | [`docs/research/stablecoin-and-reserves.md`](docs/research/stablecoin-and-reserves.md) | 1 | | | 18 | [`docs/README.md`](docs/README.md) | 1 | | | 19 | [`docs/product/vision.md`](docs/product/vision.md) | 1 | | | 20 | [`docs/product/primitives.md`](docs/product/primitives.md) | 1 | | | 21 | [`docs/operations/stage2-run-log.md`](docs/operations/stage2-run-log.md) | 1 | Historical log — label only | | 22 | [`docs/operations/presale-doub-instant-distribution.md`](docs/operations/presale-doub-instant-distribution.md) | 1 | | | 23 | [`docs/operations/final-signoff-and-value-movement.md`](docs/operations/final-signoff-and-value-movement.md) | 1 | | | 24 | [`docs/onchain/treasury-contracts.md`](docs/onchain/treasury-contracts.md) | 1 | | | 25 | [`docs/onchain/fee-routing-and-governance.md`](docs/onchain/fee-routing-and-governance.md) | 1 | “Retired FeeRouter …” paragraph | | 26 | [`docs/integrations/kumbaya.md`](docs/integrations/kumbaya.md) | 1 | One-line retired pointer already — rephrase token | | 27 | [`docs/frontend/presale-vesting.md`](docs/frontend/presale-vesting.md) | 1 | | | 28 | [`docs/contracts/foundry-and-megaeth.md`](docs/contracts/foundry-and-megaeth.md) | 1 | Fork smoke note | | 29 | [`docs/architecture/overview.md`](docs/architecture/overview.md) | 1 | | | 30 | [`docs/agent-implementation-phases.md`](docs/agent-implementation-phases.md) | 1 | | **Out of scope:** `contracts/` (`TimeCurve.sol`, `FeeRouter.sol`, fork tests), `frontend/e2e/` redirect tests, code comments, git history. --- ## Instructions for the agent 1. **Read guardrails first:** [`.cursor/skills/yieldomega-guardrails/SKILL.md`](.cursor/skills/yieldomega-guardrails/SKILL.md) · [`docs/agent-phases.md`](docs/agent-phases.md) · closed [#274](https://gitlab.com/PlasticDigits/yieldomega/-/issues/274) close comment. 2. **Use a git worktree** (e.g. `issue/274-residual-docs`) — do not work directly on a dirty `main`. 3. **Inventory before edit:** ```bash rg -n 'TimeCurve|FeeRouter' docs/ | sort rg -c 'TimeCurve|FeeRouter' docs/ | sort -t: -k2 -nr ``` Classify each hit: **delete**, **rephrase** (drop token, keep meaning), or **keep** (invariant ID / anchor must stay). 4. **Edit policy (same as #263 / #274):** - **Delete** duplicate v1 runbook prose; do **not** create `docs/testing/archive/` stubs. - **Rephrase** “retired v1 launchpad / five-sink CL8Y model” instead of repeating `TimeCurve` / `FeeRouter` tokens when the token adds no test value. - **Preserve** Arena v2 cross-links: `TimeArena`, `GET /v1/arena/*`, `VITE_TIME_ARENA_ADDRESS`, play skills [`skills/README.md`](skills/README.md). - **Preserve** invariant anchor IDs (`#timearena-v2-gitlab-260`, `#satellite-docs-gitlab-274`, etc.) — update prose around them, do not rename anchors without fixing `check-doc-anchors.sh`. - **Do not** reintroduce `VITE_FEE_ROUTER_*`, `idx_timecurve_*`, or `/timecurve` as active QA paths. 5. **Optional hardening:** extend [`scripts/check-doc-retired-terms.sh`](scripts/check-doc-retired-terms.sh) or add a **warn-only** count gate in CI if total `docs/` mention count regresses above baseline — only if it does not false-positive on intentional invariant rows. 6. **Verification loop:** verify → fix → reset infra (if touching scripts) → repeat. Docs-only: no infra reset required unless running `e2e-anvil.sh`. 7. **Commit / merge:** single focused commit; merge to `main`; comment on this issue with before/after counts and checklist results. --- ## Acceptance criteria - [ ] All **30 files** in the table above were reviewed; each has either zero `TimeCurve|FeeRouter` tokens **or** a ≤1-line **Retired** label explaining why the token remains (invariant row IDs only). - [ ] `rg 'TimeCurve|FeeRouter' docs/` mention count **≤ 25** (down from 55; ~55% further reduction). - [ ] `rg -l 'TimeCurve|FeeRouter' docs/` file count **≤ 15** (down from 30). - [ ] P0 paths still clean: `bash scripts/check-doc-retired-terms.sh` passes (must not regress [#274](https://gitlab.com/PlasticDigits/yieldomega/-/issues/274)). - [ ] `bash scripts/check-doc-anchors.sh` passes — no broken `invariants-and-business-logic.md#…` links. - [ ] No operator-facing doc presents v1 five-sink routing or sale-end lifecycle as **current** behavior. - [ ] [`docs/testing/strategy.md`](docs/testing/strategy.md) and [`.cursor/skills/yieldomega-guardrails/SKILL.md`](.cursor/skills/yieldomega-guardrails/SKILL.md) cross-link this issue if counts/gates change. - [ ] Docs-only diff — `indexer cargo test`, `frontend npm test`, and `bash scripts/e2e-anvil.sh` unchanged (regression smoke). --- ## Verification checklist | Step | Command / action | Expected | |------|------------------|----------| | Baseline delta | `rg -c 'TimeCurve\|FeeRouter' docs/ \| wc -l` and total mention count | ≤ 15 files, ≤ 25 mentions | | P0 gate | `bash scripts/check-doc-retired-terms.sh` | Exit 0 | | Anchor gate | `bash scripts/check-doc-anchors.sh` | Exit 0, no new broken anchors | | Operator paths | `rg 'VITE_FEE_ROUTER\|FeeRouter\.distributeFees\|TimeCurve\.endSale\|redeemCharms\|idx_timecurve' docs/qa/ docs/testing/qa-local-full-stack.md docs/agent-phases.md docs/agent-implementation-phases.md` | Zero matches | | QA onboarding | Read [`docs/qa/QA-onboarding-gitlab-issue-body.md`](docs/qa/QA-onboarding-gitlab-issue-body.md) | `/arena`, `bots/timearena`, no FeeRouter env gate | | Agent smoke | Ask Cursor agent with guardrails: “how do I run local QA?” | Cites `/arena`, not TimeCurve page | | Invariants | Spot-check [`INV-DOCS-274-*`](docs/testing/invariants-and-business-logic.md#satellite-docs-gitlab-274) rows still accurate | Manual | | Regression | `cd indexer && cargo test`; `cd frontend && npm test`; `bash scripts/e2e-anvil.sh` | All green | | Skills | `rg 'play-timecurve' skills/` | Zero (no resurrection) | --- ## Related - Closed: [#274](https://gitlab.com/PlasticDigits/yieldomega/-/issues/274) — satellite doc cleanup (P0 paths) - [#263](https://gitlab.com/PlasticDigits/yieldomega/-/issues/263) — invariant bulk deletion - [#243](https://gitlab.com/PlasticDigits/yieldomega/-/issues/243), [#244](https://gitlab.com/PlasticDigits/yieldomega/-/issues/244) — retired stacks
PlasticDigits commented 2026-06-01 13:07:54 +00:00 (Migrated from gitlab.com)

mentioned in commit 43ffbe550a

mentioned in commit 43ffbe550a3d104c998bc2836925ec5d4e58390c
PlasticDigits commented 2026-06-01 13:07:58 +00:00 (Migrated from gitlab.com)

Implementation summary (#276)

Trimmed retired v1 TimeCurve / FeeRouter tokens across all 30 satellite files listed in the issue. Prose now uses neutral phrasing (“v1 launchpad”, “five-sink CL8Y model”) while preserving Arena v2 authority paths (/arena, TimeArena, GET /v1/arena/*, play skills).

Before → after

Metric Baseline (issue open) After merge 43ffbe5
Files with tokens 30 3
Total mentions 55 (81 incl. duplicates in rg -o) 10

Remaining tokens are intentional: INV-DOCS-274-RETIRED-TERMS grep patterns, INV-DOCS-276-SATELLITE-COUNT gate description, INV-REMOVAL-243 contract grep target, and the legacy localStorage key cl8yTimeCurveUnlimited.v1 in wallet-connection docs.

Deliverables

  • New CI gate: bash scripts/check-doc-satellite-retired-count.sh (≤15 files, ≤25 mentions)
  • Invariants: INV-DOCS-276-SATELLITE-COUNT, INV-DOCS-276-P0-UNCHANGED — satellite-docs-gitlab-276
  • Cross-links updated in docs/testing/strategy.md, docs/testing/ci.md, .cursor/skills/yieldomega-guardrails/SKILL.md
  • scripts-smoke CI job extended in .github/workflows/unit-tests.yml

Verification checklist

  • bash scripts/check-doc-retired-terms.sh — exit 0 (P0 paths unchanged)
  • bash scripts/check-doc-anchors.sh — exit 0
  • bash scripts/check-doc-satellite-retired-count.sh — exit 0; files ≤15, mentions ≤25
  • rg 'VITE_FEE_ROUTER|FeeRouter\.distributeFees|TimeCurve\.endSale|redeemCharms|idx_timecurve' docs/qa/ docs/testing/qa-local-full-stack.md docs/agent-phases.md docs/agent-implementation-phases.md — zero matches
  • Read docs/qa/QA-onboarding-gitlab-issue-body.md — /arena, bots/timearena, no FeeRouter env gate
  • Spot-check INV-DOCS-274-* and new INV-DOCS-276-* rows in invariants doc
  • cd indexer && cargo test — green (docs-only; no code changes expected)
  • cd frontend && npm test — green
  • rg 'play-timecurve' skills/ — zero

Follow-ups

  • Optional: rename frontend localStorage key yieldomega.erc20.cl8yTimeCurveUnlimited.v1 to an Arena-neutral name (code change; would drop the last wallet-connection doc token).

Requesting verification from the QA agent team on the checklist above. Issue left open for QA sign-off.

## Implementation summary (#276) Trimmed retired v1 **`TimeCurve` / `FeeRouter`** tokens across all **30** satellite files listed in the issue. Prose now uses neutral phrasing (“v1 launchpad”, “five-sink CL8Y model”) while preserving Arena v2 authority paths (`/arena`, `TimeArena`, `GET /v1/arena/*`, play skills). ### Before → after | Metric | Baseline (issue open) | After merge `43ffbe5` | |--------|----------------------|------------------------| | Files with tokens | 30 | **3** | | Total mentions | 55 (81 incl. duplicates in rg -o) | **10** | Remaining tokens are intentional: **`INV-DOCS-274-RETIRED-TERMS`** grep patterns, **`INV-DOCS-276-SATELLITE-COUNT`** gate description, **`INV-REMOVAL-243`** contract grep target, and the legacy `localStorage` key `cl8yTimeCurveUnlimited.v1` in wallet-connection docs. ### Deliverables - New CI gate: `bash scripts/check-doc-satellite-retired-count.sh` (≤15 files, ≤25 mentions) - Invariants: **`INV-DOCS-276-SATELLITE-COUNT`**, **`INV-DOCS-276-P0-UNCHANGED`** — [satellite-docs-gitlab-276](docs/testing/invariants-and-business-logic.md#satellite-docs-gitlab-276) - Cross-links updated in `docs/testing/strategy.md`, `docs/testing/ci.md`, `.cursor/skills/yieldomega-guardrails/SKILL.md` - **`scripts-smoke`** CI job extended in `.github/workflows/unit-tests.yml` --- ## Verification checklist - [ ] `bash scripts/check-doc-retired-terms.sh` — exit 0 (P0 paths unchanged) - [ ] `bash scripts/check-doc-anchors.sh` — exit 0 - [ ] `bash scripts/check-doc-satellite-retired-count.sh` — exit 0; files ≤15, mentions ≤25 - [ ] `rg 'VITE_FEE_ROUTER|FeeRouter\.distributeFees|TimeCurve\.endSale|redeemCharms|idx_timecurve' docs/qa/ docs/testing/qa-local-full-stack.md docs/agent-phases.md docs/agent-implementation-phases.md` — zero matches - [ ] Read `docs/qa/QA-onboarding-gitlab-issue-body.md` — `/arena`, `bots/timearena`, no FeeRouter env gate - [ ] Spot-check `INV-DOCS-274-*` and new `INV-DOCS-276-*` rows in invariants doc - [ ] `cd indexer && cargo test` — green (docs-only; no code changes expected) - [ ] `cd frontend && npm test` — green - [ ] `rg 'play-timecurve' skills/` — zero --- ## Follow-ups - Optional: rename frontend `localStorage` key `yieldomega.erc20.cl8yTimeCurveUnlimited.v1` to an Arena-neutral name (code change; would drop the last wallet-connection doc token). --- Requesting verification from the QA agent team on the checklist above. Issue left open for QA sign-off.
PlasticDigits commented 2026-06-01 13:14:14 +00:00 (Migrated from gitlab.com)

mentioned in issue #277

mentioned in issue #277
PlasticDigits commented 2026-06-01 13:14:14 +00:00 (Migrated from gitlab.com)

marked as related to #277

marked as related to #277
ghost1 commented 2026-06-02 08:18:57 +00:00 (Migrated from gitlab.com)

QA verification sign-off (#276)

Verified on main (f8500e7) — iteration 1/5, all acceptance criteria PASS. No doc/MR changes required; implementation from 43ffbe5 is complete.

Acceptance criteria

Criterion Result How verified
All 30 satellite files reviewed (zero tokens or invariant-only) PASS Per-file rg -o 'TimeCurve|FeeRouter' on issue table paths: 28/30 files at 0 tokens; docs/testing/invariants-and-business-logic.md (7) and docs/testing/strategy.md (2) retain tokens only in INV-DOCS-* / gate prose
Mention count ≤ 25 (baseline 55) PASS rg -o 'TimeCurve|FeeRouter' docs/ → 9 mentions
File count ≤ 15 (baseline 30) PASS rg -l 'TimeCurve|FeeRouter' docs/ → 2 files
bash scripts/check-doc-retired-terms.sh PASS Exit 0
bash scripts/check-doc-anchors.sh PASS Exit 0 — 40 anchors, no broken links
No v1 five-sink / sale-end as current operator behavior PASS Manual grep/read of ops/QA/onchain docs — retired / five-sink phrasing only
docs/testing/strategy.md + guardrails cross-link #276 PASS Links + check-doc-satellite-retired-count.sh cited
Docs-only regression smoke PASS cd indexer && cargo test (32 tests); cd frontend && npm test -- --run (534 tests)

Verification checklist (issue body)

Step Result Command / output
Baseline delta PASS bash scripts/check-doc-satellite-retired-count.sh → files=2 (max 15), mentions=9 (max 25)
P0 gate PASS bash scripts/check-doc-retired-terms.sh → OK
Anchor gate PASS bash scripts/check-doc-anchors.sh → OK
Operator paths PASS rg 'VITE_FEE_ROUTER|FeeRouter\.distributeFees|TimeCurve\.endSale|redeemCharms|idx_timecurve' docs/qa/ … → no matches
QA onboarding PASS Read docs/qa/QA-onboarding-gitlab-issue-body.md — /arena, bots/timearena, VITE_TIME_ARENA_ADDRESS; no FeeRouter env gate
Agent smoke (“how do I run local QA?”) SKIP Not executed in this session; guardrails + QA doc cite /arena / start-local-anvil-stack.sh
Invariants spot-check PASS INV-DOCS-274-*, INV-DOCS-276-* rows present at #satellite-docs-gitlab-276
indexer / frontend tests PASS See above
bash scripts/e2e-anvil.sh SKIP Docs-only scope; full Anvil stack not started per verification policy
rg 'play-timecurve' skills/ PASS Zero matches

Closing as verified complete.

## QA verification sign-off (#276) Verified on `main` (`f8500e7`) — **iteration 1/5**, all acceptance criteria **PASS**. No doc/MR changes required; implementation from `43ffbe5` is complete. ### Acceptance criteria | Criterion | Result | How verified | |-----------|--------|----------------| | All 30 satellite files reviewed (zero tokens or invariant-only) | **PASS** | Per-file `rg -o 'TimeCurve\|FeeRouter'` on issue table paths: **28/30** files at **0** tokens; **`docs/testing/invariants-and-business-logic.md`** (7) and **`docs/testing/strategy.md`** (2) retain tokens only in **`INV-DOCS-*`** / gate prose | | Mention count ≤ 25 (baseline 55) | **PASS** | `rg -o 'TimeCurve\|FeeRouter' docs/` → **9** mentions | | File count ≤ 15 (baseline 30) | **PASS** | `rg -l 'TimeCurve\|FeeRouter' docs/` → **2** files | | `bash scripts/check-doc-retired-terms.sh` | **PASS** | Exit 0 | | `bash scripts/check-doc-anchors.sh` | **PASS** | Exit 0 — 40 anchors, no broken links | | No v1 five-sink / sale-end as **current** operator behavior | **PASS** | Manual grep/read of ops/QA/onchain docs — retired / five-sink phrasing only | | `docs/testing/strategy.md` + guardrails cross-link #276 | **PASS** | Links + `check-doc-satellite-retired-count.sh` cited | | Docs-only regression smoke | **PASS** | `cd indexer && cargo test` (32 tests); `cd frontend && npm test -- --run` (534 tests) | ### Verification checklist (issue body) | Step | Result | Command / output | |------|--------|------------------| | Baseline delta | **PASS** | `bash scripts/check-doc-satellite-retired-count.sh` → files=2 (max 15), mentions=9 (max 25) | | P0 gate | **PASS** | `bash scripts/check-doc-retired-terms.sh` → OK | | Anchor gate | **PASS** | `bash scripts/check-doc-anchors.sh` → OK | | Operator paths | **PASS** | `rg 'VITE_FEE_ROUTER\|FeeRouter\.distributeFees\|TimeCurve\.endSale\|redeemCharms\|idx_timecurve' docs/qa/ …` → no matches | | QA onboarding | **PASS** | Read `docs/qa/QA-onboarding-gitlab-issue-body.md` — `/arena`, `bots/timearena`, `VITE_TIME_ARENA_ADDRESS`; no FeeRouter env gate | | Agent smoke (“how do I run local QA?”) | **SKIP** | Not executed in this session; guardrails + QA doc cite `/arena` / `start-local-anvil-stack.sh` | | Invariants spot-check | **PASS** | `INV-DOCS-274-*`, `INV-DOCS-276-*` rows present at `#satellite-docs-gitlab-276` | | `indexer` / `frontend` tests | **PASS** | See above | | `bash scripts/e2e-anvil.sh` | **SKIP** | Docs-only scope; full Anvil stack not started per verification policy | | `rg 'play-timecurve' skills/` | **PASS** | Zero matches | Closing as verified complete.
Ghost (Migrated from gitlab.com) closed this issue 2026-06-02 08:18:58 +00:00
PlasticDigits commented 2026-06-02 09:26:11 +00:00 (Migrated from gitlab.com)

mentioned in merge request !396

mentioned in merge request !396
ghost1 commented 2026-06-02 13:30:11 +00:00 (Migrated from gitlab.com)

mentioned in commit 780c26e64a

mentioned in commit 780c26e64ae5ded8e374de1619285cff457af240
PlasticDigits commented 2026-06-02 13:36:01 +00:00 (Migrated from gitlab.com)

mentioned in merge request !401

mentioned in merge request !401
PlasticDigits commented 2026-06-03 13:25:01 +00:00 (Migrated from gitlab.com)

mentioned in issue #263

mentioned in issue #263
PlasticDigits commented 2026-06-03 13:29:24 +00:00 (Migrated from gitlab.com)

mentioned in issue #284

mentioned in issue #284
PlasticDigits commented 2026-06-03 13:29:24 +00:00 (Migrated from gitlab.com)

marked as related to #284

marked as related to #284
PlasticDigits commented 2026-06-03 13:55:06 +00:00 (Migrated from gitlab.com)

mentioned in merge request !417

mentioned in merge request !417
PlasticDigits commented 2026-06-13 07:02:54 +00:00 (Migrated from gitlab.com)

mentioned in issue #309

mentioned in issue #309
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
code/yieldomega#276
No description provided.