From 4571d84cbdee797a819bde3a49c09d475f843b73 Mon Sep 17 00:00:00 2001 From: bakerboy448 <55419169+bakerboy448@users.noreply.github.com> Date: Tue, 20 Oct 2026 13:54:56 -0500 Subject: [PATCH] docs: make Devvit app autowikimod the supported runtime, deprecate Python bot Co-Authored-By: Claude Opus 5.5 --- CLAUDE.md | 4 +++- README.md | 2 +- devvit-migration/README.md | 2 +- devvit-migration/docs/STATUS.md | 22 +++++++++++++++++++--- 4 files changed, 24 insertions(+), 6 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index b8d2122..9c087fe 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -2,7 +2,9 @@ Automated Reddit moderation log publisher — writes mod actions to a subreddit wiki page on a schedule. -## Stack +The supported runtime is the Devvit Web app `autowikimod` in `devvit/` (TypeScript, Redis, cron). The Python bot below is deprecated: critical fixes only, no new features. `modlog_wiki_publisher.py` stays as the parity reference for `devvit/test/parity/`, so do not delete it. + +## Stack (deprecated Python bot) - Python 3.11 / PRAW (Reddit API) - SQLite (deduplication and retention) - Docker with s6-overlay (deployment) diff --git a/README.md b/README.md index f0406ca..07a0ab6 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ Publishes a subreddit's moderation log to a wiki page as daily markdown tables. Each row links to the post or comment (never a user profile), shows the removal reason text, and carries a prefilled modmail inquiry link. A SQLite database handles deduplication and retention, and one database can serve several subreddits. -A Reddit-hosted port, `autowikimod`, is in progress under [`devvit/`](devvit/) (no self-hosting, bot password, or SQLite). Status is in [`devvit-migration/README.md`](devvit-migration/README.md). The Python app below is the supported version. +> **Deprecated.** The supported runtime is now the Reddit-hosted [Devvit](https://developers.reddit.com/) app `autowikimod` in [`devvit/`](devvit/). It needs no self-hosting, no bot password and no SQLite. Install it from the Devvit app directory and set the wiki page in the app's subreddit settings. The Python bot documented below gets no new features and only critical fixes. It depends on password-grant Data API access, which Reddit is closing for unregistered scripts. See [`devvit/README.md`](devvit/README.md) and [`devvit-migration/docs/STATUS.md`](devvit-migration/docs/STATUS.md). ## Quick start (Docker) diff --git a/devvit-migration/README.md b/devvit-migration/README.md index f6a3a3b..43d8a93 100644 --- a/devvit-migration/README.md +++ b/devvit-migration/README.md @@ -25,4 +25,4 @@ Re-platforming the Python/PRAW **Reddit Modlog Wiki Publisher** into a **Devvit* ## Status -Ported to Devvit Web; type-check, tests, build and Python parity pass offline. Awaiting upload and a live run on r/OpenSignups. See [`docs/STATUS.md`](docs/STATUS.md). `docs/01..04` describe the earlier classic-model design. +`autowikimod` is the supported runtime. Version 0.0.3 is published (unlisted) and has run on r/OpenSignups since 2026-10-18. The Python container was retired the same day. See [`docs/STATUS.md`](docs/STATUS.md). `docs/01..04` describe the earlier classic-model design. diff --git a/devvit-migration/docs/STATUS.md b/devvit-migration/docs/STATUS.md index c1afd86..33ae7a9 100644 --- a/devvit-migration/docs/STATUS.md +++ b/devvit-migration/docs/STATUS.md @@ -2,8 +2,8 @@ | Field | Value | | --- | --- | -| Status | Ported to Devvit Web. Type-check, unit tests, build and Python parity pass offline. Not yet uploaded or playtested. | -| Date | 2026-10-15 | +| Status | Supported runtime. 0.0.3 published unlisted and installed on r/OpenSignups (page `modlog-devvit`). The Python container is being retired at cutover; its wiki page was archived to `modlog-archive` first. | +| Date | 2026-10-20 | | Branch | `feat/devvit-web` | | App name | `autowikimod` (`devvit/devvit.json`) | | Code root | `devvit/` (`@devvit/web` 0.14.8, Hono server, `@devvit/start` vite build to `dist/server/index.cjs`) | @@ -40,7 +40,23 @@ | Action list | stored but not used for the page (`show_only_removals=True`) | drives the page filter | Same output at the default list. | | Fetch size | 50 per 10 min | 500 per 20 min | Fewer, larger runs; dedup makes overlap harmless. | -## Needs a live playtest +## Live run on r/OpenSignups + +| Check | Result | +| --- | --- | +| Install | 0.0.3 installed 2026-10-18; first write to `modlog-devvit` at 03:20 UTC (204 rows, 500 actions). | +| Side-by-side with Python `modlog` | One overlap, 2026-10-18 03:20-03:42 UTC. Shared window from 2026-09-05: 190 of 196 rows identical. 3 differ by a since-deleted author name, and 3 by an approval reason that Python's `LIKE` match took from another target. | +| Cron | 7 revisions by `autowikimod` from 2026-10-18 to 2026-10-19; each new qualifying action is on the page. | +| FR-8 | Approvals with no prior Reddit/AutoModerator removal are left out, as in Python. | +| History | The first run reads the last 500 mod-log entries only, so the page starts at 2026-09-05. The Python page went back to 2026-07-15. | + +## Production cutover (open) + +1. In the r/OpenSignups app settings, set the wiki page to `modlog` and days kept to 365. +2. Run "Publish now" from the subreddit menu and check the `modlog` page revision author is `autowikimod`. +3. Keep `modlog-devvit` as an archive, or delete it. + +## Needs a live playtest (items 1-4 and 7 now pass on r/OpenSignups) Typed and unit-tested offline, but not yet run on Reddit: