Skip to content

ci: remove --max-turns cap from Claude PR review - #193

Merged
thomasluizon merged 1 commit into
mainfrom
chore/review-no-max-turns
Jun 6, 2026
Merged

ci: remove --max-turns cap from Claude PR review#193
thomasluizon merged 1 commit into
mainfrom
chore/review-no-max-turns

Conversation

@thomasluizon

Copy link
Copy Markdown
Owner

The Claude PR Review action fails on large PRs with error_max_turns ("Reached maximum number of turns (30)") — seen on #192. Removing the explicit --max-turns 30 lets the reviewer run to completion.

Why this is a standalone PR (not folded into #192): claude-code-action validates that the review workflow file on a PR branch is byte-identical to the version on the default branch (it needs that to mint the App token). Editing the workflow on a feature branch instead produces a 401 — Workflow validation failed. So the fix has to land directly on main.

Expected: this PR's own Claude review will fail with that same 401 Workflow validation failed (its workflow differs from main until this merges) — the action documents this as normal ("you should ignore this error"). claude-review is not a required check (only Build + Unit Tests are), so it does not block merge. After this merges, every PR review — including #192's, once it's updated from main — runs with no turn cap.

🤖 Generated with Claude Code

Large PRs (e.g. #192) failed with error_max_turns ("Reached maximum number of
turns (30)"). Drop the explicit --max-turns so the reviewer runs to completion.

Must land on main: claude-code-action requires the review workflow on a PR
branch to be byte-identical to the default branch (App-token validation), so the
fix cannot be applied on a feature branch.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@thomasluizon
thomasluizon merged commit b7e9a6b into main Jun 6, 2026
3 of 4 checks passed
@thomasluizon
thomasluizon deleted the chore/review-no-max-turns branch June 6, 2026 20:10
thomasluizon added a commit that referenced this pull request Jun 27, 2026
…ator, feed leak, period 400 (#193, #190)

Resolves claude-review findings: add UnblockUserCommandValidator (HIGH); filter blocked users from GetCheersQuery both directions (HIGH); drop opted-out actors from the friend feed (MED); MaximumLength on friend-request handle/referralCode (MED); recap period set now matches the resolver via a shared IsKnownPeriod (single source of truth) + an invalid period returns 400 not 500 at the recap/retrospective endpoints (MED).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
thomasluizon added a commit that referenced this pull request Jun 27, 2026
…ing (#261)

* feat(gamification): free-tier rebalance + infinite levels + recap (#186, #190)

Reversible gamification_free_tier AppFeatureFlag (default off) unlocks streak/XP/level + streak-freeze auto-activation for free users. Infinite levels via 100*L^2 curve, continuous past level 10. New half_year_hero/streak_titan achievements + reserved first_cheer. GET /api/gamification/recap returns metrics-only retrospective + referral shareDeepLink, ungated.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* feat(astra): warm persona tone + soften act-immediately framing (#183)

New EncouragingToneSection (Order 150) + softened CoreIdentitySection so clarify-first coexists with direct action; destructive/bulk route through existing confirmation-card gating. Reuses shipped resolve + pendingOperations infra; gpt-4.1-mini unchanged.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* feat(social): social foundation - friendships, cheers, feed, moderation, handles (#193)

5 entities + User.Handle/SocialOptIn + migration w/ deterministic handle backfill. Endpoints (request/accept/remove/list/feed/cheer/block/report + set-handle + opt-in), SocialAccessGuard, rate limits. OpenAI moderation (fail-open on outage). FriendFeedEvent write-pipeline: streak hook (all users) + achievement hook (Pro) + keyset read. first_cheer wired; FCM pushes; export + deletion purge. Backend + shared only.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* feat(onboarding): setup-checklist flags, bulk-create tags, template-pack support (#187, #189)

User onboarding-checklist completion flags (ride profile payload, auto-set from signals) + onboarding achievement hook (#189). BulkCreateHabits accepts per-item tags resolved/created by name for starter packs (#187). Migration AddOnboardingChecklistFlags.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* fix(api): address PR #261 review — block-filter cheers, unblock validator, feed leak, period 400 (#193, #190)

Resolves claude-review findings: add UnblockUserCommandValidator (HIGH); filter blocked users from GetCheersQuery both directions (HIGH); drop opted-out actors from the friend feed (MED); MaximumLength on friend-request handle/referralCode (MED); recap period set now matches the resolver via a shared IsKnownPeriod (single source of truth) + an invalid period returns 400 not 500 at the recap/retrospective endpoints (MED).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* fix(api): #261 round-2 review — block/unblock rate limits, GetFriends validator, ordering, cheer-ownership

Rate-limit block/unblock (50/24h); add GetFriendsQueryValidator (UserId NotEmpty); check target existence before BlockedUser.Create; verify a reported CheerId involves the reported user (else CheerNotFound).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
thomasluizon added a commit that referenced this pull request Jun 30, 2026
* feat(api): 1:1 accountability buddies (#201)

Adds a 1:1 accountability-buddy system on top of the #193 social
foundation: invite -> accept between two accepted friends, per-user
linked-habit joins, moderated check-ins that push the buddy, a
Daily/Weekly cadence, multiple pairs per user up to a cap, and
either-party revoke.

- Domain: AccountabilityPair / AccountabilityPairHabit /
  AccountabilityCheckIn entities + AccountabilityPairStatus /
  AccountabilityCadence enums + guards.
- Application: AccountabilityPairService, 6 commands + 2 queries,
  FluentValidation, no-N+1 pairs query.
- API: AccountabilityController (7 routes) + accountability-invites /
  accountability-checkins rate-limit policies.
- Persistence: AddAccountabilityBuddies migration (3 tables, unique
  (PairId,UserId,HabitId) and (PairId,UserId,Date) indexes).
- Battle Buddy award wired on pair-accept via the "battle_buddy"
  string id; no-ops until #196 ships the achievement definition.
- Registered the new controller actions in the agent catalog.
- Tests: domain entity guards + handler/validator/query unit tests.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* chore(api): integrate main, rescaffold AddAccountabilityBuddies, grant BattleBuddy now #196 ships

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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