docs: rewrite READMEs and remove outdated MediaConvert docs (#455) - #473
Conversation
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]>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (19)
💤 Files with no reviewable changes (2)
📝 WalkthroughWalkthroughThis 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. ChangesRepository documentation and deployment alignment
Estimated code review effort: 3 (Moderate) | ~25 minutes Possibly related PRs
Suggested labels: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
📝 Generate docstrings
🧪 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 |
|
View your CI Pipeline Execution ↗ for commit a6cd891
💡 Verify your cache is correct by running tasks in a sandbox. Read docs ↗ ☁️ Nx Cloud last updated this comment at |
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' |
There was a problem hiding this comment.
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
⛔ Files ignored due to path filters (1)
package-lock.jsonis excluded by!**/package-lock.json
📒 Files selected for processing (19)
AGENTS.mdDEPLOYMENT.mdREADME.mddocs/README.mddocs/archive/admin-homescreen-layout-redesign.mddocs/archive/offline-downloads-roadmap.mddocs/archive/stripe-express-checkout-investigation.mddocs/console-errors.mddocs/i18n-prep.mdpackages/api-node/.env.examplepackages/api-node/README.mdpackages/api-node/deploy.jsonpackages/api-node/package.jsonpackages/api-node/scripts/build.mjspackages/api-node/scripts/deno-deploy-install.mjspackages/api-node/scripts/smoke-bundle.mjspackages/api-node/src/env.tspackages/api-node/src/types.tspackages/api/src/offlineDownloads.ts
💤 Files with no reviewable changes (2)
- packages/api-node/src/env.ts
- packages/api-node/src/types.ts
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]>
There was a problem hiding this comment.
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.
|
|
||
| | Document | Description | | ||
| | Document | Audience | | ||
| | --- | --- | |
There was a problem hiding this comment.
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). |
There was a problem hiding this comment.
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.
|
@coderabbitai full review |
✅ Action performedFull review finished. |
Closes #455.
Summary
Docs and Deno Deploy backup API follow-ups from review:
media_convert_jobsstill used for Bunny Stream playback/offline downloads.AGENTS.md: Wrangler config note scopeswrangler.workers.tomlto@vmp/web/packages/web.@vmp/api-node:deploy.jsonis the authority for Deno Deploy install/build/runtime; install vianode scripts/deno-deploy-install.mjs; smoke-bundle rejects timeout or exit 0 when expectingDATABASE_URLfailure.deploy/tjm/vmp) documented as pending until the build clears; maintainer log review required.Files
README.mdmedia_convert_jobsaccuracyAGENTS.mdpackages/api-node/deploy.jsonpackages/api-node/README.mddeploy.jsonpackages/api-node/scripts/smoke-bundle.mjsTest plan
npm run smoke:bundle --workspace=@vmp/api-nodedeploy.jsondeploy/tjm/vmplogs on console.deno.com when the check failsSummary by CodeRabbit
Documentation
Chores