#768·meetily

Follow-up: summary hardening and review debt after PR #744

Author: safvanatzackCreated Sep 5, 2026Updated Sep 9, 2026

Context

This tracks deferred reviewer suggestions from PR #744, not merge blockers for that PR. PR #744 remains Markdown-first: generated and supported final summaries are Markdown.

The pure-JSON ActionItems / Decisions / summary_json formats were deprecated long before PR #744. Users cannot create summaries in those formats through supported flows, so do not reopen that compatibility path without a separate product decision.

Relevant review thread updates:

Deferred hardening

  • Strip a leading UTF-8 BOM before outer Markdown-fence detection; retain current CRLF and inner-fence behavior.
  • Clamp terminal analytics duration with Math.max(0, Math.floor(durationSeconds)) before the Rust Option<u64> Tauri boundary.
  • Strengthen summary-process CAS tests with RFC3339-nanosecond start_time round-trip coverage and an explicitly single-connection SQLite test pool before concurrent cases.
  • Reassess the Auto Summary single-slot per-meeting guard and rename onAutoGenerateComplete if its name continues to mean request consumption rather than generation completion.
  • Log failed best-effort stale-generation cancellation/cleanup paths without changing stale-result or token/CAS semantics.

Deferred scalability and architecture

  • Re-evaluate summary detection duplication and consolidate only after preserving Rust/TypeScript behavior with shared fixtures or equivalent contract tests.
  • Profile and address tiny-context chunk sizing, long-transcript chunking, and Custom OpenAI context handling only with a reproducible supported-provider case.
  • Consider extracting summary polling from SidebarProvider, decomposing process_transcript_background, reducing summary component prop fan-out, and tightening summary-flow types as separately reviewable refactors.
  • Correct minor timeout wording only if the timeout policy itself is revisited.
  • Add support for additional reasoning syntaxes only after evidence that a supported provider emits them.

Acceptance criteria

  • Every item is revalidated against the then-current code and a supported normal-user flow before implementation.
  • No change reintroduces persisted/rendered model reasoning into current Markdown summaries.
  • No migration, dependency, or deprecated JSON-summary support is added without an explicit product decision.
  • Each accepted behavior change has focused regression coverage plus the relevant Rust/frontend build checks.

Source: Zackriya-Solutions/meetily