Skip to content

chore: stale docs cleanup — SDK 56 strings, dead .agents dir, QA-env references - #391

Merged
thomasluizon merged 3 commits into
mainfrom
chore/stale-docs-cleanup
Jul 4, 2026
Merged

chore: stale docs cleanup — SDK 56 strings, dead .agents dir, QA-env references#391
thomasluizon merged 3 commits into
mainfrom
chore/stale-docs-cleanup

Conversation

@thomasluizon

@thomasluizon thomasluizon commented Jul 4, 2026

Copy link
Copy Markdown
Owner

Docs / tooling staleness cleanup. No product code touched.

Docs corrected

  • README.mdapps/mobile tech Expo 55, RN 0.83Expo 56, RN 0.85; removed the @orbit/mobile run ios command (Android-only, no ios script); trimmed Xcode from prerequisites (Orbit mobile ships Android only).
  • CLAUDE.md — smoke suite runs post-deploy against prod (SMOKE_BASE_URL, per playwright.config.ts + smoke-prod.yml), not a QA env.
  • FEATURES.md — corrected the MCP tool count to the verified true total: 79 [McpServerTool] methods across 15 classes (was "94"; the per-class table summed to 93). "94" was the raw McpServerTool substring count, which also included the 15 class-level [McpServerToolType] attributes (79 + 15 = 94). Fixed all three "94" mentions and every per-class row (Habit 22, Goal 11, Agent 8, Notification 7, Profile 7, Tag 5, Subscription 4, Checklist 3, Gamification 3, API-key 2, Calendar 2, User-fact 2, Account 1, Feature 1, Support 1 = 79).
  • .claude/skills/prime, deep-research, audit-performanceExpo SDK 5556 (and Next.js 1516 in prime).
  • .claude/skills/deep-research/SKILL.md — swapped the worked-example topic off the aborted QA env (QA / staging environment (web + api + android internal) #211) to a neutral background-job-durability question.
  • .claude/mcp.json.example — rewrote the _comment to describe all declared servers (postgres-local/postgres, vercel/render/stripe/stitch, sonarqube, csharp-lsp via the local wrapper), not just csharp-lsp.

Deletions

  • .agents/ — stray pre-.claude/ relic (outdated Next.js-15 PRD, an executed issue-103 plan, a duplicate make-interfaces-feel-better copy).
  • Six unused .claude/skills (user-approved): add-api-endpoint, add-cqrs-handler, add-feature-page, add-migration, add-shared-type (scaffolding — Claude writes this code directly) and make-interfaces-feel-better (duplicate of the user-global skill).
  • Scrubbed the now-dangling references: .claude/agents/contract-aligner.md (dropped the add-api-endpoint trigger) and skills-lock.json (removed the make-interfaces-feel-better lock entry). _shared/verification-protocol.md kept — still used by 7 live skills.

Gates

  • git grep "SDK 55|Expo 55|0.83" (tracked, excl. lockfile) → zero.
  • git grep "add-api-endpoint|add-cqrs-handler|add-feature-page|add-migration|add-shared-type|make-interfaces-feel-better" → zero.

Note for reviewers: the two marketing surfaces still quoting "94 MCP tools" (orbit-landing-page translations.ts, en + pt-BR) are intentionally left for a separate decision — see the team lead.

🤖 Generated with Claude Code

…references

- Delete the stray tracked .agents/ dir (pre-.claude/ relic: outdated
  Next.js-15 PRD, executed issue-103 plan, duplicate make-interfaces skill).
- README.md: apps/mobile tech "Expo 55, React Native 0.83" → "Expo 56,
  React Native 0.85".
- README.md: drop the "@orbit/mobile run ios" workspace command (Android-only,
  no ios script exists).
- CLAUDE.md: smoke suite runs post-deploy against prod (SMOKE_BASE_URL), not a
  QA env — reworded to match playwright.config.ts / smoke-prod.yml.
- .claude/skills/prime/SKILL.md: "Next.js 15 + Expo SDK 55" → "Next.js 16 +
  Expo SDK 56".
- .claude/skills/deep-research/SKILL.md: "Expo SDK 55" → 56.
- .claude/skills/audit-performance/SKILL.md: "Expo SDK 55" → 56.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Jul 4, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
orbit-ui-mobile-web Ignored Ignored Jul 4, 2026 7:40pm

Request Review

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review: PR #391 — chore: stale docs cleanup

Scope: PR #391 in thomasluizon/orbit-ui-mobile
Recommendation: APPROVE

Summary

Docs-only cleanup: deletes the stray pre-.claude/ .agents/ directory (an outdated
Next.js-15 redesign PRD, an already-executed plan, and a duplicate skill copy) and
corrects five stale strings (Expo/RN version, a nonexistent ios npm script, and a
QA-vs-prod description of the smoke suite) across README.md, CLAUDE.md, and three
SKILL.md files. No product code, API contract, or shared types touched.

Every factual claim in the diff was independently verified against the live repo state
(see Findings/Deferred) and all checked out. No behavior change, no cross-platform
surface, no contract surface.

Findings

Critical

None

High

None

Medium

None

Low / Info

None

Subagents

Agent Verdict
parity-checker N/A — no apps/web/** or apps/mobile/** files changed
i18n-syncer N/A — no user-facing strings or packages/shared/src/i18n/*.json changed
contract-aligner N/A — no packages/shared/src/types/*, endpoints.ts, or orbit-api changed
security-reviewer N/A — no orbit-api code changed

Validation

Check Result
Lint N/A — docs-only diff, covered by separate CI checks per workflow
Type check N/A — no code changed
Tests N/A — no code changed; Build/Unit Tests/SonarCloud run as separate required checks
Build (api) N/A — orbit-api not touched

Deferred — N/A dimensions & files not verdicted

  • DESIGN.md/AI-slop (#8): N/A — no apps/* UI files changed.
  • Backend hard rules (#13): N/A — orbit-api not checked out in CI and not touched.
  • FEATURES.md parity (#14): N/A — no user-facing feature surface changed.
  • Backward-compat guard (Phase 5): N/A — no packages/shared/src/types/*.ts or
    orbit-api/**/DTOs/*.cs hunks in the diff.
  • All 12 changed files (7 deletions under .agents/, 5 modifications) received a
    verdict — nothing left un-reviewed.

Verification performed

  • apps/mobile/package.json: confirmed expo: 56.0.14, react-native: 0.85.3, and no
    ios script exists (only android, android:apk) — matches the README correction
    exactly.
  • Confirmed zero remaining references to .agents/, issue-103, or redesign-v2
    anywhere in the tracked tree after the deletion — the directory was genuinely dead.
  • Confirmed .claude/skills/make-interfaces-feel-better/{SKILL,animations,performance, surfaces,typography}.md are real, non-empty files (148/379/88/256/135 lines) whose
    line counts exactly match the deleted .agents/ duplicate's stats — the canonical
    skill was left intact, not accidentally deleted alongside its duplicate.
  • Confirmed .github/workflows/smoke-prod.yml + apps/web/playwright.config.ts use
    SMOKE_BASE_URL against the production Vercel deployment (target=production) —
    matches the corrected CLAUDE.md wording ("runs post-deploy against prod", not a QA
    env).
  • Confirmed the SDK/Next.js version strings in the three SKILL.md files now read
    "Expo SDK 56" / "Next.js 16" consistently with the actual apps/mobile and
    apps/web dependency versions.

What's good

  • Every stale-string claim in the PR body was checked against ground truth rather than
    taken on faith, and all of it held up — this is a well-scoped, low-risk chore that
    does exactly what it says.
  • The .agents/ deletion was verified safe before merging: no dangling references, and
    the one file that looked like it might be an accidental duplicate deletion (the
    make-interfaces-feel-better skill) was confirmed to have a fully intact canonical
    copy elsewhere.

Recommendation

Merge as-is. No changes requested.

thomasluizon and others added 2 commits July 4, 2026 16:36
- README.md: trim Xcode from prerequisites (Orbit mobile ships Android only).
- FEATURES.md: correct the MCP tool count to the real total — 79
  `[McpServerTool]` methods across 15 classes (was "94", table summed to 93);
  fix each per-class row to the verified count (Habit 22, Goal 11, Agent 8,
  Notification 7, Profile 7, Tag 5, Subscription 4, Checklist 3, Gamification 3,
  API-key 2, Calendar 2, User-fact 2, Account 1, Feature 1, Support 1 = 79).
- .claude/skills/deep-research/SKILL.md: swap the worked-example topic off the
  aborted QA-env (#211) to a neutral background-job-durability question.
- .claude/mcp.json.example: rewrite the _comment to describe the servers the
  file actually declares (postgres-local/postgres, vercel/render/stripe/stitch,
  sonarqube, csharp-lsp via the local wrapper) instead of only csharp-lsp.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Delete six unused .claude/skills (user-approved):
- add-api-endpoint, add-cqrs-handler, add-feature-page, add-migration,
  add-shared-type — scaffolding skills; Claude writes this code directly.
- make-interfaces-feel-better — duplicate of the user-global skill.

Scrub the now-dangling references:
- .claude/agents/contract-aligner.md: drop the "when add-api-endpoint skill
  completes" invocation trigger.
- skills-lock.json: remove the make-interfaces-feel-better lock entry (no
  externally-sourced skills remain).

_shared/verification-protocol.md is kept — still used by 7 live skills.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
thomasluizon added a commit to thomasluizon/orbit-api that referenced this pull request Jul 4, 2026
…gner

The add-api-endpoint scaffolding skill was deleted in orbit-ui-mobile
(thomasluizon/orbit-ui-mobile#391), so remove its stale "when the skill
completes" invocation trigger from the contract-aligner agent.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review Complete

Scope: PR #391 in thomasluizon/orbit-ui-mobile (chore/stale-docs-cleanupmain)
Recommendation: APPROVE

Severity Count
Critical (incl. ⚠️ old-client breaks) 0
High 0
Medium 1
Low / Info 1

Code Review: PR #391

Recommendation: APPROVE

Summary

Docs-only chore: deletes a stray .agents/ directory, fixes Expo/Next.js version strings across README/CLAUDE.md/three skill docs, corrects a smoke-suite description (runs against prod via SMOKE_BASE_URL, not a QA env), rewrites .mcp.json.example's comment to match its actual server list, and corrects FEATURES.md's MCP tool counts (94 → 79 with a re-verified 15-row table). No product/app/API code touched. Every claim checkable from this repo verified accurate.

Findings

Critical / High

None.

Medium

PR description omits roughly half the diff. The PR body's "## Changes" and "## Gate" (git grep -nE "SDK 55|Expo 55|0.83") only describe the first commit (dde7c823). A second commit, 58ca1dfa ("iOS prereqs, MCP tool count, QA-env example"), isn't mentioned at all — it carries the FEATURES.md MCP-tool-count rewrite (FEATURES.md:26,69,74-88,274), the .claude/mcp.json.example comment rewrite, the deep-research/SKILL.md example swap, and the README Xcode-prereq line. The FEATURES.md change restates a customer-facing capability count, exactly the kind of claim the stated gate doesn't cover — a reviewer scanning only the PR body wouldn't know to check it. Fix: update the PR body (or squash commit messages into it) so the description matches the diff.

Low / Info

FEATURES.md's MCP tool-count fix is internally consistent but not independently verifiable here. The new table sums to 79 (22+11+8+7+7+5+4+3+3+2+2+2+1+1+1), matching the inline claim and footer citation; the old table likewise summed to 93 against a stated "94," matching the commit message's claimed discrepancy. Ground truth (orbit-api/src/Orbit.Api/Mcp/Tools/*.cs) lives in the sibling orbit-api repo, not present in this sandbox — not verifiable in this review environment. Recommend the human reviewer do a quick grep -c "\[McpServerTool\]" pass per file before merge.

Subagents

Agent Verdict
parity-checker N/A — no apps/web/apps/mobile source changed
i18n-syncer N/A — no user-facing strings/i18n JSON changed
contract-aligner N/A — no shared types/endpoints changed, orbit-api not touched
security-reviewer N/A — no orbit-api code changed

Validation

Lint/Type-check/Tests/Build: N/A — docs-only diff, no lintable/testable source changed. (Build/Unit Tests/SonarCloud run as separate required CI checks for this PR.)

Deferred

  • DESIGN.md/AI-slop, Backend hard rules, Parity, Backward-compat guard — N/A, no matching surface touched.
  • FEATURES.md parity — N/A in the "new feature" sense (doc correction of existing behavior, not a new feature).
  • MCP tool-count ground truth — deferred to human reviewer (sibling orbit-api repo not checked out in this job).
  • All other changed files were read at HEAD and cross-checked against the real artifacts they describe: apps/mobile/package.json (confirms no ios script), .github/workflows/smoke-prod.yml (confirms prod/SMOKE_BASE_URL trigger), the live .mcp.json.example (confirms 8 listed servers match), and a repo-wide grep (zero remaining .agents/ references, make-interfaces-feel-better skill intact with all 5 files).

What's good

Every checkable claim was independently re-derived and matched. The .agents/ deletion is clean with no dangling references. No product code, API contract, or shared type touched — genuinely zero-blast-radius.

Recommendation

Safe to merge as-is. Ask the author to (1) reconcile the PR body with the second commit's changes, and (2) sanity-check the new MCP tool counts against orbit-api locally before merge.

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review Complete

Scope: PR #391 in orbit-ui-mobile (chore/stale-docs-cleanupmain)
Recommendation: APPROVE

Severity Count
Critical (incl. ⚠️ old-client breaks) 0
High 0
Medium 0
Low / Info 0

Summary

Pure docs/tooling cleanup — no product code (apps/, packages/shared runtime code) touched. It deletes a stray pre-.claude .agents/ directory (an aborted redesign PRD/plan + a duplicate skill copy) and six unused .claude/skills (five scaffolding skills the author says Claude writes directly, plus a duplicate of a user-global make-interfaces-feel-better skill), and corrects stale strings: Expo SDK 55→56, RN 0.83→0.85, Next.js 15→16, MCP tool count 94→79, smoke-suite target QA→prod, and removes a nonexistent ios npm script mention from README.

Independent fact-checks (all passed)

Each PR-body claim was re-derived against the actual final commit (12764da3, the PR branch tip) and untouched repo files, rather than taken on faith:

  • git grep "SDK 55|Expo 55|0.83" at the final commit (*.md/*.json) → zero hits, matching the PR's stated gate.
  • git grep for the five scaffolding-skill names + make-interfaces-feel-better at the final commit → zero hits outside the deleted files — no dangling references in WORKFLOW.md, CLAUDE.md, DESIGN.md, FEATURES.md, or .github/**.
  • apps/mobile/package.json has no ios script (only android, android:apk) — confirms the README fix is correct, not a regression.
  • apps/web/playwright.config.ts + .github/workflows/smoke-prod.yml both key off SMOKE_BASE_URL/"prod origin", with no QA-env wiring — confirms the CLAUDE.md smoke-suite correction (prod, not QA) is accurate.
  • FEATURES.md arithmetic: new per-class counts (22+11+8+7+7+5+4+3+3+2+2+2+1+1+1) sum to 79, matching all three "94→79" fixes; old rows summed to 93 (not 94), supporting the stated root cause (94 = 79 tools + 15 class attributes). This is internal-consistency verification, not ground truth against orbit-api source (deferred — sibling repo not checked out here).
  • _shared/verification-protocol.md is referenced by exactly 7 live skills, confirming it was correctly kept rather than deleted.

Deferred

  • Correctness/SOLID/comment-policy/type-safety/console.log/DESIGN.md dimensions: N/A, no source code in the diff.
  • Backend hard rules and the FEATURES.md MCP-tool-count ground truth: not verifiable in this CI environment — orbit-api is a sibling repo not checked out here.
  • The two marketing surfaces still quoting "94 MCP tools" (orbit-landing-page): correctly and explicitly left out of scope by the PR author — separate repo, separate decision.

Subagents / Validation

All four rubric subagents (parity-checker, i18n-syncer, contract-aligner, security-reviewer) were N/A — none of their trigger surfaces (apps/web/apps/mobile files, i18n JSON, shared types/endpoints, orbit-api code) were touched. Validation (lint/typecheck/tests) skipped per the CI-wrapper rule (docs-only diff, no build surface; Build/Unit Tests/SonarCloud run as separate required checks).

@sonarqubecloud

sonarqubecloud Bot commented Jul 4, 2026

Copy link
Copy Markdown

thomasluizon added a commit to thomasluizon/orbit-api that referenced this pull request Jul 4, 2026
…paths (#284)

* chore: stale docs cleanup — README reality, .planning removal, agent paths

- README.md: rewrite to current reality — AI is OpenAI (gpt-4.1-mini primary,
  gpt-5.4-nano sub-tasks via AI:{ApiKey,Model,BaseUrl}, api.openai.com/v1), not
  Gemini/Ollama; config section reflects actual appsettings keys; features +
  layer breakdown cover shipped domains (Goals, Gamification, Calendar,
  Accountability, Challenges, Referrals, Agent/MCP, Sync, Waitlist, ...);
  controller list = actual Controllers/ contents (26); payments = Stripe +
  Google Play Billing; related repo = orbit-ui-mobile (Turborepo: Next.js 16
  web + Expo Android), not "orbit-ui Nuxt 4".
- src/Orbit.Infrastructure/CLAUDE.md: OpenAI .NET SDK 2.8.0 -> 2.12.0 (per .csproj).
- .claude/agents/security-reviewer.md: fix JWT service path
  Services/TokenService.cs -> Services/JwtTokenService.cs (both references).
- Delete the frozen .planning/ snapshot (contradicts current architecture) and
  its now-dead **/.planning entry in .dockerignore.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* chore: stale docs cleanup — agent paths, DTO layout, no-QA-env wording

- .claude/agents/security-reviewer.md: StripeConfiguration.ApiKey is set at
  startup in src/Orbit.Api/Extensions/ServiceCollectionExtensions.Infrastructure.cs,
  not Program.cs — fix the path.
- .claude/agents/contract-aligner.md: there is no Common/DTOs/ (nor any DTOs/
  folder); DTOs are feature-local records/classes under Orbit.Application/
  <Feature>/ and <Feature>/Models/, plus request/response records alongside
  commands/queries — reword the surface-area description and the read step.
- load-tests/README.md + tests/CLAUDE.md: drop "staging" / "QA runs" mentions —
  there is no QA/staging env, targets are prod + local only (#211).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* chore: drop dangling add-api-endpoint skill reference in contract-aligner

The add-api-endpoint scaffolding skill was deleted in orbit-ui-mobile
(thomasluizon/orbit-ui-mobile#391), so remove its stale "when the skill
completes" invocation trigger from the contract-aligner agent.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
@thomasluizon
thomasluizon merged commit 0b6b461 into main Jul 4, 2026
10 checks passed
@thomasluizon
thomasluizon deleted the chore/stale-docs-cleanup branch July 4, 2026 19:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant