PR #152 (the IDML/PDF ingest work for #117) merged after a conflict-resolution merge that left main degraded. CI stayed green because no test exercised the broken paths.
Defects on main
packages/pipeline/src/indesign/index.js statically re-exports resolveAssets, buildIngestBundle, writeIngestBundle, runIngest from ./ingest/index.js, which exports none of them — importing the package's ./indesign barrel throws at load.
bin/flavian.mjs has a pipeline ingest subcommand that imports a non-existent runIngest → flavian pipeline ingest crashes when invoked.
- Duplicate keys:
pipeline:ingest ×2 in root package.json; flavian-ingest ×2 in packages/pipeline/package.json.
packages/pipeline/src/indesign/assets/idml-assets.js (+ its test) landed but is unused by any stage.
Fix
Fix-forward: land the working stage-assets ETL stage (which makes idml-assets.js functional and provides the four names the barrel advertises), remove the crashing subcommand, dedupe the keys, and add a barrel-import regression test.
PR #152 (the IDML/PDF ingest work for #117) merged after a conflict-resolution merge that left
maindegraded. CI stayed green because no test exercised the broken paths.Defects on main
packages/pipeline/src/indesign/index.jsstatically re-exportsresolveAssets, buildIngestBundle, writeIngestBundle, runIngestfrom./ingest/index.js, which exports none of them — importing the package's./indesignbarrel throws at load.bin/flavian.mjshas apipeline ingestsubcommand that imports a non-existentrunIngest→flavian pipeline ingestcrashes when invoked.pipeline:ingest×2 in rootpackage.json;flavian-ingest×2 inpackages/pipeline/package.json.packages/pipeline/src/indesign/assets/idml-assets.js(+ its test) landed but is unused by any stage.Fix
Fix-forward: land the working
stage-assetsETL stage (which makesidml-assets.jsfunctional and provides the four names the barrel advertises), remove the crashing subcommand, dedupe the keys, and add a barrel-import regression test.