`output` without `-c` reports success but renders a page with no criteria tables
- Dominant language
- JavaScript
- Stars
- 128
- Forks
- 36
- PR merge metrics
- No merged PRs in 30d
Description
### Environment
`@openacr/openacr@0.3.8` (npm), Node v24.13.0. Reproduced on the package's own shipped example (`openacr/drupal-10-16.yaml`), so it is not specific to any hand-authored document.
### Steps to reproduce
```console
$ openacr output -f node_modules/@openacr/openacr/openacr/drupal-10-16.yaml \
-t node_modules/@openacr/openacr/templates/openacr-html-0.1.0.handlebars \
-o drupal-no-c.html
Valid and output generated at drupal-no-c.html!
$ wc -c drupal-no-c.html
14081 drupal-no-c.html
$ grep -c "Success Criteria" drupal-no-c.html
0
$ openacr output -f node_modules/@openacr/openacr/openacr/drupal-10-16.yaml \
-c node_modules/@openacr/openacr/catalog/2.4-edition-wcag-2.1-en.yaml \
-t node_modules/@openacr/openacr/templates/openacr-html-0.1.0.handlebars \
-o drupal-with-c.html
Valid and output generated at drupal-with-c.html!
$ wc -c drupal-with-c.html
120701 drupal-with-c.html
$ grep -c "Success Criteria" drupal-with-c.html
4
```
### Expected
Rendering without `-c` should either resolve the catalog from the document's `catalog:` field, or fail loudly.
### Actual
Without `-c`, `output` reports success and writes a metadata-only shell — no criteria tables at all (14 KB vs 121 KB for the same document with the catalog supplied).
### Why it matters
A rendered ACR with every conformance table silently missing is exactly the artifact that gets attached to a procurement packet unread. The success message gives the operator no signal that the meaningful content was dropped.
Same root cause as #363 (`-c` is required for the document's own `catalog:` field to matter); filing separately because the failure mode differs — there it is a false `Valid!`, here it is a silently empty deliverable.
Contributor guide
Research direction
Reproduce the issue with openacr/drupal-10-16.yaml, the HTML template, and the output command both with and without catalog/2.4-edition-wcag-2.1-en.yaml. Trace how the output command handles the document's catalog field and compare the generated HTML; done means the no-`-c` result either includes the criteria tables or fails loudly instead of reporting success.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, node.js
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 70/100