blob: b629f0fed39fdf1dcf8c7bd8b35d7921c00e23e3 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
# Held Posts Toggle Design
## Goal
Add a user setting that allows Moebooru providers to include held posts in the feed when desired, while preserving current default ordering behavior.
## Problem
Konachan and yande.re API results can diverge from website ordering because held posts are included unless explicitly filtered. We currently force `holds:false` by default to match the website feed, but users need an option to view held posts.
## Decision
Implement a global persisted setting: `showHeldMoebooruPosts` (default `false`).
- When `false`: Moebooru requests continue to append `holds:false` unless user already provides `holds:*`.
- When `true`: Moebooru requests do not add a default `holds:false` filter; explicit `holds:*` tags still win.
## Scope
- Data model: Add `@AppStorage` boolean to `SettingsManager`.
- Networking: Thread the setting into `BooruManager` and its Moebooru tag helper.
- UI: Add a toggle in Provider settings.
- Wiring: Rebuild `BooruManager` when setting changes so feed refresh reflects the new mode.
- Tests: Add source-based checks for setting persistence, manager wiring, and Moebooru filter behavior.
## Non-Goals
- Per-provider held-post settings.
- Changing Danbooru/Gelbooru behavior.
- Advanced moderation controls beyond `holds:*` behavior.
## Rollout Behavior
- Existing users default to `false`, preserving current website-aligned feed order.
- Users can opt in to include held posts through settings.
|