From 2ef2e48f8a2083f2d2fe08929d7f149705425b86 Mon Sep 17 00:00:00 2001 From: johba Date: Mon, 23 Mar 2026 18:07:12 +0000 Subject: [PATCH] chore: gardener housekeeping 2026-03-23 AGENTS.md watermarks refreshed to HEAD (209e0c7). Key content updates: - root AGENTS.md: added packages/analytics/ to directory map - landing/AGENTS.md: documented @harb/analytics integration and Umami funnel tracking - web-app/AGENTS.md: documented analytics events (wallet_connect, swap_initiated, stake_created) - onchain/AGENTS.md: documented AttackRunner fixes (taxRate as index, vm.warp, same-broadcast recenter), 2000-trade floor-ratchet evidence Pending actions (6): promote #1083 and #1086 to backlog, unblock #1099. --- AGENTS.md | 3 +- formulas/AGENTS.md | 2 +- gardener/pending-actions.json | 66 +++++++++++--------------------- kraiken-lib/AGENTS.md | 2 +- landing/AGENTS.md | 12 +++++- onchain/AGENTS.md | 5 ++- scripts/harb-evaluator/AGENTS.md | 2 +- services/ponder/AGENTS.md | 2 +- services/txnBot/AGENTS.md | 2 +- web-app/AGENTS.md | 14 ++++++- 10 files changed, 57 insertions(+), 53 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 11bf5a1..0b63999 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -1,4 +1,4 @@ - + # Agent Brief: Harb Stack ## What is KRAIKEN? @@ -20,6 +20,7 @@ KRAIKEN couples Harberger-tax staking with a dominant Uniswap V3 liquidity manag | `services/txnBot/` | Automation bot for `recenter()` and `payTax()` upkeep | [services/txnBot/AGENTS.md](services/txnBot/AGENTS.md) | | `formulas/` | TOML pipeline definitions (sense/act) for the evaluator | [formulas/AGENTS.md](formulas/AGENTS.md) | | `scripts/` | `dev.sh`, bootstrap, build helpers; `harb-evaluator/` red-team agent | [scripts/harb-evaluator/AGENTS.md](scripts/harb-evaluator/AGENTS.md) | +| `packages/analytics/` | `@harb/analytics` — self-hosted Umami wrapper for funnel tracking | — | | `tests/e2e/` | Playwright end-to-end tests | — | | `docs/` | Architecture, product truth, environment, ops guides | — | diff --git a/formulas/AGENTS.md b/formulas/AGENTS.md index 5a3d555..986f119 100644 --- a/formulas/AGENTS.md +++ b/formulas/AGENTS.md @@ -1,4 +1,4 @@ - + # Agent Brief: Formulas Formulas are TOML files that declare automated pipeline jobs for the harb evaluator. diff --git a/gardener/pending-actions.json b/gardener/pending-actions.json index 7f867ae..355c22a 100644 --- a/gardener/pending-actions.json +++ b/gardener/pending-actions.json @@ -1,52 +1,32 @@ [ + { + "action": "edit_body", + "issue": 1086, + "body": "Flagged by AI reviewer in PR #1065.\n\n## Problem\n\nBoth `candidate_commit` and `methodology` were added to `evidence/README.md` without a corresponding schema update. Future red-team runners have no schema definition for these fields, and automated validators may reject the file.\n\n## Affected files\n\n- `evidence/README.md` — add schema entries for `candidate_commit` and `methodology` fields\n\n## Acceptance criteria\n\n- [ ] `evidence/README.md` schema section defines the `candidate_commit` field (commit SHA of the optimizer candidate under test)\n- [ ] `evidence/README.md` schema section defines the `methodology` field (how the red-team run was conducted, e.g. snapshot-isolation)\n- [ ] Schema changes are backward-compatible with existing evidence JSON files\n\n## Related\n\n- #1083 (sibling — snapshot-isolation methodology doc for lm_eth fields)\n\n---\n*Auto-created from AI review of PR #1065*" + }, { "action": "add_label", + "issue": 1086, + "label": "backlog" + }, + { + "action": "edit_body", + "issue": 1083, + "body": "Flagged by AI reviewer in PR #1065.\n\n## Problem\n\n`evidence/README.md` is silent on whether `lm_eth_before`/`lm_eth_after` reflect cumulative or per-attack-reverted state. Now that snapshot isolation is the standard practice, the schema should define this so the fields are unambiguous to future test runners and the planner.\n\n## Affected files\n\n- `evidence/README.md` — add snapshot-isolation methodology section defining lm_eth field semantics\n\n## Acceptance criteria\n\n- [ ] `evidence/README.md` schema defines that `lm_eth_before`/`lm_eth_after` reflect per-attack state after snapshot isolation (not cumulative historical balance)\n- [ ] Schema clarifies that each attack begins from the same initial state via `vm.snapshot()`/`vm.revertTo()`\n- [ ] Schema clarifies that snapshot isolation is the standard methodology for all red-team runs\n\n## Related\n\n- #1086 (sibling — candidate_commit and methodology field schema)\n\n---\n*Auto-created from AI review of PR #1065*" + }, + { + "action": "add_label", + "issue": 1083, + "label": "backlog" + }, + { + "action": "remove_label", "issue": 1099, - "label": "backlog" - }, - { - "action": "add_label", - "issue": 1100, - "label": "backlog" - }, - { - "action": "add_label", - "issue": 1101, - "label": "backlog" + "label": "blocked" }, { "action": "comment", - "issue": 1103, - "body": "Closing as actioned. This prediction was logged and labeled prediction/actioned. The underlying issue (preflight.sh CI DB unreachable) has been noted by the team. Closing to keep the backlog clean." - }, - { - "action": "close", - "issue": 1103, - "reason": "prediction actioned and stale" - }, - { - "action": "comment", - "issue": 1107, - "body": "Closing as actioned. The double-crash on 2026-03-21 was transient — subsequent gardener runs including 2026-03-22 06:00 and 2026-03-23 07:03 completed successfully (PHASE:done). No recurring crash pattern observed. Closing." - }, - { - "action": "close", - "issue": 1107, - "reason": "transient crash resolved — subsequent runs successful" - }, - { - "action": "comment", - "issue": 1020, - "body": "Closing: evidence/evolution/ now contains data (best.push3). The fitness baseline absence predicted here has been resolved." - }, - { - "action": "close", - "issue": 1020, - "reason": "evidence/evolution/ now populated with best.push3" - }, - { - "action": "comment", - "issue": 1022, - "body": "Partial resolution: evidence/holdout/ now contains 2026-03-22-issue517-adversarial-lp.json. evidence/user-test/ remains empty — UX conversion signal still absent. Keeping open for user-test gap." + "issue": 1099, + "body": "Unblocked: all upstream prerequisites (#1031, #997, #1067, #1054) closed. Dev-agent attempted PR #1139 but CI exhausted — blocked label removed so issue re-enters the queue for retry." } ] diff --git a/kraiken-lib/AGENTS.md b/kraiken-lib/AGENTS.md index 9927eeb..21ee8ab 100644 --- a/kraiken-lib/AGENTS.md +++ b/kraiken-lib/AGENTS.md @@ -1,4 +1,4 @@ - + # Kraiken Library - Agent Guide Shared TypeScript helpers used by the landing app, txnBot, and other services to talk to KRAIKEN contracts and the Ponder GraphQL API. diff --git a/landing/AGENTS.md b/landing/AGENTS.md index d3e3128..a6e4d6d 100644 --- a/landing/AGENTS.md +++ b/landing/AGENTS.md @@ -1,4 +1,4 @@ - + # Landing Interface - Agent Guide Vue 3 + Vite application that delivers the public marketing site and forthcoming staking UI. @@ -10,6 +10,7 @@ Vue 3 + Vite application that delivers the public marketing site and forthcoming - `@wagmi/vue` for wallet connection (injected, WalletConnect, Coinbase Wallet) - `@tanstack/vue-query` — required peer dependency of `@wagmi/vue`; must be registered via `VueQueryPlugin` in `main.ts` - `@harb/web3` shared composables for wagmi config and wallet hooks +- `@harb/analytics` — self-hosted Umami wrapper; call `initAnalytics(url, id)` in `main.ts`, use `trackCtaClick(label)` via the `navigateCta` helper in views ## Key Views & Components - `HomeView.vue` - Launch countdown, feature overview, and staking CTA @@ -32,6 +33,15 @@ Vue 3 + Vite application that delivers the public marketing site and forthcoming - `npm run type-check` - Deployments assume hash-based routing and the Vite `base` setting configured for static hosting. +## Analytics + +The landing page uses `@harb/analytics` (a self-hosted Umami wrapper) for conversion funnel tracking. + +- `initAnalytics(VITE_UMAMI_URL, VITE_UMAMI_WEBSITE_ID)` is called in `main.ts` — the Umami `