Files
kefu/deploy/review-voice-20260918/visual-scheduling-validation.md
T
2026-09-21 10:34:06 +08:00

2.0 KiB

Visual voice scheduling freeze

Both current source and production variants were edited in place only in assigned lifecycle/scheduling/serialization methods; unrelated code was preserved. Backup: before-visual-scheduling.

  • Pending transcription consumes its 2-second retry deadline in selected-chat, orphan-queue and model-wrapper paths; it does not hold the active chat for 60 seconds or increment model failure backoff.
  • A temporary missing or foreign database snapshot retains the original voice key/deadline. Only an exact new snapshot can clear waiting; timeout requires human handling.
  • Explicit manual_required prevents model generation and cached-draft sending. A late successful ASR result cannot bypass manual handling. Existing foreign-composer clearing behavior is unchanged.
  • manual_required/manual_reason/voice_wait_key/voice_wait_started_at/ready_at survive queue save/load. Existing eligible explicit retry clears these fields; persistence failure rolls them back. Retry eligibility and delivery uncertainty protections are unchanged.
  • Legacy pure-voice regression expects a wait, no model, no staged exchange or automatic fallback reply.

Final isolated suite modules: test_voice_visual_scheduling (11 tests), test_voice_messages, test_reply_safety, test_visual_review_assistant, test_handoff_evidence, test_visual_handoff_visibility.

  • Production: 492 tests, 0 failures/errors, 0 skips.
  • Source: 492 tests, 0 failures/errors, 2 existing production-only skips.
  • Temporary synthetic databases/settings/queues only; no actual messages or desktop/network actions. Both harness results report blocked_external_actions=[].

Reports: visual-voice-final-production.json, visual-voice-final-source.json; method hashes: visual-scheduling-verification.json.

Independent audit also identified and sent to root the protocol judge last-message-only input mismatch and visual database binding fallback omission. Root owns those remedies. Shared coordinator _automated explicitly excludes both customer review and customer manual-handling reminder prefixes.