Skip to content

Commit 656a040

Browse files
author
Shutong Wu
committed
fix(review): resolve whole-branch review findings (docs/config hygiene)
- docs-deploy.yml: map GOATCOUNTER_CODE into the Build env so the cookieless beacon actually activates when the maintainer sets the variable (was a producer-without-consumer gap that silently disabled docs traffic) - MAINTAINER_ACTIONS.md: rewrite the stats section to match the shipped private design (drop the stale 'grant Actions write + commit data.json' over-priv item, add the required STATS_GITHUB_TOKEN PAT, fix the social-preview note) - docusaurus.config.js: wire favicon-32.png (was an orphaned generated asset) - lowercase 3 stray 'MCP For Unity' refs in roslyn.md / migrations/v6.md - remove internal docs/superpowers/ spec+plan scratch from the PR (contradicted the shipped Ocean/private design); gitignore superpowers artifacts Whole-branch review: 6/6 Critical/Important confirmed, 0 refuted, all docs/config hygiene — build/tests/security/correctness all clean. These are the fixes. Claude-Session: https://claude.ai/code/session_01XFiuAUxNS9riUJFFBEHvui
1 parent be3d66d commit 656a040

8 files changed

Lines changed: 37 additions & 936 deletions

File tree

.github/workflows/docs-deploy.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,11 @@ jobs:
7070

7171
- name: Build
7272
working-directory: website
73+
env:
74+
# Inject the cookieless GoatCounter beacon when provisioned. The site
75+
# gates on process.env.GOATCOUNTER_CODE, which Actions does NOT
76+
# auto-expose — the Actions variable must be mapped in explicitly.
77+
GOATCOUNTER_CODE: ${{ vars.GOATCOUNTER_CODE }}
7378
run: npm run build
7479

7580
- name: Upload Pages artifact

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,3 +69,7 @@ tools/.unity-check-logs/
6969
# Ignore the .claude directory, since it might contain local/project-level setting such as deny and allowlist.
7070
/.claude
7171
.mcp.json
72+
73+
# Superpowers skill working artifacts (specs, plans, SDD ledger)
74+
docs/superpowers/
75+
.superpowers/

docs/MAINTAINER_ACTIONS.md

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ cannot be committed to the repository. Complete these after the PR lands on
1010

1111
- [ ] **Upload the GitHub social preview image.**
1212
Go to: `https://github.com/CoplayDev/unity-mcp` → Settings → Social preview.
13-
Upload: `website/static/img/github-social-preview.png` (1280×640, generated by `npm run gen:brand`).
13+
Upload: `website/static/img/github-social-preview.png` (2560×1280, 2:1 — rendered from the brand HTML templates, not `gen:brand`).
1414

1515
- [ ] **Set repository topics.**
1616
Suggested topics: `unity`, `mcp`, `model-context-protocol`, `ai`, `gamedev`,
@@ -51,28 +51,31 @@ cannot be committed to the repository. Complete these after the PR lands on
5151

5252
---
5353

54-
## GoatCounter (cookieless analytics)
54+
## Adoption analytics (private, maintainer-only)
5555

56-
- [ ] **Create a GoatCounter account** at [goatcounter.com](https://www.goatcounter.com/)
57-
for the docs site (`coplaydev.github.io/unity-mcp`).
56+
The daily stats workflow (`.github/workflows/stats.yml`) is **read-only** — it posts a
57+
unified table to the **GitHub Actions run summary** (collaborators only) and never commits.
58+
Leave the repo's default workflow permissions at read-only; do **not** enable repo-wide
59+
"Read and write".
5860

59-
- [ ] **Generate an API token** from the GoatCounter dashboard
60-
(Settings → API tokens → Create token with `readonly` scope for stats queries).
61+
- [ ] **Provision the GitHub traffic PAT** (powers the dashboard's lead "real-user" rows —
62+
unique repo cloners/viewers). Create a fine-grained PAT scoped to `CoplayDev/unity-mcp`
63+
with **Repository permissions → Administration: read**, then add it as a repository
64+
**secret** `STATS_GITHUB_TOKEN`. (The default `GITHUB_TOKEN` returns 401 on the traffic API,
65+
so without this PAT those rows render ``.)
6166

62-
- [ ] **Add GitHub Actions secrets** in the `CoplayDev/unity-mcp` repository
63-
(Settings → Secrets and variables → Actions → New repository secret):
64-
- `GOATCOUNTER_TOKEN` — the API token from the step above
65-
- `GOATCOUNTER_SITE` — the GoatCounter site code (the subdomain, e.g. `unity-mcp`)
67+
- [ ] **(Docs traffic) Create a GoatCounter account** at [goatcounter.com](https://www.goatcounter.com/)
68+
for the docs site (`coplaydev.github.io/unity-mcp`); keep its dashboard **private**.
6669

67-
- [ ] **Grant Actions write permission** so the daily stats workflow can commit
68-
`website/static/stats/data.json`.
69-
Go to: Settings → Actions → General → Workflow permissions → Read and write permissions.
70+
- [ ] **Generate a GoatCounter API token** (Settings → API tokens → `readonly` scope) and add
71+
two repository **secrets**:
72+
- `GOATCOUNTER_TOKEN` — the API token
73+
- `GOATCOUNTER_SITE` — the site code (subdomain, e.g. `unity-mcp`)
7074

71-
- [ ] **Set `GOATCOUNTER_CODE`** in the docs deployment environment (or Docusaurus
72-
build step) so the cookieless beacon is injected:
73-
```
74-
GOATCOUNTER_CODE=<your-site-code>
75-
```
75+
- [ ] **Add `GOATCOUNTER_CODE` as an Actions _variable_** (Settings → Secrets and variables →
76+
Actions → Variables) with the same site code. It is already wired in:
77+
`.github/workflows/docs-deploy.yml`'s Build step maps it from `vars.GOATCOUNTER_CODE`, so once
78+
the variable is set the cookieless beacon is injected on the next docs deploy.
7679

7780
---
7881

docs/superpowers/plans/2026-06-27-repo-revamp.md

Lines changed: 0 additions & 689 deletions
This file was deleted.

docs/superpowers/specs/2026-06-27-repo-revamp-design.md

Lines changed: 0 additions & 226 deletions
This file was deleted.

website/docs/guides/roslyn.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ Most users don't need this. Enable it when:
2424

2525
The installer downloads the required NuGet packages, places the DLLs in `Assets/Plugins/Roslyn/`, and adds `USE_ROSLYN` to Scripting Define Symbols.
2626

27-
You can also trigger it from the menu: **Window → MCP For Unity → Install Roslyn DLLs**.
27+
You can also trigger it from the menu: **Window → MCP for Unity → Install Roslyn DLLs**.
2828

2929
## Manual install (if the installer isn't available)
3030

0 commit comments

Comments
 (0)