Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .claude/memory/MEMORY.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ Keep this file under 200 lines — anything longer is content bloat, not memory.
- [learnings/verify-ticket-issues-still-exist-on-main](learnings/2026-05-28-verify-ticket-issues-still-exist-on-main.md) — Re-read the ticket's target file in current `origin/<base>` before drafting; humans push small fixes direct-to-main between ticket creation and agent pickup (PR #29 ENG-30 round 1)
- [learnings/vercel-mcp-silently-hides-projects](learnings/2026-05-31-vercel-mcp-silently-hides-projects.md) — Vercel MCP can return only a subset of a team's projects even with the right teamId — `get_project(self-managing-codebase)` 404'd despite the project being healthy; use the curl+Vercel-bot fallback, don't assume it was deleted
- [learnings/sentry-firstseen-relative-rejected](learnings/2026-06-02-sentry-firstseen-relative-rejected.md) — Sentry `search_issues` tool description shows `firstSeen:-7d` as a valid filter but the API rejects it; use ISO timestamps or pass `statsPeriod` on the tool call instead
- [learnings/linear-team-name-silent-empty](learnings/2026-06-05-linear-team-name-silent-empty.md) — Linear `list_issues({team: 'self-managing-codebase'})` returns empty without error; the actual team is `Engineering` (ENG-* prefix). Run `list_teams()` first or omit the `team` arg

## Decisions
- [decisions/mcp-for-small-writes-checkout-for-big](decisions/2026-05-26-mcp-for-small-writes-checkout-for-big.md) — Single-file writes go through GitHub MCP; multi-file or test-needing changes use the mounted checkout + `git push`
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Linear `list_issues` silently returns empty for the wrong team name

The Linear team backing this project is **Engineering** (issue prefix `ENG-*`) — NOT `self-managing-codebase`. The GitHub repo, Vercel project, and Sentry project are all named `self-managing-codebase`, so reaching for `list_issues({ team: 'self-managing-codebase' })` is the natural first guess. It returns `{issues: [], hasNextPage: false}` with no error — looks identical to a genuinely empty queue. Three rounds of state filters (`In Progress`, `Todo`, `Triage`, `Backlog`) all returned empty before I noticed the actual ENG-* prefix on issues already referenced in the manager prompt's memory index and in prior PR titles.

Defensive pattern: before any `list_issues({ team: ... })` call from a fresh session, run `list_teams()` once and use the returned team `name` (or omit `team` entirely and filter client-side). The MCP doesn't validate the team argument against known teams — unknown names return zero issues silently instead of 4xx-ing or warning.

False conclusion this avoids: "Triage and Todo are empty, nothing to pick up, fall through to memory/retro." If you actually had work assigned, you'd skip it for a tick.