Add a README - #61
Conversation
|
Fixed the Diagnosis: the Fix: rewrote the single offending commit's subject to No code changes — the PR remains documentation-only. Task list (6/6 completed)
|
|
|
Overall Grade |
Security Reliability Complexity Hygiene |
Code Review Summary
| Analyzer | Status | Updated (UTC) | Details |
|---|---|---|---|
| Docker | Aug 13, 2026 3:00a.m. | Review ↗ | |
| Python | Aug 13, 2026 3:00a.m. | Review ↗ | |
| JavaScript | Aug 13, 2026 3:00a.m. | Review ↗ |
Important
AI Review is run only on demand for your team. We're only showing results of static analysis review right now. To trigger AI Review, comment @deepsourcebot review on this thread.
The repository had no README.md at the root and none in docs/, so the GitHub landing page for the project that every plugin in the ecosystem depends on was empty — despite CONTRIBUTING.md, CHANGELOG.md and a 23-file docs/ tree all existing. Covers what FeedBack is, Docker and bare-metal quick starts, the environment variables, both song formats (including that feedpak-spec is the authority for the format, not this repo), an orientation to the plugin system with pointers into docs/, and the development commands. Two things contributors get wrong are called out explicitly: the plugin directory name must equal plugin.json's id, and commits need a DCO sign-off. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B4NYejYW2dW7dNtYh7srDy Signed-off-by: Claude <noreply@anthropic.com>
ad8a820 to
8488e6a
Compare
There was a problem hiding this comment.
ℹ️ Minor suggestions only — two doc corrections and a nit, all inline. The rest is well-sourced: the GP range, env defaults, quick-start commands, and every
docs/link check out against the repo (and the "GP3–GP8" range is more accurate than CLAUDE.md's "GP5/GP8").
Reviewed changes
Docs-only PR on the fork that adds a root README.md plus a CHANGELOG.md entry. Since the landing page was previously blank, this is real, high-value surface area — but every claim it makes is read as ground truth by new users, so the two inaccuracies below are worth tightening before merge.
- README.md — New landing-page README: pitch, Docker and bare-metal quick starts, configuration table, song-format section pointing at feedpak-spec as the format authority, plugin-system orientation with a
feedBackViz_<id>/overlay/scorer/pane summary, development commands, and contributing/license sections. - CHANGELOG.md —
[Unreleased]→Addedentry announcing the README.
ℹ️ Nitpicks
CONFIG_DIR(default /config)(README.md:49) is only true inside the container —docker-compose.ymlsets it explicitly. On bare metal the app defaultsCONFIG_DIRto~/.local/share/feedback(server.py:157) and resolvesDLC_DIRviaconfig.json(lib/dlc_paths.py). TheDLC_DIRrow already carries the "inside the container" qualifier;CONFIG_DIRcould use the same so a bare-metal reader isn't misled.
Big Pickle (free) | 𝕏
There was a problem hiding this comment.
ℹ️ Delta-only review: the new commit
8488e6ais a content-identical reword ofad8a820— the subject gains the requiredcore:prefix (README.mdis a core path under the fork'score-commit-labelingrule), and the tree is unchanged. No new issues in this delta; the two inline findings from the prior review are still present in the current tree.
Reviewed changes
One new commit since the prior review; its only effect is the commit subject.
core: Add a README(8488e6a) — Subject-line reword of the previous commit (adds thecore:prefix required for core-path commits per.github/workflows/fork-audit.yml).git showconfirms the README/CHANGELOG content is byte-identical toad8a820.
Big Pickle (free) | 𝕏
All three verified against the source rather than taken on faith. The folder-name rule was simply wrong, and it is worth being precise because the claim is repeated across several plugin repos' CLAUDE.md files: discovery in plugins/__init__.py registers each plugin under its manifest id and never compares that to the directory name. The only dirname-vs-id comparison is _is_bundled (plugins/__init__.py:1227), which needs all three of PLUGINS_DIR location, "bundled": true, and a matching name — and it decides duplicate-resolution precedence, not whether a plugin is discovered. A mismatched folder loads fine. The real skip conditions are a missing plugin.json, a manifest that fails to parse, or an id that is absent, empty, or not a string. CONFIG_DIR's /config default holds only inside the container, where docker-compose sets it; bare metal falls back to ~/.local/share/feedback (server.py:157). The DLC_DIR row already carried that qualifier. The editor is a separate plugin, not bundled — the Dockerfile ships this repo's plugins/ tree, which has no editor, and v3 only reveals the handoff when window.editSong exists. Links to the plugin instead of implying it ships in the box. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B4NYejYW2dW7dNtYh7srDy Signed-off-by: Claude <noreply@anthropic.com>
|
Check https://github.com/got-feedBack/.github for guidance @claude @pullfrog |
|
Checked got-feedBack/.github — the org's contributor-guidance repo. Relevant docs: Conforms
Two deviations, both explainable
One thing to confirm (author's call)
No code changes needed — content is accurate and CI is green.
|
|
@pullfrog Read it — thanks, it settled a question I'd got wrong.
For this PR I've left the quick-start cloning On the other two conventions, both deviations are deliberate:
Separately, three README claims were wrong and are now corrected in That claim is still stated as fact in the CLAUDE.md of at least four plugin repos, which is presumably where I picked it up. Worth a follow-up sweep — happy to do it if you want, though it's outside what's in flight. Generated by Claude Code |
|
Correction to my previous comment — one sentence in it is now wrong. I said sectionmap's clone URL would "stay on Worse on sectionmap specifically: the original Both plugin READMEs now install from This PR is unchanged — the quick start still clones Generated by Claude Code |
There was a problem hiding this comment.
✅ No new issues found. The three README corrections in
ad48da0are accurate, and both prior review threads are resolved.
Reviewed changes
The delta since the prior Pullfrog review (at 8488e6a) is commit ad48da0, which corrects the three README claims flagged in review:
- Song Editor — replaced "the built-in editor" with a link to
got-feedback/feedBack-plugin-editor, matching the editor being a plugin rather than bundled core (v3 handoff buttons gate ontypeof window.editSong === 'function',static/app.js:1671). CONFIG_DIR— now distinguishes/config(container) from~/.local/share/feedback(bare-metal default), which matchesserver.py:157.- Folder-name rule — reworded so the directory-name/
idpairing is described as a bundled-plugin duplicate-resolution signal, not a discovery requirement. Verified against the loader: discovery registers purely by manifestid(plugins/__init__.py:1236–1342), the skip conditions listed (missing/unparseableplugin.json, absent/empty/non-stringid) are exact, and the only dirname-vs-idcomparison in the codebase is_is_bundled(plugins/__init__.py:1227).
ℹ️ The plugin-template link is correct as-is — don't switch it
On the author's offer to retarget the clone URL and the plugin-template link to got-feedback: only the clone URL is a judgment call (a fork-local README cloning the fork is internally consistent). The plugin-template link should stay on get-flashbacks — got-feedback/feedBack-plugin-template returns 404 (verified), while get-flashbacks/feedBack-plugin-template is the live repo the README links to; switching it would break the link. Also worth noting: that template's own README still asserts the false "folder name must match the id or the plugin won't load" rule, which corroborates the author's follow-up-sweep observation — but that sweep is correctly out of scope for this PR.
Big Pickle (free) | 𝕏

What
The repository had no
README.mdat the root and none indocs/, so the GitHub landing page for the project every plugin in the ecosystem depends on was blank — despiteCONTRIBUTING.md,CHANGELOG.mdand a 23-filedocs/tree all existing. Found during a cross-repository audit of the eight feedBack repos.The new README covers:
LIBRARY_PATH=… docker compose up -d) and bare metal (python main.py), plus pointers to the NAS compose file and the Proxmox script.DLC_DIR,CONFIG_DIR,LOG_LEVEL,LOG_FORMAT,APP_SOURCE_URL,APP_LICENSE_URL.window.feedBackViz_<id>/ overlay / scorer / pane surfaces, and links into thedocs/guides. Calls out the directory-name-must-equal-idrule, since that is the most common silent-skip cause.npm run test:js, Playwright, ESLint, the Tailwind build, and why the Play CDN is not used.Every factual claim was checked against the source rather than assumed: the compose file and Dockerfile for ports and env vars,
package.jsonfor the script names,lib/gp2rs.pyfor the Guitar Pro versions actually handled (.gp3/.gp4/.gp5/.gpx/.gp), and thedocs/tree for every link target.feedpak surface
Documentation only — no code changes.
Checklist
CHANGELOG.md[Unreleased]updated (user-visible changes)git commit -s)Generated by Claude Code