fix: restore full-suite green — i18n parity (FN-7658) + chat core mock (FN-7675) + verification-followup-dedup (FN-7658)#1965
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
✅ Files skipped from review due to trivial changes (1)
📝 WalkthroughWalkthroughThis PR updates a test mock and a reliability test, adds new empty localization keys for auto-archiving duplicate tasks in five locales, and revises a changeset summary about merger confirmation copy. ChangesTest mock and behavior flag updates
Auto-archive duplicate tasks locale strings
Merger confirmation copy update
Estimated code review effort: 1 (Trivial) | ~5 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Greptile SummaryThis PR restores a green full-suite by fixing three independent test/i18n breakages introduced after #1947, with no production behavior changes.
Confidence Score: 5/5All changes are test-only or i18n placeholder additions with no runtime behavior change; safe to merge. Every touched file is either a test fixture, an i18n locale JSON with empty-string placeholders, or a changeset description tweak. The test fixes accurately reflect the real behavioral change (opt-in flag default) and the mock extension is intentionally minimal to avoid the fs cascade the mock exists to prevent. No files require special attention. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[Full-suite red on 3 surfaces] --> B[i18n parity gate]
A --> C[chat.test.ts load failure]
A --> D[verification-followup-dedup test]
B --> B1[Add 2 empty-string keys to es/fr/ko/zh-CN/zh-TW]
B1 --> B2[parity + i18n-gate-coverage green]
C --> C1[Stub FUSION_RUNTIME_SELF_AWARENESS in core mock]
C1 --> C2[chat.test.ts 14/14 green]
D --> D1[Set autoArchiveDuplicateTasksEnabled=true in fixture]
D1 --> D2[verification-followup-dedup 5/5 green]
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
flowchart TD
A[Full-suite red on 3 surfaces] --> B[i18n parity gate]
A --> C[chat.test.ts load failure]
A --> D[verification-followup-dedup test]
B --> B1[Add 2 empty-string keys to es/fr/ko/zh-CN/zh-TW]
B1 --> B2[parity + i18n-gate-coverage green]
C --> C1[Stub FUSION_RUNTIME_SELF_AWARENESS in core mock]
C1 --> C2[chat.test.ts 14/14 green]
D --> D1[Set autoArchiveDuplicateTasksEnabled=true in fixture]
D1 --> D2[verification-followup-dedup 5/5 green]
Reviews (3): Last reviewed commit: "fix: shorten FN-7692 changeset summary u..." | Re-trigger Greptile |
…dedup additive test
ec1f73d to
0bfe7e8
Compare
…t limit (unblocks lint)
…tor-list regex (round 3) (#1969) ## Summary Round 3 of full-suite greening on `main`. The post-#1965 full-suite still failed on 6 UI/CSS test files in shards 3+4 (pre-existing test-drift from recent UI commits, surfaced after the chat/i18n fixes landed). All fixed. ## Fixes (all test-only; no production change) - **TaskCard badge/footer tests** (`TaskCard.badge-height`, `TaskCard.badge-wrap`, `TaskCard.footer-wrap`) — `RuntimeFallbackBadge` now calls the dashboard `useToast()` hook, but these suites render `<TaskCard>` without a `ToastProvider`. Added the `useToast` mock (same pattern as the sibling `TaskCard.test.tsx` and `PlanningModeModal` suites). - **`TaskDetailModal.github-tracking-header`** — the github/gitlab tracking header CSS rules were consolidated into a shared selector list (`.detail-github-tracking-section .detail-source-header, .detail-gitlab-tracking-section .detail-source-header {…}`), so the test's `\s*\{` (selector immediately followed by `{`) no longer matched. Updated the 3 CSS regexes to `[^{]*\{` to tolerate the selector list while still pinning the layout contract. - **`GraphTaskNode` tests** (`fusion-plugin-dependency-graph`) — same `useToast` issue: `GraphTaskNode` renders the REAL `TaskCard` (to verify prop pass-through, unlike sibling suites that mock it), hitting `RuntimeFallbackBadge`→`useToast`. Added the `@fusion/dashboard/app/hooks/useToast` mock to both files. ## Note on shard-2 engine[2/2] Shard 2 still times out (watchdog 900s) on `@fusion/engine [2/2]`. This is the engine-reliability real-git tier running single-threaded under 4-shard concurrent load — locally `[2/2]` is ~96s and green. It's slow-test-debt / CI-load, not a code bug in these commits; I'm investigating the specific slow/hanging file separately (the silent CI reporter hides it). ## Verification - TaskCard badge/footer: 14/14 ✅ - TaskDetailModal.github-tracking-header: 1/1 ✅ - GraphTaskNode + GraphTaskNode.drag: 29/29 ✅ <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Tests** * Stabilized several dashboard and dependency-graph test suites by mocking toast behavior to prevent provider-related failures. * Improved robustness of task card and graph node interaction tests. * Updated task detail modal CSS/layout assertions to better align with current responsive styling and selector patterns. * Reduced test flakiness for step-session retry timing by using controlled fake-timer advancement. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
Summary
Follow-up to #1947. The full-suite on
mainis still red on 3 surfaces introduced by post-#1947 commits. This PR fixes the two real test failures and the i18n parity gap.Fixes
settings.scheduling.autoArchiveDuplicateTasks+...Helpwere added toenbut not the 5 non-en catalogs, breaking the i18n parity gate (parity.test.ts,i18n-gate-coverage.test.ts). Added the 2 keys (empty-string per the untranslated-entry convention) tozh-CN,zh-TW,fr,es,koinpackages/i18n/locales(the single source of truth;dashboard/app/localesis gitignored and synced in CI).chat.tsnow importsFUSION_RUNTIME_SELF_AWARENESSfrom@fusion/core(CHAT_SYSTEM_PROMPT embeds it); the hand-written core mock didn't stub it, so the module failed to load. Added a stub (importOriginal intentionally avoided to preserve the fs-cascade block).autoArchiveDuplicateTasksEnableddefaults false → flag-in-place in triage). The test now opts into the legacy archive behavior it asserts.Note on shard-2 engine[2/2] timeout
The full-suite shard 2 times out on
@fusion/engine [2/2](watchdog 900s). Locally[2/2]runs in ~96s and is green (the loneprovider-registration.test.tsfailure is local-onlypi-ai@0.79.9staleness — the lockfile pins0.80.3which exports/compat, so CI resolves it). Theverification-followup-dedupfailure above is the only real[2/2]defect; this PR fixes it. If the CI timeout persists it's aggregate real-git load, which I'll address separately (not a code bug).Verification
parity+i18n-gate-coverage: 7/7 ✅chat.test.ts: 14/14 ✅verification-followup-dedup: 5/5 ✅--shard=2/2(excluding the local-staleness file): 363 files / 4483 tests ✅ in ~96sNo production behavior change; no changeset needed (i18n catalog + test-only).
Summary by CodeRabbit