From 5759e18b9c9af00861a5b877e2a42b833c7252a9 Mon Sep 17 00:00:00 2001 From: root Date: Thu, 2 Jul 2026 00:06:49 +0200 Subject: [PATCH 1/3] docs(issues): add YAML issue forms (bug, feature) + config - .forgejo/ISSUE_TEMPLATE/bug.yml - .forgejo/ISSUE_TEMPLATE/feature.yml - .forgejo/ISSUE_TEMPLATE/config.yml: blank_issues_enabled=false, contact_links to discussions (Q&A, Feature Requests, Announcements) Discussions per repo land in a separate follow-up commit. --- .forgejo/ISSUE_TEMPLATE/bug.yml | 86 +++++++++++++++++++++++++++++ .forgejo/ISSUE_TEMPLATE/config.yml | 11 ++++ .forgejo/ISSUE_TEMPLATE/feature.yml | 83 ++++++++++++++++++++++++++++ 3 files changed, 180 insertions(+) create mode 100644 .forgejo/ISSUE_TEMPLATE/bug.yml create mode 100644 .forgejo/ISSUE_TEMPLATE/config.yml create mode 100644 .forgejo/ISSUE_TEMPLATE/feature.yml diff --git a/.forgejo/ISSUE_TEMPLATE/bug.yml b/.forgejo/ISSUE_TEMPLATE/bug.yml new file mode 100644 index 0000000..00b60d2 --- /dev/null +++ b/.forgejo/ISSUE_TEMPLATE/bug.yml @@ -0,0 +1,86 @@ +name: Bug Report +description: Report a defect or unexpected behavior +title: "[Bug]: " +labels: ["bug", "triage"] +body: + - type: markdown + attributes: + value: | + Thanks for reporting a bug. Please fill in the sections below. + + - type: input + id: version + attributes: + label: Version + description: Tag, branch, or commit SHA where the bug reproduces + placeholder: "v1.2.3 or main@abc1234" + validations: + required: true + + - type: dropdown + id: severity + attributes: + label: Severity + description: How bad is the impact? + options: + - Critical (data loss, security, total outage) + - High (major feature broken, no workaround) + - Medium (feature broken, workaround exists) + - Low (minor, cosmetic) + validations: + required: true + + - type: textarea + id: summary + attributes: + label: What happened? + description: Clear, factual description of the bug + placeholder: | + Expected: ... + Actual: ... + validations: + required: true + + - type: textarea + id: repro + attributes: + label: Steps to reproduce + description: Numbered steps. Include URLs, commands, inputs. + placeholder: | + 1. Go to /scanner/scan + 2. Enter address 0x... + 3. Click "Analyze" + 4. See "undefined" instead of risk score + render: shell + validations: + required: true + + - type: textarea + id: logs + attributes: + label: Logs / errors / stack trace + description: Paste relevant output. Use a code block. + render: shell + placeholder: | + ``` + 2026-07-02T10:00:00 ERROR ... + ``` + + - type: input + id: env + attributes: + label: Environment + description: OS, browser, runtime version, etc. + placeholder: "macOS 14.5, Chrome 125, Node 22.3" + + - type: checkboxes + id: checks + attributes: + label: Pre-submit checks + options: + - label: I searched existing issues and didn't find a duplicate + required: true + - label: I can reproduce this on `main` HEAD + required: false + - label: I'm willing to submit a PR + required: false diff --git a/.forgejo/ISSUE_TEMPLATE/config.yml b/.forgejo/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..1b3d921 --- /dev/null +++ b/.forgejo/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,11 @@ +blank_issues_enabled: false +contact_links: + - name: Q&A + url: https://git.rugmunch.io/RugMunchMedia/walletpress/discussions/new?category=q-a + about: Use this for questions and troubleshooting + - name: Feature Requests + url: https://git.rugmunch.io/RugMunchMedia/walletpress/discussions/new?category=feature-requests + about: Suggest a new feature or improvement (preview / brainstorm) + - name: Announcements + url: https://git.rugmunch.io/RugMunchMedia/walletpress/discussions/new?category=announcements + about: Stay up to date on releases and changes diff --git a/.forgejo/ISSUE_TEMPLATE/feature.yml b/.forgejo/ISSUE_TEMPLATE/feature.yml new file mode 100644 index 0000000..c9b206d --- /dev/null +++ b/.forgejo/ISSUE_TEMPLATE/feature.yml @@ -0,0 +1,83 @@ +name: Feature Request +description: Propose a new feature or improvement +title: "[Feature]: " +labels: ["enhancement", "triage"] +body: + - type: markdown + attributes: + value: | + Use this for new features or improvements. For bugs, use the Bug Report template. + + - type: dropdown + id: area + attributes: + label: Area + description: Which product / surface does this affect? + options: + - RMI (scanner / dashboard) + - Pry (crawler) + - WalletPress + - RugCharts + - RugMaps + - x402 Gateway + - Infra / CI / tooling + - Other + validations: + required: true + + - type: textarea + id: problem + attributes: + label: Problem / motivation + description: What user pain or gap does this address? Why is it worth building? + placeholder: | + As a , I want to , so that . + validations: + required: true + + - type: textarea + id: proposal + attributes: + label: Proposed solution + description: How would you build it? API, UI, data model. + placeholder: | + - Add new endpoint POST /api/v1/... + - Add new column `risk_score` to `tokens` table + - Add new React component `RiskBadge` + + - type: textarea + id: alternatives + attributes: + label: Alternatives considered + description: Other ways to solve this. Why this approach? + + - type: textarea + id: scope + attributes: + label: Acceptance criteria + description: How do we know it's done? Checklist. + placeholder: | + - [ ] Endpoint returns + - [ ] Tests cover happy + edge cases + - [ ] Docs updated + - [ ] No new lint errors + + - type: checkboxes + id: effort + attributes: + label: Effort estimate + options: + - Small (< 1 day) + - Medium (1-3 days) + - Large (1-2 weeks) + - XL (2+ weeks, breaking change) + + - type: checkboxes + id: checks + attributes: + label: Pre-submit checks + options: + - label: I searched existing issues and didn't find a duplicate + required: true + - label: I'm willing to submit a PR + required: false From 560a17bbe60b0a357c348ea70f7eebc20fbce8cd Mon Sep 17 00:00:00 2001 From: cryptorugmunch Date: Fri, 3 Jul 2026 15:56:28 +0200 Subject: [PATCH 2/3] docs: rewrite README and add PRODUCT, ARCHITECTURE, ROADMAP, TODO per governance framework --- PRODUCT.md | 46 ++++++++++++++++++++++++++++++++++++++++++++++ TODO.md | 19 +++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 PRODUCT.md create mode 100644 TODO.md diff --git a/PRODUCT.md b/PRODUCT.md new file mode 100644 index 0000000..90d0ab7 --- /dev/null +++ b/PRODUCT.md @@ -0,0 +1,46 @@ +# WalletPress — Product Charter + +**Product:** WalletPress +**Repo:** git.rugmunch.io/RugMunchMedia/walletpress +**Deploy path:** /srv/walletpress/ on Talos +**Container:** walletpress-backend +**Health:** http://127.0.0.1:8010/health +**Status:** Active development + +## Problem +WordPress sites and applications need an integrated multi-chain wallet engine, key vault, and x402 micropayment layer without building it from scratch. + +## User +- WordPress site operators +- SaaS builders needing wallet generation +- Operators managing chain vaults + +## Scope +- Python FastAPI backend +- WordPress plugin (PHP/JS) +- Wallet engine + chain vault +- x402 service for micropayments +- CLI tool for wallet management +- Standalone MCP server + +## Anti-scope +- No token scanning (lives in rmi-backend) +- No web scraping (lives in pryscraper) +- No social feed (lives in degenfeed-web) +- No RMI frontend code + +## Success criteria +- /health returns ok +- CI green +- All files <500 lines +- WP plugin installable from zip +- MCP tools typed + +## Current reality +- Health returns ok +- Best pre-commit hooks in fleet (web3-safety + hallucination-check) +- 11 files >500 lines +- 112 f-string logs, 2 bare except, 1 time.sleep + +## Fleet dependencies +- None standalone; can use rmi-backend for risk data diff --git a/TODO.md b/TODO.md new file mode 100644 index 0000000..85dbfac --- /dev/null +++ b/TODO.md @@ -0,0 +1,19 @@ +# WalletPress — TODO + +## Active +- [ ] Split 11 files >500 lines +- [ ] Convert 112 f-string logs to structured logs +- [ ] Fix 2 bare except clauses +- [ ] Replace 1 time.sleep with asyncio.sleep + +## Next +- [ ] Add GitHub Actions CI if missing +- [ ] Add PRODUCT.md and TODO.md to pre-commit protected docs list +- [ ] Define WP plugin release process + +## Blocked +- None + +## Done +- ARCHITECTURE.md and ROADMAP.md exist +- Pre-commit hooks include web3-safety and hallucination-check From a82b15ded5eab91ff2c850444cfadc42b9771a3a Mon Sep 17 00:00:00 2001 From: cryptorugmunch Date: Mon, 6 Jul 2026 14:17:32 +0200 Subject: [PATCH 3/3] chore(walletpress): add .gitattributes (fleet standard) --- .gitattributes | 79 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 .gitattributes diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..68eddfb --- /dev/null +++ b/.gitattributes @@ -0,0 +1,79 @@ +# .gitattributes — Rug Munch Media fleet standard +# See https://git.rugmunch.io/RugMunchMedia/standards for source of truth. + +# ── Line endings ─────────────────────────────────────────────── +* text=auto eol=lf + +# Shell scripts must use LF even on Windows checkouts +*.sh text eol=lf +*.bash text eol=lf + +# Windows-native scripts keep CRLF +*.bat text eol=crlf +*.cmd text eol=crlf +*.ps1 text eol=crlf + +# ── Binary defaults ──────────────────────────────────────────── +*.png binary +*.jpg binary +*.jpeg binary +*.gif binary +*.ico binary +*.webp binary +*.pdf binary +*.zip binary +*.gz binary +*.tgz binary +*.tar binary +*.bz2 binary +*.xz binary +*.7z binary +*.rar binary +*.mp4 binary +*.mp3 binary +*.wav binary +*.mov binary +*.avi binary +*.woff binary +*.woff2 binary +*.ttf binary +*.eot binary +*.otf binary +*.so binary +*.dll binary +*.dylib binary +*.pyc binary +*.pyo binary +*.pyd binary +*.o binary +*.a binary +*.lib binary + +# ── Linguist overrides ───────────────────────────────────────── +# Mark vendor / vendored / generated so they don't pollute stats +vendor/ linguist-vendored +node_modules/ linguist-vendored +__pycache__/ linguist-vendored +*.min.js linguist-vendored +*.min.css linguist-vendored +dist/ linguist-vendored +build/ linguist-vendored +coverage/ linguist-vendored +pnpm-lock.yaml linguist-generated +package-lock.json linguist-generated +yarn.lock linguist-generated + +# Markdown documentation +*.md linguist-documentation +docs/ linguist-documentation + +# Makefile +Makefile linguist-language=Makefile +*.mk linguist-language=Makefile + +# ── Diff & merge ─────────────────────────────────────────────── +*.json diff=json +*.lock -diff +package-lock.json -diff +pnpm-lock.yaml -diff +yarn.lock -diff \ No newline at end of file