Files
Shutong Wu 45962b2671 fix: address PR #1157 review feedback (docs/security/UX)
CodeRabbit + Copilot review fixes that don't touch the generated tool
reference. Generator change + regenerated pages come in a follow-up
commit.

docs:
- guides/uv-setup.md: Python requirement was wrongly 3.12+; the server
  pyproject declares >=3.10. Verify command + body updated to 3.10+.
  Homebrew tip retains 3.12 as a reasonable default.
- getting-started/index.md: drop "(coming soon)" placeholders for
  Your First Prompt and Choosing an MCP Client — both pages exist
  in this PR. Setup Wizard remains "coming soon" (not in this PR).
- .github/ISSUE_TEMPLATE/bug_report.yml: troubleshooting link pointed
  at /guides/cursor (deleted earlier in this branch); now points at
  /guides/troubleshooting which is where that content lives.

components:
- CopyButton: track setTimeout in a useRef, clear it on unmount and
  before scheduling a new one. Prevents React "setState on unmounted
  component" warnings and stops timer-stacking on rapid clicks.
- HomeArchitecture diagram <div>: now role="img" with a descriptive
  aria-label that explains the layer flow, so assistive tech actually
  announces the diagram instead of skipping it.

workflows (security):
- docs-deploy.yml, docs-generate.yml: add `persist-credentials: false`
  on actions/checkout — these jobs never push, so the token shouldn't
  linger in the checked-out worktree (zizmor `artipacked` warning).
- sync-releases.yml:
  - Workflow-level permissions narrowed to `contents: read`; the
    `sync` job opts into `contents: write` itself. `drift-check`
    stays read-only.
  - drift-check job: was gated on `pull_request` but the workflow had
    no pull_request trigger — unreachable code. Added a paths-scoped
    pull_request trigger so PRs touching the sync script or the synced
    docs run the check.
  - `sync` job retains `persist-credentials: true` (it pushes back).
  - drift-check checkout gets `persist-credentials: false`.

CodeRabbit comments NOT addressed in this PR and why:
- execute_menu_item 'exists' mode, script_apply_edits malformed JSON,
  find_gameobjects empty param descriptions: all live in the Python
  tool's source description string under Server/src/services/tools/.
  Fixing upstream is a separate code PR; the generator faithfully
  renders whatever source provides.
- React 18.3.1 / Docusaurus 3.10.1 bump: out of scope for this docs
  PR; the lockfile already permits the latest 18.x, and a Docusaurus
  minor bump is a separate dependency PR.
- robots.txt sitemap 404 check: will resolve as soon as Pages serves
  the site on the canonical URL. Not a real bug.
- sidebars.js duplicate roadmap: /architecture/roadmap is the 2026
  feature deep-research; /architecture/project-roadmap is the wiki
  living roadmap. Two distinct docs, intentional.
- scripting_ext group blurb: comes from the registry TOOL_GROUPS map;
  wording tweak not worth touching in a docs PR.
2026-05-25 02:55:27 +08:00
..