Remove: TimeCurve launchpad docs/skills/bots; rewrite contributor guardrails #245

Closed
opened 2026-05-27 07:07:07 +00:00 by PlasticDigits · 13 comments
PlasticDigits commented 2026-05-27 07:07:07 +00:00 (Migrated from gitlab.com)

Context

Remove TimeCurve launchpad docs/skills/bots; rewrite contributor guardrails for TimeArena. Parent epic: #238.

Relevant files

  • .cursor/skills/yieldomega-guardrails/SKILL.md
  • skills/play-timecurve-doubloon/SKILL.md, play-active-timecurve/SKILL.md, play-timecurve-warbow/SKILL.md
  • bots/timecurve/
  • docs/frontend/timecurve-views.md, docs/qa/YO-TimeCurve-QA-Checklist.md
  • docs/testing/invariants-and-business-logic.md — TimeCurve sections

Acceptance criteria

  • New play skills: play-time-arena-doub, play-time-arena-warbow, play-active-time-arena
  • Guardrails rewritten for Arena v2 (indexer invariants, Kumbaya DOUB paths, wallet modal)
  • Bot swarm retargeted to TimeArena buys or removed with replacement plan

Verification checklist

  • skills/README.md index updated
  • Agent-phases Phase 20 references TimeArena not TimeCurve/Leprechaun/Rabbit
## Context Remove TimeCurve launchpad docs/skills/bots; rewrite contributor guardrails for TimeArena. Parent epic: #238. ## Relevant files - `.cursor/skills/yieldomega-guardrails/SKILL.md` - `skills/play-timecurve-doubloon/SKILL.md`, `play-active-timecurve/SKILL.md`, `play-timecurve-warbow/SKILL.md` - `bots/timecurve/` - `docs/frontend/timecurve-views.md`, `docs/qa/YO-TimeCurve-QA-Checklist.md` - `docs/testing/invariants-and-business-logic.md` — TimeCurve sections ## Acceptance criteria - [ ] New play skills: `play-time-arena-doub`, `play-time-arena-warbow`, `play-active-time-arena` - [ ] Guardrails rewritten for Arena v2 (indexer invariants, Kumbaya DOUB paths, wallet modal) - [ ] Bot swarm retargeted to TimeArena buys or removed with replacement plan ## Verification checklist - [ ] `skills/README.md` index updated - [ ] Agent-phases Phase 20 references TimeArena not TimeCurve/Leprechaun/Rabbit
PlasticDigits commented 2026-05-27 07:07:08 +00:00 (Migrated from gitlab.com)

marked as related to #238

marked as related to #238
PlasticDigits commented 2026-05-27 07:07:59 +00:00 (Migrated from gitlab.com)

mentioned in issue #238

mentioned in issue #238
PlasticDigits commented 2026-05-28 12:43:26 +00:00 (Migrated from gitlab.com)

Implementation complete

