• fenliu-1.3.1 b8df681f7a

    fenliu-1.3.1 Stable

    marvin8 released this 2026-07-04 05:36:41 +00:00 | 147 commits to main since this release

    Signed by marvin8
    SSH key fingerprint: SHA256:cyGOzvyFNw+A8J/LVjRif8v3KZLo8seQDVZbk/IhNhI

    [fenliu-1.3.1] - 2026-07-04

    Documentation

    • 📝 document ML model volume security in container deployment
    • 📝 update fenliu mkdocs site_url to fenliu.marvin.zone
    • 📝 fix ML model security docs: remove incorrect read-only volume advice
    • 📝 fix chmod 750 phrasing and mkdocs repo_url

    Security

    • 🔒 add SHA-256 manifest to ML artifact save/load

    Testing

    • add artifact integrity verification tests
    Downloads
  • fenliu-1.3.0 3391aa0323

    fenliu-1.3.0 Stable

    marvin8 released this 2026-07-04 02:42:10 +00:00 | 158 commits to main since this release

    Signed by marvin8
    SSH key fingerprint: SHA256:cyGOzvyFNw+A8J/LVjRif8v3KZLo8seQDVZbk/IhNhI

    [fenliu-1.3.0] - 2026-07-04

    Documentation

    • 📝 add ML confidence docs and update integration guide
    • 📝 tick off completed Phase C checklist items

    Features

    • add ml_confidence_score column to Post and PostResponse
    • add MLInferenceService with graceful degradation
    • score posts with ML model at fetch time
    • add ML confidence badge and missing-model banner to review UI
    • add uncertainty-first queue sort for ML confidence
    • add ML confidence range filter to review queue
    • add nightly ML retraining job to scheduler
    • add per-page selector to review queue (20 / 50 / 100)
    • replace ML confidence range inputs with Likely Approve/Unsure/Likely Reject preset

    Testing

    • fix liveview tests for ml_confidence_preset and dynamic default sort
    Downloads
  • zhongli-2026.6.30 3661386a0f

    marvin8 released this 2026-06-30 06:26:30 +00:00 | 185 commits to main since this release

    Signed by marvin8
    SSH key fingerprint: SHA256:cyGOzvyFNw+A8J/LVjRif8v3KZLo8seQDVZbk/IhNhI

    [zhongli-2026.6.30] - 2026-06-30

    Bug Fixes

    • 🐛 zhongli: tighten noBot word-boundary matching, add happy-path test

    Documentation

    • 📝 zhongli: document noBot/noIndex opt-out behaviour

    Features

    • zhongli: add NoBotFilter for noBot/noIndex opt-out detection
    • zhongli: integrate NoBotFilter into boost pipeline

    Refactoring

    • ♻️ zhongli: extract helpers to reduce complexity in circuit breaker decorators
    Downloads
  • zhongli-2026.6.24 050aa82f76

    marvin8 released this 2026-06-23 20:57:31 +00:00 | 198 commits to main since this release

    Signed by marvin8
    SSH key fingerprint: SHA256:cyGOzvyFNw+A8J/LVjRif8v3KZLo8seQDVZbk/IhNhI

    [zhongli-2026.6.24] - 2026-06-23

    Bug Fixes

    • 🐛 zhongli: remove privilege drop that fails in rootless podman
    • 🐛 zhongli: remove hidden default of 5 from max_reblog
    Downloads
  • zhongli-2026.6.23 e2c8827039

    marvin8 released this 2026-06-22 20:32:11 +00:00 | 205 commits to main since this release

    Signed by marvin8
    SSH key fingerprint: SHA256:cyGOzvyFNw+A8J/LVjRif8v3KZLo8seQDVZbk/IhNhI

    [zhongli-2026.6.23] - 2026-06-22

    CI

    • 👷 add pylock.toml generation to bumpversion hooks
    • 👷 add zaojun license checking with git-cliff ignore
    • 👷 add ty pre-commit hook to package-level configs
    • 👷 remove redundant uv-lock from package prek configs

    Documentation

    • Docs(zhongli): update changelog for 2026.6.23

    Refactoring

    • ♻️ zhongli: remove injected httpx client; migrate to APClient 2.0
    Downloads
  • fenliu-1.1.2 950470321b

    fenliu-1.1.2 Stable

    marvin8 released this 2026-06-22 09:54:22 +00:00 | 210 commits to main since this release

    Signed by marvin8
    SSH key fingerprint: SHA256:cyGOzvyFNw+A8J/LVjRif8v3KZLo8seQDVZbk/IhNhI

    [fenliu-1.1.2] - 2026-06-22

    Documentation

    • 📝 accept L4 audit finding: bootstrap key not exposed via stdout
    • 📝 clarify L1 audit annotation to distinguish permission fix from exc_info retention
    Downloads
  • fenliu-1.2.0 56094183c7

    fenliu-1.2.0 Stable

    marvin8 released this 2026-06-16 08:07:52 +00:00 | 222 commits to main since this release

    Signed by marvin8
    SSH key fingerprint: SHA256:cyGOzvyFNw+A8J/LVjRif8v3KZLo8seQDVZbk/IhNhI

    [fenliu-1.2.0] - 2026-06-16

    Bug Fixes

    • 🐛 fix CSP to allow Tailwind CDN, Font Awesome CDN, and LiveView WebSocket
    • 🐛 add unsafe-inline to script-src; all UI templates use inline scripts
    • 🐛 allow https: in img-src; Fediverse media comes from arbitrary external instances

    CI

    • 👷 add pylock.toml generation to bumpversion hooks
    • 👷 add zaojun license checking with git-cliff ignore
    • 👷 add ty pre-commit hook to package-level configs
    • 👷 remove redundant uv-lock from package prek configs

    Documentation

    • 📝 add MkDocs hook that generates llms.txt and llms-full.txt
    • 📝 mark M4 and M5 resolved in security audit docs
    • 📝 mark M2 and M3 resolved in security audit docs

    Refactoring

    • ♻️ fenliu: update FediverseClient for APClient 2.0 lifecycle

    Security

    • 🔒 replace _HTMLStripper with nh3 (M5)
    • 🔒 sanitize Fediverse post HTML in admin UI (M4)
    • 🔒 add javascript: href test; fix README What's New count
    • 🔒 add SecurityHeadersMiddleware and CORSMiddleware (M2, M3)
    • 🔒 externalize inline JS from dashboard, hashtag-streams, topical-tags
    • 🔒 externalize inline JS from queue-preview and settings; convert inline event handlers
    • 🔒 externalize stats JS via JSON island; add cdn.jsdelivr.net to CSP; drop unsafe-inline from script-src
    • 🔒 fix keydown listener leak in image modal teardown
    • 🔒 add RateLimitMiddleware with sliding-window per-IP rate limiting
    • 🔒 mark M1 resolved in security audit documents
    • 🔒 use exact path membership test for bootstrap rate limit tier
    • 🔒 force starlette>=1.3.1 via workspace override; ignore in pysentry

    Testing

    • fenliu: update test_fediverse.py for APClient 2.0 lifecycle
    • add failing tests for security headers and CORS policy (M2, M3)
    • add 404 security headers test; clarify audit doc middleware ordering
    • fail test: assert no unsafe-inline in script-src CSP
    Downloads
  • fenliu-1.1.1 ca7f40f331

    fenliu-1.1.1 Stable

    marvin8 released this 2026-06-04 06:32:40 +00:00 | 276 commits to main since this release

    Signed by marvin8
    SSH key fingerprint: SHA256:cyGOzvyFNw+A8J/LVjRif8v3KZLo8seQDVZbk/IhNhI

    [fenliu-1.1.1] - 2026-06-04

    Bug Fixes

    • 🐛 fenliu: fix UI_AUTH_ENABLED env guard in test_ui_auth.py

    Documentation

    • 📝 fenliu: mark H3 and H4 resolved in security audit; add resolution notes

    Security

    • 🔒 fenliu: H3 - return static messages for API errors, log exception server-side
    • 🔒 fenliu: H4 - chown /app/data to fenliu before chmod, set mode 0o750

    Testing

    • fenliu: add tests for H3 exception detail leak
    • fenliu: add tests for H4 container data dir permissions
    Downloads
  • zhongli-2026.6.4 6e9c93650a

    marvin8 released this 2026-06-04 02:15:47 +00:00 | 284 commits to main since this release

    Signed by marvin8
    SSH key fingerprint: SHA256:cyGOzvyFNw+A8J/LVjRif8v3KZLo8seQDVZbk/IhNhI

    [zhongli-2026.6.4] - 2026-06-04

    Documentation

    • 📝 zhongli: document federation side-channel in README (L1)
    • 📝 zhongli: mark L1 and L3 resolved in Security-Audit files
    • 📝 zhongli: fix Security-Audit status markers and executive summary

    Security

    • 🔒 zhongli: try resolve=False before federating in find_status_by_url (L1)
    • 🔒 zhongli: redact attachment URL paths from debug log (L3)
    • 🔒 zhongli: remove _url_origin; remove or reword debug logs per review (L3)

    Testing

    • zhongli: test two-phase resolve search behaviour (L1)
    • zhongli: test _url_origin strips path from attachment URL (L3)
    Downloads
  • fenliu-1.1.0 8ff5476815

    fenliu-1.1.0 Stable

    marvin8 released this 2026-05-25 20:54:54 +00:00 | 299 commits to main since this release

    Signed by marvin8
    SSH key fingerprint: SHA256:cyGOzvyFNw+A8J/LVjRif8v3KZLo8seQDVZbk/IhNhI

    [fenliu-1.1.0] - 2026-05-25

    Documentation

    • 📝 replace stale pytest references with tryke in CLAUDE.md files
    • 📝 fenliu: update docs for error_details and stats error detail section
    • 📝 fenliu: rewrite testing guide for tryke (closes #24)

    Features

    • fenliu: add error_details to Post, ErrorHistory, schema, and curated error endpoint
    • fenliu: show duplicate-attachment image comparison on stats page
    Downloads