Skip to content

docs: rewrite READMEs and remove outdated MediaConvert docs (#455) - #473

Merged
kubo6472 merged 11 commits into
mainfrom
cursor/readme-update-outdated-docs-3d46
Aug 4, 2026
Merged

docs: rewrite READMEs and remove outdated MediaConvert docs (#455)#473
kubo6472 merged 11 commits into
mainfrom
cursor/readme-update-outdated-docs-3d46

Conversation

@kubo6472

@kubo6472 kubo6472 commented Aug 1, 2026

Copy link
Copy Markdown
Member

Closes #455.

Summary

Docs and Deno Deploy backup API follow-ups from review:

  • Root README: Architecture → packages → docs index; remove obsolete MediaConvert admin-upload docs; Workers (not Pages); clarify media_convert_jobs still used for Bunny Stream playback/offline downloads.
  • AGENTS.md: Wrangler config note scopes wrangler.workers.toml to @vmp/web / packages/web.
  • @vmp/api-node: deploy.json is the authority for Deno Deploy install/build/runtime; install via node scripts/deno-deploy-install.mjs; smoke-bundle rejects timeout or exit 0 when expecting DATABASE_URL failure.
  • Deno Deploy PR check (deploy/tjm/vmp) documented as pending until the build clears; maintainer log review required.

Files

File Why
README.md Deployment table + MediaConvert / media_convert_jobs accuracy
AGENTS.md Config format scoped to api vs web
packages/api-node/deploy.json Single install command
packages/api-node/README.md Dashboard options from deploy.json
packages/api-node/scripts/smoke-bundle.mjs Fail on timeout / unexpected success

Test plan

  • npm run smoke:bundle --workspace=@vmp/api-node
  • Maintainer: confirm Deno Deploy dashboard install/build/runtime match deploy.json
  • Maintainer: review deploy/tjm/vmp logs on console.deno.com when the check fails
Open in Web Open in Cursor 

Summary by CodeRabbit

  • Documentation

    • Reorganized project, architecture, deployment, and local development guidance.
    • Added a documentation index and clarified archived historical materials.
    • Updated localization, troubleshooting, API, and Deno deployment instructions.
    • Documented VM-based media processing and removed outdated MediaConvert guidance.
  • Chores

    • Improved deployment verification and bundle smoke checks.
    • Updated storage guidance for HLS assets and custom S3-compatible endpoints.
    • Removed obsolete media conversion configuration settings.

Closes #455. Refresh the root README for the current Workers + media-pipeline
architecture, archive historical design notes, and drop dead MediaConvert
env/docs leftovers from api-node.

Co-authored-by: Jakub Doboš <[email protected]>
@coderabbitai

coderabbitai Bot commented Aug 1, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 9fa1e0a0-8588-4f8d-b473-ced622b5b642

📥 Commits

Reviewing files that changed from the base of the PR and between 8b33d66 and a64ac2c.

⛔ Files ignored due to path filters (1)
  • package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (19)
  • AGENTS.md
  • DEPLOYMENT.md
  • README.md
  • docs/README.md
  • docs/archive/admin-homescreen-layout-redesign.md
  • docs/archive/offline-downloads-roadmap.md
  • docs/archive/stripe-express-checkout-investigation.md
  • docs/console-errors.md
  • docs/i18n-prep.md
  • packages/api-node/.env.example
  • packages/api-node/README.md
  • packages/api-node/deploy.json
  • packages/api-node/package.json
  • packages/api-node/scripts/build.mjs
  • packages/api-node/scripts/deno-deploy-install.mjs
  • packages/api-node/scripts/smoke-bundle.mjs
  • packages/api-node/src/env.ts
  • packages/api-node/src/types.ts
  • packages/api/src/offlineDownloads.ts
💤 Files with no reviewable changes (2)
  • packages/api-node/src/env.ts
  • packages/api-node/src/types.ts

📝 Walkthrough

Walkthrough

This PR updates repository and deployment documentation, archives historical documents, removes MediaConvert settings, and adds API-node build, Deno installation, bundle smoke validation, and deployment guidance.

Changes

Repository documentation and deployment alignment

Layer / File(s) Summary
Current architecture and documentation index
AGENTS.md, README.md, DEPLOYMENT.md, docs/README.md, docs/archive/*, docs/console-errors.md, docs/i18n-prep.md, packages/api/src/offlineDownloads.ts
Documentation now describes the current workspace packages, Worker deployment model, local workflow, media pipeline, locale configuration, and authoritative documentation locations. Historical documents are marked as archived.
API-node build and installation flow
packages/api-node/package.json, packages/api-node/scripts/build.mjs, packages/api-node/scripts/deno-deploy-install.mjs, packages/api-node/.env.example, packages/api-node/src/env.ts, packages/api-node/src/types.ts
The API-node build includes Payments and local workspace sources, supports CommonJS dependencies in bundled ESM output, installs dependencies locally for Deno Deploy, and removes MediaConvert environment settings.
API-node deployment verification
packages/api-node/scripts/smoke-bundle.mjs, packages/api-node/README.md, packages/api-node/deploy.json
Deployment verification now builds and smoke-loads dist/server.js, detects AWS SDK loading failures, validates the expected missing-DATABASE_URL startup error, and documents Deno Deploy configuration and logs.

Estimated code review effort: 3 (Moderate) | ~25 minutes

Possibly related PRs

  • tojemoc/vmp#430: Modifies the API-node deployment bundling and build pipeline.
  • tojemoc/vmp#210: Introduced the MediaConvert configuration and documentation removed here.
  • tojemoc/vmp#249: Modifies API-node deployment and isolated Deno build configuration.

Suggested labels: codex

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly describes the README documentation updates and removal of obsolete MediaConvert documentation.
Linked Issues check ✅ Passed The README removes the obsolete MediaConvert pipeline documentation and updates related configuration and API references.
Out of Scope Changes check ✅ Passed The changes support the documented objectives, including deployment guidance, smoke-bundle validation, and MediaConvert cleanup.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing Touches 💡 1
🛠️ Fix failing CI checks 💡
  • Create stacked PR
  • Commit on current branch
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch cursor/readme-update-outdated-docs-3d46

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.

❤️ Share

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

@nx-cloud

nx-cloud Bot commented Aug 1, 2026

Copy link
Copy Markdown
Contributor

View your CI Pipeline Execution ↗ for commit a6cd891

Command Status Duration Result
nx affected -t typecheck typecheck:scripts --ba... ✅ Succeeded 2s View ↗

💡 Verify your cache is correct by running tasks in a sandbox. Read docs ↗


☁️ Nx Cloud last updated this comment at 2026-08-02 13:59:41 UTC

cursoragent and others added 9 commits August 1, 2026 19:35
Deno Deploy preview warmup failed because the esbuild ESM bundle threw
"Dynamic require of node:https is not supported" while loading AWS SDK.
Add a createRequire banner and a smoke-bundle gate in verify:deploy.

Co-authored-by: Jakub Doboš <[email protected]>
Root cause of deploy/tjm/vmp failures: Deno builds could not reliably
install the monorepo (npm ci fails on optional native platform packages)
and the ESM AWS SDK bundle crashed without createRequire.

- Source-control install/build/runtime in deno.json
- Add lean scripts/deno-deploy-install.mjs (package-local + sibling links)
- Alias @vmp/payments; resolve sibling npm deps via node_modules symlinks
- Keep createRequire banner + smoke:bundle regression gate

Co-authored-by: Jakub Doboš <[email protected]>
Deno Deploy source config only documents install/build/runtime/framework.
Keep deploy config in packages/api-node and mirror it at the repo root so
builds work whether the dashboard app directory is the repo root or
packages/api-node.

Co-authored-by: Jakub Doboš <[email protected]>
Cover dashboard app-directory=repo-root in addition to packages/api-node.

Co-authored-by: Jakub Doboš <[email protected]>
Source-level install/build/runtime in deno.json replaces dashboard
settings and was still failing on deploy/tjm/vmp. Restore org/app-only
deploy metadata so the previously working dashboard install/build is
used again, while keeping the createRequire esbuild banner that fixes
the AWS SDK ESM warmup crash introduced around #450.

Co-authored-by: Jakub Doboš <[email protected]>
Point Deno Deploy at the lean installer and esbuild build from source
config (no exports→missing dist/server.js). Keep createRequire banner for
AWS SDK ESM warmup.

Co-authored-by: Jakub Doboš <[email protected]>
Remove org/app from package deploy block (CLI-only metadata). Define
install/build/runtime in root and packages/api-node so either app
directory setting can build the lean bundle.

Co-authored-by: Jakub Doboš <[email protected]>
Deno Deploy file collection can exclude workspace members when deploy
config lives at the repo root. Drop the workspace key so packages/api-node
is uploaded, and improve install diagnostics if siblings are missing.

Co-authored-by: Jakub Doboš <[email protected]>
Source install/build/runtime overrides the Deno dashboard and could not
be validated without console logs (builds still failed in ~20s). Restore
org/app-only deploy metadata and keep the createRequire esbuild fix plus
lean installer for optional dashboard wiring.

Co-authored-by: Jakub Doboš <[email protected]>
* can resolve them when bundling ../api and ../storage sources.
*/
import { spawnSync } from 'node:child_process'
import { existsSync, mkdirSync, readdirSync, rmSync, symlinkSync } from 'node:fs'
@kubo6472
kubo6472 marked this pull request as ready for review August 2, 2026 13:41
prelint[bot]
prelint Bot previously approved these changes Aug 2, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 6

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@AGENTS.md`:
- Line 66: Update the Wrangler configuration note in the AGENTS.md project table
so the wrangler.workers.toml exception is explicitly scoped to packages/web
rather than presented as a global project format; preserve the existing package
description and deployment context.

In `@packages/api-node/deploy.json`:
- Line 7: Update the deploy.json notes to document the single executable install
command using node scripts/deno-deploy-install.mjs, removing the ambiguous
node/deno alternative while preserving the surrounding deployment guidance.

In `@packages/api-node/README.md`:
- Line 72: Update the deployment instructions near the app-directory step to
stop attributing install, build, and runtime settings to deno.json. Identify
packages/api-node/deploy.json as the authority for those dashboard deployment
options, while retaining the existing guidance to use
scripts/deno-deploy-install.mjs and avoid root npm ci.

In `@packages/api-node/scripts/smoke-bundle.mjs`:
- Around line 38-65: Update the smoke process handling around the timeout and
exitCode promise to track whether the timeout killed the child, and require that
the process exits non-zero before accepting the expected DATABASE_URL error.
Reject or report failures when the timeout fires or exitCode is zero, while
preserving the existing output checks and success message for a clean failure.

In `@README.md`:
- Line 139: The README removal claim is too broad because live code still reads
media_convert_jobs. Update the relevant README section to separate the AWS
MediaConvert/admin uploader claim from the table’s ongoing playback and
offline-download usage, preserve the schema/drop guidance, and remove Bunny
Stream references only if that playback path is no longer applicable.
- Line 110: Update the “Push / PR (Deno git integration)” entry in the
deployment table to describe its PR/preview build status as pending until the
Deno Deploy build check clears, and mention that maintainer log review is
required; do not present the trigger as complete.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: b5483f8d-5e93-4023-b61f-e2ce671cc65c

📥 Commits

Reviewing files that changed from the base of the PR and between 8b33d66 and a6cd891.

⛔ Files ignored due to path filters (1)
  • package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (19)
  • AGENTS.md
  • DEPLOYMENT.md
  • README.md
  • docs/README.md
  • docs/archive/admin-homescreen-layout-redesign.md
  • docs/archive/offline-downloads-roadmap.md
  • docs/archive/stripe-express-checkout-investigation.md
  • docs/console-errors.md
  • docs/i18n-prep.md
  • packages/api-node/.env.example
  • packages/api-node/README.md
  • packages/api-node/deploy.json
  • packages/api-node/package.json
  • packages/api-node/scripts/build.mjs
  • packages/api-node/scripts/deno-deploy-install.mjs
  • packages/api-node/scripts/smoke-bundle.mjs
  • packages/api-node/src/env.ts
  • packages/api-node/src/types.ts
  • packages/api/src/offlineDownloads.ts
💤 Files with no reviewable changes (2)
  • packages/api-node/src/env.ts
  • packages/api-node/src/types.ts

Comment thread AGENTS.md Outdated
Comment thread packages/api-node/deploy.json Outdated
Comment thread packages/api-node/README.md Outdated
Comment thread packages/api-node/scripts/smoke-bundle.mjs
Comment thread README.md Outdated
Comment thread README.md Outdated
Scope wrangler.workers.toml to packages/web in AGENTS.md; point Deno
dashboard install/build/runtime at deploy.json; clarify media_convert_jobs
vs MediaConvert uploader and Deno PR check pending status. Fail smoke-bundle
on timeout or zero exit when expecting DATABASE_URL error.

Co-authored-by: Jakub Doboš <[email protected]>

@prelint prelint 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.

Warning

The new Documentation table links [docs/README.md](docs/README.md) as "Index of API notes and historical design docs", but that file does not exist in the repository and is not being created in this...

README.md:60

Warning

Step 3 of the Deno Deploy setup instructs "lean package-local install via node scripts/deno-deploy-install.mjs", and packages/api-node/deploy.json (notes field, line 7) repeats the same reference....

packages/api-node/README.md:72

2 finding(s) posted as inline comments.

Comment thread README.md

| Document | Description |
| Document | Audience |
| --- | --- |

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Warning

The new Documentation table links [docs/README.md](docs/README.md) as "Index of API notes and historical design docs", but that file does not exist in the repository and is not being created in this PR. Any reader following the link will hit a 404.

2. Link the GitHub repository in Deno Deploy (git builds run on every push; PR previews and `main` → production).
3. Copy Worker secrets into Deno Deploy env vars (see `.env.example`).
4. `GET /api/health` should return `"mode": "deno-deploy"` and `"checks.database": { "ok": true, "backend": "postgres" }`.
3. Set the app directory to `packages/api-node`. Dashboard install/build/runtime options are documented in [`deploy.json`](deploy.json) (lean package-local install via `node scripts/deno-deploy-install.mjs` — do **not** run root `npm ci`; the monorepo lockfile includes optional native platform packages that fail on Linux).

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Warning

Step 3 of the Deno Deploy setup instructs "lean package-local install via node scripts/deno-deploy-install.mjs", and packages/api-node/deploy.json (notes field, line 7) repeats the same reference. Only scripts/build.mjs and the newly-added scripts/smoke-bundle.mjs exist in that directory; deno-deploy-install.mjs is absent and not included in this PR's diff. Maintainers following the setup steps will get a MODULE_NOT_FOUND error.

@prelint
prelint Bot dismissed their stale review August 2, 2026 14:01

New findings on updated code.

@kubo6472

kubo6472 commented Aug 3, 2026

Copy link
Copy Markdown
Member Author

@coderabbitai full review

@coderabbitai

coderabbitai Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor
✅ Action performed

Full review finished.

@kubo6472
kubo6472 merged commit 9ddc7f4 into main Aug 4, 2026
11 of 12 checks passed
@kubo6472
kubo6472 deleted the cursor/readme-update-outdated-docs-3d46 branch August 4, 2026 13:34
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.

BUG: README update - it's outdated

2 participants