[Phase 2] Auto-Indexing-on-Mutation aktivieren (Disclaimer raus) #452

Closed
opened 2026-06-09 07:03:19 +02:00 by pm-bot · 0 comments
Collaborator

Kontext

Phase-1 hat das Code-Wireup geliefert: useCreateList → onSourceChange → registry.publish. Deterministische Unit-Tests in apps/mobile/__tests__/mutation-observer.test.tsx sperren die Kette gegen Regression.

Aktuell deferred: auf /search zeigt DebugIndexBar einen Disclaimer 🛠 Debug — Auto-Indexing kommt erst mit der nächsten Iteration. Der IndexingService wird zwar konstruiert und an die Registry subscribed, aber die User-Mutationen lösen aktuell keinen sichtbaren Re-Index aus — Quellen bleibt auf 0 bis der User manuell Jetzt indexieren tappt.

Scope dieses Issues

  1. Disclaimer in apps/mobile/app/(drawer)/search.tsx entfernen.
  2. Sicherstellen, dass die IndexingService-Subscription auf der Registry tatsächlich Publishes konsumiert + via Stats-Stream im DebugIndexBar reflektiert wird, sobald irgendwo in der App eine Liste/Notiz angelegt/geändert/gelöscht wird (ohne dass /search zwingend offen ist? — siehe Diskussionspunkt).
  3. phase2-mutation-observer-smoke.yaml zurückrollen auf die Auto-Trigger-Variante (Quellen >= 1 ohne manuellen Jetzt indexieren-Tap).
  4. Roadmap-Eintrag rc20 (oder höher) mit deviceFinding.

Diskussionspunkt

Die aktuelle Architektur konstruiert IndexingService erst beim Mount von /search. Publishes vor diesem Punkt gehen verloren. Optionen:

  • (a) IndexingService im App-Bootstrap konstruieren (höhere Cold-Start-Kosten — op-sqlite + onnxruntime).
  • (b) Registry buffert Events bis erster Subscriber, dann replay.
  • (c) Akzeptieren, dass nur Mutationen ab erstem /search-Mount indexiert werden — Initial-Index läuft eh als Background-Job.

Out of scope

  • Mail-Indexing (warten auf #113-Mail-Stack-Pivot).
  • PII-Guard, Intent-Router, RAG, lokales LLM (eigene Phase-3+-Issues).

Referenzen

  • Phase-1-Block-Closure: rc16 (rc17/rc18 closed via PR #451)
  • Maestro-Smoke (manueller Trigger): PR #450
  • Wireup-Tests: apps/mobile/__tests__/mutation-observer.test.tsx
## Kontext Phase-1 hat das Code-Wireup geliefert: `useCreateList → onSourceChange → registry.publish`. Deterministische Unit-Tests in `apps/mobile/__tests__/mutation-observer.test.tsx` sperren die Kette gegen Regression. **Aktuell deferred:** auf `/search` zeigt `DebugIndexBar` einen Disclaimer `🛠 Debug — Auto-Indexing kommt erst mit der nächsten Iteration.` Der `IndexingService` wird zwar konstruiert und an die Registry subscribed, aber die User-Mutationen lösen aktuell keinen sichtbaren Re-Index aus — `Quellen` bleibt auf 0 bis der User manuell `Jetzt indexieren` tappt. ## Scope dieses Issues 1. Disclaimer in `apps/mobile/app/(drawer)/search.tsx` entfernen. 2. Sicherstellen, dass die `IndexingService`-Subscription auf der Registry tatsächlich Publishes konsumiert + via Stats-Stream im `DebugIndexBar` reflektiert wird, sobald irgendwo in der App eine Liste/Notiz angelegt/geändert/gelöscht wird (ohne dass `/search` zwingend offen ist? — siehe Diskussionspunkt). 3. `phase2-mutation-observer-smoke.yaml` zurückrollen auf die Auto-Trigger-Variante (Quellen >= 1 ohne manuellen `Jetzt indexieren`-Tap). 4. Roadmap-Eintrag `rc20` (oder höher) mit `deviceFinding`. ## Diskussionspunkt Die aktuelle Architektur konstruiert `IndexingService` erst beim Mount von `/search`. Publishes vor diesem Punkt gehen verloren. Optionen: - **(a)** IndexingService im App-Bootstrap konstruieren (höhere Cold-Start-Kosten — op-sqlite + onnxruntime). - **(b)** Registry buffert Events bis erster Subscriber, dann replay. - **(c)** Akzeptieren, dass nur Mutationen ab erstem `/search`-Mount indexiert werden — Initial-Index läuft eh als Background-Job. ## Out of scope - Mail-Indexing (warten auf #113-Mail-Stack-Pivot). - PII-Guard, Intent-Router, RAG, lokales LLM (eigene Phase-3+-Issues). ## Referenzen - Phase-1-Block-Closure: rc16 (rc17/rc18 closed via PR #451) - Maestro-Smoke (manueller Trigger): PR #450 - Wireup-Tests: `apps/mobile/__tests__/mutation-observer.test.tsx`
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
admin-mrrm/mrrmlabapp#452
No description provided.