Skip to content

fix: restore CI builds and preserve unlisted Vimeo links - #302

Merged
HMarzban merged 2 commits into
mainfrom
codex/profile-maturity-editor
Sep 17, 2026
Merged

HMarzban merged 2 commits into
mainfrom
codex/profile-maturity-editor

Conversation

@HMarzban

@HMarzban HMarzban commented Sep 17, 2026

Copy link
Copy Markdown
Collaborator

The webapp verification build fails because it does not provide NEXT_PUBLIC_RESTAPI_URL. Unlisted Vimeo watch URLs also lose their path hash, making the rendered player unable to load those videos.

  • Provide a localhost REST URL in the production/stage compilation checks and local CI replica. Deployment builds keep their own environment.
  • Run the existing backend suite on pull requests. Keep real Postgres/Redis E2E checks on the existing production build triggers.
  • Preserve Vimeo path hashes through insertion and HTML round-trips. Existing h query parameters keep precedence.

The Vimeo change addresses the behavior reported in the original standalone contribution. It does not import the old toolchain changes.

Validation: the normal pre-push bun run check:ci passes. This includes lint, styles, formatting, audit, workspace typechecks, email/webapp/backend tests, all five extension Cypress suites, extension preflight, and both Next builds. The backend suite passes 769 tests. The hypermultimedia suite passes 175 tests, including four new rendered-iframe regressions.

Backend tests need DNS access for URL guards; their network fetches remain mocked. Backend real-service E2E and webapp Cypress are separate checks and are not claimed green here. Work on webapp chatroom CI remains separate from this PR.


Note

Low Risk
CI and embed URL parsing changes are localized; no auth, payments, or deploy logic changes beyond when backend jobs run on PRs.

Overview
Fixes CI compilation checks that failed without NEXT_PUBLIC_RESTAPI_URL (required at webapp build time in next.config.js) by stubbing http://localhost:4000 in prod/stage build verification and in scripts/check-ci.ts. Deployment builds are unchanged.

Backend validation on pull requests: production workflow now runs backend-ci for PRs as well as backend/deploy triggers, with a new run_e2e input so PRs get mock-based backend tests only and skip Postgres/Redis E2E.

Unlisted Vimeo embeds: parseVimeoVideoRef now keeps the path-segment hash (e.g. /123456789/deadbeef) on watch URLs, maps it to player ?h=, and prefers an explicit ?h= over the path hash. Cypress covers HTML round-trip; docs and changelog updated.

Reviewed by Cursor Bugbot for commit 903b9a3. Configure here.

Keep a watch URL's path hash when building its iframe URL. Existing h query parameters retain precedence through insertion and HTML round-trips.

The original report and contribution are HMarzban/extension-hypermultimedia#4:
HMarzban/extension-hypermultimedia#4

Port the behavior to the current parser without importing the legacy toolchain changes. Four rendered-iframe regressions cover path hashes, query hashes, player URLs, and precedence.
@HMarzban
HMarzban merged commit 8e95329 into main Sep 17, 2026
20 checks passed
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