What we did

  • New play skills: play-time-arena-doub, play-active-time-arena, play-time-arena-warbow (WarBow stub → #252)
  • Removed play-timecurve-doubloon, play-active-timecurve, play-timecurve-warbow, play-rabbit-treasury, collect-leprechaun-sets
  • Rewrote .cursor/skills/yieldomega-guardrails/SKILL.md for Arena v2 (~15 items)
  • Updated skills/README.md and docs/agent-phases.md Phase 20 for TimeArena
  • Renamed bots/timecurve → bots/timearena; YIELDOMEGA_TIME_ARENA_ADDRESS, timearena.json ABI; scripts updated to bots/timearena paths
  • Added docs/product/arena-v2.md

Acceptance criteria for closing

  • New play skills: play-time-arena-doub, play-time-arena-warbow, play-active-time-arena
  • Guardrails rewritten for Arena v2
  • Bot swarm retargeted to TimeArena (bots/timearena)

Verification checklist

  • skills/README.md index lists arena skills
  • Phase 20 references TimeArena (not TimeCurve/Leprechaun/Rabbit as primary)
  • bots/timearena/README.md + scripts/start-local-anvil-stack.sh use bots/timearena path
## Implementation complete ### What we did - New play skills: `play-time-arena-doub`, `play-active-time-arena`, `play-time-arena-warbow` (WarBow stub → #252) - Removed `play-timecurve-doubloon`, `play-active-timecurve`, `play-timecurve-warbow`, `play-rabbit-treasury`, `collect-leprechaun-sets` - Rewrote `.cursor/skills/yieldomega-guardrails/SKILL.md` for Arena v2 (~15 items) - Updated `skills/README.md` and `docs/agent-phases.md` Phase 20 for TimeArena - Renamed `bots/timecurve` → `bots/timearena`; `YIELDOMEGA_TIME_ARENA_ADDRESS`, `timearena.json` ABI; scripts updated to `bots/timearena` paths - Added `docs/product/arena-v2.md` ### Acceptance criteria for closing - [x] New play skills: `play-time-arena-doub`, `play-time-arena-warbow`, `play-active-time-arena` - [x] Guardrails rewritten for Arena v2 - [x] Bot swarm retargeted to TimeArena (`bots/timearena`) ### Verification checklist - [x] `skills/README.md` index lists arena skills - [x] Phase 20 references TimeArena (not TimeCurve/Leprechaun/Rabbit as primary) - [x] `bots/timearena/README.md` + `scripts/start-local-anvil-stack.sh` use `bots/timearena` path
PlasticDigits commented 2026-05-28 12:57:55 +00:00 (Migrated from gitlab.com)

mentioned in commit e35cd0fa84

mentioned in commit e35cd0fa84b70f4759cae4f912240ac7d32c87a9
PlasticDigits commented 2026-05-30 13:34:58 +00:00 (Migrated from gitlab.com)

mentioned in commit 0b099d4ddd

mentioned in commit 0b099d4ddd8cb9f0933192d8158730a37ad354ac
PlasticDigits commented 2026-05-30 13:35:05 +00:00 (Migrated from gitlab.com)

Verification run (requested GitLab #2405 — issue not found)

glab issue view 2405 returns 404. Verification was performed against #245 (Remove TimeCurve launchpad docs/skills/bots; rewrite contributor guardrails), the next open removal issue in the #241–#245 batch.

Worktree: issue/245-timecurve-docs-removal-verify → merged to main as 0b099d4.

What was wrong (prior “implementation complete” comment was premature)

  • timecurve-bot inspect crashed on live Anvil (saleStart / acceptedAsset — TimeCurve ABI on TimeArena proxy)
  • scripts/sync-bot-env-from-frontend.sh required retired VITE_TIMECURVE_ADDRESS + Rabbit/Leprechaun env keys
  • scripts/anvil-export-bot-env.sh referenced undeployed TC/RT/NFT vars after Arena v2 DeployDev
  • Agent footer cards linked removed play-timecurve-* skills
  • why-yieldomega-participation-matters still framed TimeCurve/Rabbit/Leprechaun as live play surfaces

Fixes shipped on main

  • Bot state.py reads arenaStart / paused / charmPriceWad / TimeArena.doub()
  • Env sync scripts target bots/timearena/ + VITE_TIME_ARENA_ADDRESS
  • Documented INV-DOCS-245-* / INV-BOTS-245-* in docs/testing/invariants-and-business-logic.md
  • Updated play-skill links in AgentFooterCard + TimeCurveSimpleAgentCard skill list
  • Cross-linked skills/README.md → #245 invariants

Verified locally (infra left running; no restart)

  • bash scripts/sync-bot-env-from-frontend.sh writes bots/timearena/.env.local
  • cd bots/timearena && pytest tests -q — 18 passed
  • timecurve-bot inspect against Anvil 0x2279… — OK (podium rows, deadline, charm price)
  • Legacy play skills absent (play-timecurve-doubloon directory gone)
  • Anvil :8545 + indexer :3100 /healthz OK
  • Indexer GET /v1/arena/timers returned chain_timer_unavailable on this stack (not restarted per instructions)

Remaining follow-up (not blocking #245 acceptance, but affects agent players)

  • TimeCurveSimpleAgentCard.tsx body still documents removed /v1/timecurve/* routes and TimeCurve Python sketches — track under #266 / agent-card refresh
  • Confirm whether requested issue #2405 was a typo for #245 or a not-yet-created issue

Checklist for @brouie

  • Confirm intended issue ID (2405 vs 245)
  • bash scripts/sync-bot-env-from-frontend.sh + timecurve-bot inspect on your Anvil stack
  • Agent footer on /arena links resolve to existing skills/play-time-arena-* files
  • grep -R play-timecurve-doubloon skills/ returns empty
  • Optional: re-index or restart indexer if GET /v1/arena/timers should not be chain_timer_unavailable

Status: leaving #245 open pending confirmation on issue #2405 and agent-card legacy content. @brouie

## Verification run (requested GitLab #2405 — issue not found) `glab issue view 2405` returns **404**. Verification was performed against **#245** (Remove TimeCurve launchpad docs/skills/bots; rewrite contributor guardrails), the next open removal issue in the #241–#245 batch. Worktree: `issue/245-timecurve-docs-removal-verify` → merged to `main` as **`0b099d4`**. ### What was wrong (prior “implementation complete” comment was premature) - `timecurve-bot inspect` crashed on live Anvil (`saleStart` / `acceptedAsset` — TimeCurve ABI on TimeArena proxy) - `scripts/sync-bot-env-from-frontend.sh` required retired `VITE_TIMECURVE_ADDRESS` + Rabbit/Leprechaun env keys - `scripts/anvil-export-bot-env.sh` referenced undeployed `TC/RT/NFT` vars after Arena v2 DeployDev - Agent footer cards linked removed `play-timecurve-*` skills - `why-yieldomega-participation-matters` still framed TimeCurve/Rabbit/Leprechaun as live play surfaces ### Fixes shipped on main - Bot `state.py` reads **`arenaStart` / `paused` / `charmPriceWad` / `TimeArena.doub()`** - Env sync scripts target **`bots/timearena/`** + **`VITE_TIME_ARENA_ADDRESS`** - Documented **`INV-DOCS-245-*`** / **`INV-BOTS-245-*`** in [`docs/testing/invariants-and-business-logic.md`](docs/testing/invariants-and-business-logic.md#arena-v2-play-skills-gitlab-245) - Updated play-skill links in `AgentFooterCard` + `TimeCurveSimpleAgentCard` skill list - Cross-linked [`skills/README.md`](skills/README.md) → #245 invariants ### Verified locally (infra left running; no restart) - [x] `bash scripts/sync-bot-env-from-frontend.sh` writes `bots/timearena/.env.local` - [x] `cd bots/timearena && pytest tests -q` — **18 passed** - [x] `timecurve-bot inspect` against Anvil `0x2279…` — OK (podium rows, deadline, charm price) - [x] Legacy play skills absent (`play-timecurve-doubloon` directory gone) - [x] Anvil `:8545` + indexer `:3100` `/healthz` OK - [ ] Indexer `GET /v1/arena/timers` returned `chain_timer_unavailable` on this stack (not restarted per instructions) ### Remaining follow-up (not blocking #245 acceptance, but affects agent players) - `TimeCurveSimpleAgentCard.tsx` body still documents removed **`/v1/timecurve/*`** routes and TimeCurve Python sketches — track under **#266** / agent-card refresh - Confirm whether requested issue **#2405** was a typo for **#245** or a not-yet-created issue ### Checklist for @brouie - [ ] Confirm intended issue ID (**2405** vs **245**) - [ ] `bash scripts/sync-bot-env-from-frontend.sh` + `timecurve-bot inspect` on your Anvil stack - [ ] Agent footer on `/arena` links resolve to existing `skills/play-time-arena-*` files - [ ] `grep -R play-timecurve-doubloon skills/` returns empty - [ ] Optional: re-index or restart indexer if `GET /v1/arena/timers` should not be `chain_timer_unavailable` **Status:** leaving **#245 open** pending confirmation on issue **#2405** and agent-card legacy content. @brouie
PlasticDigits commented 2026-05-30 13:39:05 +00:00 (Migrated from gitlab.com)

mentioned in issue #241

mentioned in issue #241
PlasticDigits commented 2026-05-30 13:41:47 +00:00 (Migrated from gitlab.com)

mentioned in commit 0befae3f23

mentioned in commit 0befae3f232195e02ccb5774040b98eadf744390
PlasticDigits commented 2026-05-30 13:41:47 +00:00 (Migrated from gitlab.com)

mentioned in commit eac3b090e9

mentioned in commit eac3b090e96e8cb186647461926b41f71ae2b6d4
PlasticDigits commented 2026-05-30 13:41:53 +00:00 (Migrated from gitlab.com)

#245 verification complete — TimeCurve → TimeArena rename

Confirmed #2405 was a typo for #245. Follow-up merge on main (eac3b09) completes the TimeCurve → TimeArena rename across routes, frontend modules, skills, and docs.

What changed (this pass)

Routes & nav

  • Primary nav: Time Arena → /arena (legacy /timecurve/* still redirects)
  • Footer hidden on exact /arena simple view (was /timecurve)

Frontend module rename

  • frontend/src/pages/timecurve/ → merged into frontend/src/pages/arena/
  • TimeCurveSimplePage → ArenaSimplePage, TimeCurveProtocolPage → ArenaProtocolPage, etc.
  • CSS: arena-simple-*, arena-subnav-*, arena-buy-spend-* (replacing timecurve-* classes)
  • Lib helpers: timeArena* modules (buy hub, math, Kumbaya, etc.)

Skills & docs

  • script-with-timecurve-local → script-with-timearena-local (README + guardrails cross-links)
  • Invariants INV-DOCS-245-* updated for new skill path

E2E

  • timecurve.spec.ts → arena.spec.ts; navigation tests expect /arena

Utility: scripts/rename-timecurve-to-timearena.py documents the bulk rename map.

Prior #245 bot/doc fixes (still on main from 0b099d4)

  • Bot inspect reads TimeArena fields; env sync uses VITE_TIME_ARENA_ADDRESS
  • Agent cards link arena play skills

Verification checklist

  • cd frontend && npm run typecheck — green
  • Header nav Time Arena lands on /arena
  • /timecurve and /timecurve/protocol redirect to /arena + /arena/protocol
  • /arena/protocol AUDIT tab works; data-testid="arena-live-buys-activity" visible
  • grep -R play-timecurve-doubloon skills/ — empty
  • ls skills/script-with-timearena-local/SKILL.md exists
  • bash scripts/sync-bot-env-from-frontend.sh && cd bots/timearena && pytest tests -q && timecurve-bot inspect

Remaining intentional legacy strings

  • timecurve-bot CLI package name (Python module timecurve_bot) — behavior targets TimeArena
  • fetchTimecurveBuys deprecated wrapper over fetchArenaBuys (BuyItem shape compat)
  • /art/icons/header-timecurve.png asset filename unchanged
  • Retired v1 TimeCurve contract references in historical docs/audits only

Closing #245 — reopen if any checklist item fails in your environment.

## #245 verification complete — TimeCurve → TimeArena rename Confirmed **#2405 was a typo for #245**. Follow-up merge on `main` (**`eac3b09`**) completes the TimeCurve → TimeArena rename across routes, frontend modules, skills, and docs. ### What changed (this pass) **Routes & nav** - Primary nav: **Time Arena** → `/arena` (legacy `/timecurve/*` still redirects) - Footer hidden on exact `/arena` simple view (was `/timecurve`) **Frontend module rename** - `frontend/src/pages/timecurve/` → merged into **`frontend/src/pages/arena/`** - `TimeCurveSimplePage` → **`ArenaSimplePage`**, `TimeCurveProtocolPage` → **`ArenaProtocolPage`**, etc. - CSS: **`arena-simple-*`**, **`arena-subnav-*`**, **`arena-buy-spend-*`** (replacing `timecurve-*` classes) - Lib helpers: **`timeArena*`** modules (buy hub, math, Kumbaya, etc.) **Skills & docs** - `script-with-timecurve-local` → **`script-with-timearena-local`** (README + guardrails cross-links) - Invariants **`INV-DOCS-245-*`** updated for new skill path **E2E** - `timecurve.spec.ts` → **`arena.spec.ts`**; navigation tests expect `/arena` **Utility:** `scripts/rename-timecurve-to-timearena.py` documents the bulk rename map. ### Prior #245 bot/doc fixes (still on main from `0b099d4`) - Bot `inspect` reads TimeArena fields; env sync uses `VITE_TIME_ARENA_ADDRESS` - Agent cards link arena play skills ### Verification checklist - [ ] `cd frontend && npm run typecheck` — green - [ ] Header nav **Time Arena** lands on `/arena` - [ ] `/timecurve` and `/timecurve/protocol` redirect to `/arena` + `/arena/protocol` - [ ] `/arena/protocol` AUDIT tab works; `data-testid="arena-live-buys-activity"` visible - [ ] `grep -R play-timecurve-doubloon skills/` — empty - [ ] `ls skills/script-with-timearena-local/SKILL.md` exists - [ ] `bash scripts/sync-bot-env-from-frontend.sh && cd bots/timearena && pytest tests -q && timecurve-bot inspect` ### Remaining intentional legacy strings - **`timecurve-bot`** CLI package name (Python module `timecurve_bot`) — behavior targets TimeArena - **`fetchTimecurveBuys`** deprecated wrapper over `fetchArenaBuys` (BuyItem shape compat) - **`/art/icons/header-timecurve.png`** asset filename unchanged - Retired v1 **TimeCurve** contract references in historical docs/audits only Closing **#245** — reopen if any checklist item fails in your environment.
PlasticDigits (Migrated from gitlab.com) closed this issue 2026-05-30 13:41:54 +00:00
PlasticDigits commented 2026-05-30 13:49:48 +00:00 (Migrated from gitlab.com)

mentioned in commit 895a53c38f

mentioned in commit 895a53c38fc12a126a11f807d85d339195517636
PlasticDigits commented 2026-06-01 10:48:22 +00:00 (Migrated from gitlab.com)

mentioned in issue #274

mentioned in issue #274
PlasticDigits commented 2026-06-01 11:03:19 +00:00 (Migrated from gitlab.com)

mentioned in issue #275

mentioned in issue #275
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#245
No description provided.