docs: add runnable Composer manifest walkthrough - #24
Conversation
fly1d
left a comment
There was a problem hiding this comment.
Thanks for the focused contribution. I independently ran both acceptance checks and the full walkthrough: the reduction produced the documented two files, exact fingerprint validation passed, and the independent oracle exited 1. One correction is on us: Issue #22 said stderr, but benchmarks/composer-package/reproduce.py uses plain print(), so ORIGINAL_FAILURE is emitted on stdout. Please change the new section to say command output (preferred, since stream placement is not the oracle contract) or stdout; do not modify the fixture. Please also update or rebase this branch onto current main and keep the recently added Node walkthrough, because the PR currently conflicts in docs/EXAMPLES.md. Then rerun the two acceptance commands. Everything else in the walkthrough matched the observed behavior and intended scope.
|
One small precision from the second independent review: Issue #22 also calls out Composer repository access. Please change the boundary wording to say that the fixture does not access a package index or the repositories declared in the manifest. Mentioning the two removed repository entries is optional. After rebasing, please also update the PR description to correct stdout and the observed documentation-file count. These are wording updates only; the implementation and fixture should remain unchanged. |
Add a copy-pasteable Composer manifest reduction walkthrough to docs/EXAMPLES.md. Reuses the existing benchmarks/composer-package fixture and its Python oracle, runs from the repository root with the temporary output parent outside the fixture, validates the exported payload with 'report validate --payload --json', and shows the independent oracle rerun that exits 1 with ORIGINAL_FAILURE on stderr. Calls out the no-PHP / no-Composer / no-install / no-package-index / no-lifecycle-scripts / no-network boundary and the descriptive Python-oracle boundary, and links the fixture README plus SECURITY.md. Closes fly1d#22
4ab9de9 to
acf5ba1
Compare
|
Thanks for the careful second pass. All five points addressed:
Branch force-pushed as commit |
|
Thanks again — the contribution itself is now ready from the content review, and all 10 checks on the previous head are green.
|
docs: add runnable Composer manifest walkthrough
Add a copy-pasteable Composer manifest reduction walkthrough to
docs/EXAMPLES.md. Reuses the existing
benchmarks/composer-packagefixtureand its Python oracle, runs from the repository root with the temporary
output parent outside the fixture, validates the exported payload with
report validate --payload --json, and shows the independent oracle rerunthat exits
1withORIGINAL_FAILUREin command output. Calls out theno-PHP / no-Composer / no-install / no-package-index / no-repository /
no-lifecycle-scripts / no-network boundary and the descriptive Python-oracle
boundary, and links the fixture README plus
SECURITY.md.Closes #22
Observed check results
Both acceptance checks from the issue were re-run from the repository root
on this branch after rebasing onto the current
upstream/main. Outputcaptured verbatim.
python3 scripts/check_docs.py:Exit status:
0.python3 benchmarks/run_offline.py --only composer-package:Exit status:
0.