Added reusable external media imports - #30332
Conversation
no ref CSV imports need to store one discovered media URL at a time without inheriting the existing batch service's content-matching rules. Expose a typed per-URL result directly from the existing CommonJS service while preserving the batch importer's failure boundaries and established module contract, allowing future callers to reuse media downloading and storage without changing existing batch behavior.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: QUIET Plan: Pro Plus Run ID: 📒 Files selected for processing (4)
Included review availability: Your plan provides up to 10 included reviews per hour; 9 remain after this review. 📜 Recent review details⏰ Context from checks skipped due to timeout. (14)
🧰 Additional context used📓 Path-based instructions (10)Review new or changed service boundaries for explicit dependency ownership,⚙️ CodeRabbit configuration file Files:
Review whether tests prove changed behaviour, meaningful error/edge paths, and⚙️ CodeRabbit configuration file Files:
New source files must be TypeScript: flag new JS files as a required change⚙️ CodeRabbit configuration file Files:
Review lens: "where does this data become trusted?"⚙️ CodeRabbit configuration file Files:
Prioritise concrete correctness, security, data-integrity, compatibility,⚙️ CodeRabbit configuration file Files:
Boot owns service initialization; do not📄 CodeRabbit inference engine (AGENTS.md) Files:
Type-safe boundaries: Fail only if the PR:📄 CodeRabbit inference engine (Custom checks) Files:
New standalone services use TypeScript; keep CommonJS only📄 CodeRabbit inference engine (AGENTS.md) Files:
New files are TypeScript: Fail if the PR adds a new .js/.jsx/.cjs/.mjs source file, unless it is: a DB📄 CodeRabbit inference engine (Custom checks) Files:
Always use `pnpm`, never npm or Yarn.📄 CodeRabbit inference engine (AGENTS.md) Files:
🔇 Additional comments (5)
WalkthroughThe media inliner now exposes a typed Suggested reviewers: Merge Risk: ⚪ Minimal · up to This change adds reusable per-URL external media imports while preserving existing batch behavior; no actionable merge-blocking risk remains, so it is merge-ready after normal checks and review. 🚥 Pre-merge checks | ✅ 6✅ Passed checks (6 passed)
Full details: Type-Safe BoundariesExplanation PASS. The PR adds internal result types and an Full details: New Files Are TypescriptExplanation The PR adds only one new source file, ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
|
| Command | Status | Duration | Result |
|---|---|---|---|
nx run ghost:test:ci:integration |
✅ Succeeded | 2m 26s | View ↗ |
nx run ghost:test:integration |
✅ Succeeded | 3m 34s | View ↗ |
nx run ghost:test:legacy |
✅ Succeeded | 3m 7s | View ↗ |
nx run ghost:test:e2e |
✅ Succeeded | 3m 2s | View ↗ |
nx run-many -t test:unit -p ghost |
✅ Succeeded | 37s | View ↗ |
nx run ghost-monorepo:lint:boundaries |
✅ Succeeded | 22s | View ↗ |
nx run-many -t lint -p ghost,ghost-monorepo |
✅ Succeeded | 20s | View ↗ |
nx run-many --target=build --projects=tag:publi... |
✅ Succeeded | 1s | View ↗ |
Additional runs (2) |
✅ Succeeded | ... | View ↗ |
💡 Verify your cache is correct by running tasks in a sandbox. Read docs ↗
☁️ Nx Cloud last updated this comment at 2026-08-27 09:48:27 UTC
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #30332 +/- ##
==========================================
- Coverage 75.93% 75.91% -0.03%
==========================================
Files 1670 1671 +1
Lines 159193 159291 +98
Branches 19353 19361 +8
==========================================
+ Hits 120884 120920 +36
- Misses 37325 37387 +62
Partials 984 984
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|

no ref
CSV imports need to store one discovered media URL at a time without inheriting the existing batch service's content-matching rules. Expose a typed per-URL result directly from the existing CommonJS service while preserving the batch importer's failure boundaries and established module contract, allowing future callers to reuse media downloading and storage without changing existing batch behavior.