Skip to content

fix: resolve CI failures on DSM integration branch#671

Merged
BigSimmo merged 2 commits into
codex/dsm-main-integration-20260714from
copilot/rerun-all-ci-again
Jul 14, 2026
Merged

fix: resolve CI failures on DSM integration branch#671
BigSimmo merged 2 commits into
codex/dsm-main-integration-20260714from
copilot/rerun-all-ci-again

Conversation

Copilot AI commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Three categories of CI failures on the DSM integration branch: syntax errors from typographic curly quotes in a test file, a broken import to a deleted module, and prettier formatting drift.

tests/ui-smoke.spec.ts

  • Replace typographic curly-quote characters (" / ") with straight quotes in two heading name assertions — these caused SyntaxError in prettier, Playwright parser, and the TS build
  • Remove extra { brace in the specifiers test: async ({ page }) => { {async ({ page }) => {
  • Restore missing newline after => in the formulation test body

scripts/generate-site-map.ts

  • Remove import { specifierRecords } from "@/lib/specifiers"src/lib/specifiers.ts was deleted in the formulation refactor (8ab0e28) and no longer exists; caused Cannot find module in both Vitest (site-map test) and Next.js TypeScript build
  • Remove the renderSlugInventory("Psychiatric specifier slugs", ...) block that consumed the deleted export
  • Update the route ownership row to reflect specifiers now redirect to Formulation

docs/site-map.md

  • Remove the stale "Psychiatric specifier slugs" slug inventory section
  • Update the Specifiers ownership row to match the updated script

Formatting — ran prettier --write on all files flagged in Static PR checks

Verification

  • prettier --check . — passes
  • npm run verify:pr-local

During development, use npm run verify:cheap as the faster iteration gate before the final PR-local preflight.

  • npm run verify:ui when UI, routing, styling, browser behavior, reduced-motion, or forced-colors behavior changed
  • npm run verify:release before release or handoff confidence claims

For retrieval, ranking, selection, chunking, source/citation rendering, or answer-contract changes, verify:pr-local runs eval:rag:offline automatically. Run the offline command directly during iteration before spending a live eval.

  • npm run eval:retrieval:quality (must stay 36/36) when retrieval, ranking, selection, chunking, or scoring behavior changed — CI cannot run it (needs live keys), so run it locally and paste the summary. A metadata/governance-weighting change once buried correct docs (recall 1.0→0.76) and only this eval caught it.
  • npm run eval:rag -- --limit 15 + npm run eval:quality -- --rag-only when answer generation, the synthesis prompt, or answer post-processing changed (grounded-supported must not drop; citation-failure 0)
  • npm run check:production-readiness when clinical workflow, privacy, environment, Supabase, source governance, or deployment behavior changed
  • npm run check:deployment-readiness when deployment startup, hosting, or rollout behavior changed

Clinical Governance Preflight

Not applicable — no clinical workflow, answer generation, ingestion, or source governance changes.

Notes

  • @/lib/specifiers was introduced in PR feat(specifiers): add diagnostic decision-support workspace #633, then deleted when the Specifiers feature was refactored into Formulation (8ab0e28). The DSM PR re-introduced the import without the file, causing the build and test failures.
  • Specifiers app routes (/specifiers/[[...path]]) remain as compatibility redirects to Formulation — no routing changes.

@supabase

supabase Bot commented Jul 14, 2026

Copy link
Copy Markdown

This pull request has been ignored for the connected project sjrfecxgysukkwxsowpy because there are no changes detected in supabase directory. You can change this behaviour in Project Integrations Settings ↗︎.


Preview Branches by Supabase.
Learn more about Supabase Branching ↗︎.

@BigSimmo
BigSimmo marked this pull request as ready for review July 14, 2026 15:52
@BigSimmo

Copy link
Copy Markdown
Owner

@copilot resolve the merge conflicts on this branch.

…714' into copilot/rerun-all-ci-again

# Conflicts:
#	docs/site-map.md
#	scripts/generate-site-map.ts
#	tests/ui-smoke.spec.ts
@coderabbitai

coderabbitai Bot commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: ef758311-17f0-4f7c-8267-6cea71c94c98

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch copilot/rerun-all-ci-again

Comment @coderabbitai help to get the list of available commands.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 38e5ea214e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread tests/ui-smoke.spec.ts Outdated
await expect(page).toHaveURL(/\/formulation\?q=anxious\+distress&focus=1&run=1$/);
await expect(page.getByRole("heading", { level: 1, name: "Mechanisms matching “anxious distress”" })).toBeVisible();
await expect(page).toHaveURL(/\/specifiers\?q=anxious\+distress&focus=1&run=1$/);
await expect(page.getByRole("heading", { level: 1, name: 'Matches for "anxious distress"' })).toBeVisible();

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Update the specifiers smoke expectation to the redirect target

When this smoke test starts at /?mode=specifiers..., the current src/app/specifiers/[[...path]]/page.tsx catch-all immediately redirects /specifiers?q=anxious+distress... to the Formulation search page, whose heading is Mechanisms matching “anxious distress”. This assertion still looks for the removed Specifiers copy with straight quotes, so the UI smoke suite remains red after the syntax-only fix; the test should assert the compatibility redirect's Formulation heading instead.

Useful? React with 👍 / 👎.

Comment thread tests/ui-smoke.spec.ts
await expect(page).toHaveURL(/\/formulation\?q=I\+keep\+going\+over\+it&focus=1&run=1$/);
await expect(
page.getByRole("heading", { level: 1, name: "Mechanisms matching I keep going over it”" }),
page.getByRole("heading", { level: 1, name: 'Mechanisms matching "I keep going over it"' }),

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Preserve curly quotes in formulation heading assertions

For formulation searches, FormulationResults renders the accessible heading as Mechanisms matching “{query}” with typographic quotes. Replacing the invalid delimiter characters with a straight-quoted string here changes the expected accessible name to Mechanisms matching "I keep going over it", which does not match the page and will fail this Playwright smoke test whenever the formulation redirect path is exercised.

Useful? React with 👍 / 👎.

@BigSimmo
BigSimmo merged commit 06f129a into codex/dsm-main-integration-20260714 Jul 14, 2026
2 checks passed

Copilot AI commented Jul 14, 2026

Copy link
Copy Markdown
Contributor Author

@copilot resolve the merge conflicts on this branch.

Merge conflicts resolved in commit 4615e39. The three conflicting files were:

  • tests/ui-smoke.spec.ts — took the base branch's updated specifiers-redirect test (asserts redirect to /formulation with curly-quote heading text)
  • scripts/generate-site-map.ts — took "Specifiers (legacy redirect)" with the explicit path
  • docs/site-map.md — same update to the Specifiers ownership row

The branch is now a true merge commit on top of both 38e5ea2 (this branch's CI fixes) and 0a85e2b (base branch's DSM/formulation repair).

Copilot stopped work on behalf of BigSimmo due to an error July 14, 2026 15:55
Copilot AI requested a review from BigSimmo July 14, 2026 15:55
@BigSimmo
BigSimmo deleted the copilot/rerun-all-ci-again branch July 17, 2026 06:54
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.

2 participants