Soft auto-apply (retract + confirm, no self-training) + tagging UX (reject-rest, tag-input race, modal playlist) #197

Merged
bvandeusen merged 12 commits from dev into main 2026-07-06 21:03:30 -04:00
2 changed files with 8 additions and 18 deletions
Showing only changes of commit 7d3a3b4a83 - Show all commits
@@ -1,10 +1,11 @@
"""stricter auto-apply defaults (milestone 139) — cut graduate/auto-apply misfires
"""stricter auto-apply defaults (milestone 139) — cut auto-apply misfires
head_auto_apply_precision 0.97→0.98, head_auto_apply_min_positives 30→50,
ccip_auto_apply_threshold 0.92→0.95 (operator-asked 2026-07-06). The model
defaults change for fresh installs; here we bump the existing singleton row IFF
it is still at the previous default, so a deliberate operator change is NOT
clobbered.
head_auto_apply_min_positives 30→50 and ccip_auto_apply_threshold 0.92→0.95
(operator-asked 2026-07-06). The head graduation precision bar stays 0.97 — the
operator confirmed the general-tag confidence was already well tuned; only the
support floor + the CCIP match confidence are raised. The model defaults change
for fresh installs; here we bump the existing singleton row IFF it is still at
the previous default, so a deliberate operator change is NOT clobbered.
Revision ID: 0081
Revises: 0080
@@ -21,10 +22,6 @@ depends_on: Union[str, Sequence[str], None] = None
def upgrade() -> None:
op.execute(
"UPDATE ml_settings SET head_auto_apply_precision = 0.98 "
"WHERE head_auto_apply_precision = 0.97"
)
op.execute(
"UPDATE ml_settings SET head_auto_apply_min_positives = 50 "
"WHERE head_auto_apply_min_positives = 30"
@@ -36,10 +33,6 @@ def upgrade() -> None:
def downgrade() -> None:
op.execute(
"UPDATE ml_settings SET head_auto_apply_precision = 0.97 "
"WHERE head_auto_apply_precision = 0.98"
)
op.execute(
"UPDATE ml_settings SET head_auto_apply_min_positives = 30 "
"WHERE head_auto_apply_min_positives = 50"
+1 -4
View File
@@ -51,10 +51,7 @@ class MLSettings(Base):
Integer, nullable=False, default=8
)
head_auto_apply_precision: Mapped[float] = mapped_column(
# Stricter graduation bar (was 0.97) to cut auto-apply misfires
# (operator-asked 2026-07-06): a higher precision target → fewer heads
# graduate and those that do get a higher per-head auto_apply_threshold.
Float, nullable=False, default=0.98
Float, nullable=False, default=0.97
)
# Earned auto-apply (#114). A graduated head fires (tags images without a
# human) when this master switch is on AND the head has at least