Conversation
Documentation, clarity, and functionality pass from the bamr87/bamr87 repo-evolution loop (run 34104242537). Draft for human review; nothing merges automatically.
Owner
Author
|
Closed as draft/stale evolve AI pass; reopen if still wanted. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changed
project-init.sh:1-47— replaced the Python-style"""…"""header block with the repo's standard#-comment header (same content, same fields, rewrapped to 79 cols).project-init.sh:67-89— droppedreadonlyfromCONFIG_FILEand added explicitVAR="${VAR:-}"declarations for the eleven wizard settings (PROJECT_TYPE,NON_INTERACTIVE, …).project-init.sh:122-133— newrequire_value()helper;main()'s--config/--type/--name/--dircases now call it before consuming$2.project-init.sh:884-938—main()stages--config/--type/--name/--dirinto locals, then sources the--configfile (erroring if it doesn't exist) and re-applies the flags on top, so an explicit flag still beats the config file.project-init.sh:989-1022—--help: described what--configactually does, added the.env/ saved-config / log-file locations, and replaced the placeholder URLhttps://github.com/your-repo/project-wizardwithhttps://github.com/bamr87/scripts.git_init.sh:100—-*|--*=)→-*); the second alternative was unreachable.Why
"""as""plus an unterminated quote running to line 41, making the whole header one command word — so every invocation, including--help, printed a 40-line "command not found" before doing anything (set -euo pipefailis on line 43, after the header, so it didn't abort). CLAUDE.md notes the hub'stools/run-all-tests.shshellchecks the top-level*.shhere, so an error-severity finding in a root script fails the hub's aggregate verification.set -uaborts on the interactive path:run_wizardreads"$PROJECT_TYPE"(line 577 pre-edit) and"$NON_INTERACTIVE"(612/617/623/629) while both are unset, so plain./project-init.shwith no.envin cwd died withunbound variableright after the banner. Droppingreadonlyfixes--config, which assigned to a readonly var and therefore aborted underset -e— the flag was documented in bothREADME.mdand--helpbut could not be used.--configwas write-only:CONFIG_FILEis only ever written at the end ofmain(), never read. Now it's actually sourced, which is what the help text promises and mirrors the existingsource .envinrun_wizard.--typeas the trailing argument trippedset -uon the bare"$2"and exited with$2: unbound variable.--help" and "clarity" items; (6) also clears SC2221+SC2222.Verification
shellcheck --severity=error *.sh FORKME/forkme.sh STASHME/stashme.sh linting/*.sh→ exit 0 (was SC2289 onproject-init.sh:2). Exit 0 at error severity also confirms both edited files parse cleanly.shellcheck --severity=warning project-init.sh git_init.sh→ SC2289, SC2221, SC2222 gone; no SC1090 introduced (directive added for the caller-supplied source path). Remaining output is pre-existing SC2155 ×3 and SC2294 ×1, untouched.python3 tools/unwrap-prose.py --check→ "All markdown prose already unwrapped."git status --short→ onlygit_init.shandproject-init.shmodified; no scratch files.bash <script>is blocked), so the runtime fixes are verified by static analysis and bash quoting/set -usemantics, not by an actual run. A reviewer should confirm with./project-init.sh --help(should print help with no "command not found" spew) and./git_init.sh --headless -n previewme --dry-run.Not done
README.mdclaimsproject-init.shsupports Rust and Go — it does not. There is norust/gobranch anywhere in the file:run_wizard's menu offers only Django/React/Node.js/Python/Custom, andinitialize_project'scasematches the same five. README's feature list, itsPROJECT_TYPEoptions table, and its whole "### Rust Projects" / "### Go Projects" sections are fiction. I left README alone because PR chore: retire tooling superseded by the hub's fan-out kits #9 rewrites it (+106/−412) — and its replacement text keeps the claim (… Django, React, Node, Python, Rust, Go, customin the new tool-index table, plus thePROJECT_TYPErow). Either the README rows go, or the two handlers get written. Needs a decision, not a guess.CLAUDE.mdrepeats the same claim.--typecan still be overridden by a stray.env. In interactive moderun_wizardsources.envfrom the current working directory aftermain()has applied the flags, soPROJECT_TYPEin that file silently wins over--type. Pre-existing; I did not reorder it because moving the.envload intomain()changes precedence for existing users. Worth fixing deliberately.forkme.sh,stashme.sh,project-init.sh), SC2001 (×3,stashme.sh), SC2317 (×3,stashme.sh's indirectly-invoked helper). All mechanical, all pre-existing; fixing them is a sweep across files that PR chore: retire tooling superseded by the hub's fan-out kits #9 doesn't touch but that isn't this pass's job.UPS-REPO-14(SECURITY.md) andUPS-REPO-18(issue templates) are collision-free new files, but I have no read access tobamr87/bamr87from this runner (gh api repos/bamr87/bamr87/contents/specsis not permitted here), so I could only invent them rather than lift the reference implementation the brief asks for. PR chore: retire tooling superseded by the hub's fan-out kits #9's own follow-up section argues issue templates should become a hubissue-templatesfan-out artifact instead of local files — worth resolving there first.UPS-QA-32(release-please),UPS-QA-41(dependabot) andUPS-REPO-13(CHANGELOG) are release/version plumbing this pass is barred from touching; note that dependabot also sits awkwardly against the fleet's ALWAYS-LATEST policy.UPS-AGENT-03(CLAUDE.md kit stamp) andUPS-AGENT-22(vendoredunwrap-prose.pydrift) both need the hub's exact current version, which I can't read.Draft opened by the bamr87/bamr87 repo-evolution loop — run; the brief the agent worked from is attached to that run as
evolution-workorders. Machine-authored: review it as you would any contribution. Nothing here merges automatically, and no new pass is opened for this repository while this one is open.