Skip to content

Keep ordinary support and failed follow-ups in the same thread - #67

Merged
aryanorastar merged 4 commits into
mainfrom
fix/no-email-redirect
Oct 23, 2026
Merged

aryanorastar merged 4 commits into
mainfrom
fix/no-email-redirect

Conversation

@aryanorastar

@aryanorastar aryanorastar commented Oct 19, 2026 •

Copy link
Copy Markdown
Collaborator

Customer failure prevented

Ordinary support replies should keep the next step in the current thread. Delivered handoffs must not simultaneously tell the customer to email elsewhere. A failed staff delivery must retain the application's honest email fallback.

Draft: CI publication only. No merge/deploy while the reliability-release smokes are pending. Current main 6b6d97d1168da34be012bb7936e9f1f02da82966 integrated with merge commit dc79d80; only document conflicts needed resolution. No new PR, prompt/provider call, source budget, memory switch or production change.

Required review correction

  • Detect support-address clauses independently of language, except the existing secret-sharing warning exemption. Keep existing English address-less patterns. Address-less non-English redirects remain explicitly outside scope in docs/NO_EMAIL_REDIRECT.md.
  • Reuse shared source-label names/separators for localized/plural/full-width Source preservation and citation-only emptiness. Retained intake details cannot restore a stripped address.
  • Keep the application-owned failed-staff-delivery email fallback: append it after cleanup, never claim receipt on failure.
  • Preserve the original ordering: ordinary cleanup runs only after no escalation was selected; failed-self-service detection adds a handoff, never suppresses it. Redirect-only drafts still take a real handoff.

Verification

  • 943/943 npm tests, 8/8 offline customer eval, isolated SQL pass, including current recovery, reference-memory reader and knowledge-retention checks. Fresh npm test before push.
  • 25 new synthetic regressions, not copied from evaluation replies: French/German/Japanese/Portuguese ordinary and delivered paths in helpers plus actual help-thread handlers with deterministic synthetic adapters; source/secret-warning/failed-delivery protection; intake-tail safety; seven localized/plural Source headings and source-only emptiness.
  • Same final helper/handler tests with pre-repair dc79d80 utilities injected only in memory: 160 pass, 25 fail. Repaired: 185/185 pass. Existing actual failed-delivery handler tests also pass.
  • Independent reviewer reproduced the Source-label issue; seven regressions failed before its repair, then passed. Final narrow independent re-review: PASS, 185 affected checks, no remaining actionable finding. No provider/Discord/customer/production access by reviewer.
  • Exact head f940c2766d978fc48c384a053c7c131b56707107: hosted Node20, Node24 and real PostgreSQL pass, run 39981758019. Repair-head run39981028525 also passed; the final commit only records published checks in the master plan. Local SQL is not substituted for multi-connection CI.
  • One later local status-doc check had942/943 passing: the unchanged inactivity-only loopback demonstration aborted its stream while two local suites ran. No code/test change hid it. All six deadline tests pass separately; the fresh full serial npm test -- --test-concurrency=1 passes943/943 before the final push. The fixture depends on real40ms ticks under a100ms timeout; host scheduling is plausible, not proven. No production regression or fixed-flake claim follows.

Frozen comparison provenance and grade

Original main arm: 5bafe93f305725db1afc4b2f3e84bb3acc0e0dd2.
Original candidate arm: f2781ebaad8bbcb14c57db8f5cd390ae59a43d1d; its parent is the exact main above. Thus both arms used the same base. Harness/judge/lockfile matched; each completed81×2 at concurrency3, zero invalid rows. Result files are unchanged; this is not a new comparison of the integrated cleanup.

Independent grade: protected-handoff gate PASS; measured p50 30.255→32.455s (+2.200), with an explicit reviewer exception for the extra0.200s. p95 47.351→52.850s; pass-both73→72. Extra/missing flags and the unresolved own-key web-app answer miss remain recorded, not relabeled as fixed. Review finds the handoff-flag differences arise in generation, not escalation suppression by this diff.

The cited official backend storage page was read successfully via direct HTTPS on October23. It supports source/device constraints on automatic merging and retention of original recordings, not a universal promise that every source always appears separately. Today's page is not proof of its exact October21 contents. Grounding nuance and the own-key answer-quality miss remain A2/E2 work; no case-specific patch.

Queue and release limits

#62 stays open for narration cleanup and per-stage evidence. Reviewer confirms #77 overlaps: leave it draft untouched until #67 merges, then integrate main and drop duplicated redirects. Do not touch #78 until the controlled drain smoke is reviewed. #74 was published for CI only. No merge/deploy or memory enablement from these checks; product progress remains47/100, not accuracy.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant