adding purpose-classifier data

This commit is contained in:
2026-07-29 23:45:26 -07:00
parent a0f34b89cb
commit c9d21bfc43
61 changed files with 9839 additions and 0 deletions
+205
View File
@@ -0,0 +1,205 @@
{"prompt": "we need a plan for splitting the monolithic ledger service into separate read and write paths. postgres logical replication is on the table, so is debezium CDC. write it up as an RFC with explicit rollback points at each stage", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.9, "slice": "core", "lang": "en"}
{"prompt": "add pagination to GET /v2/orders, cursor based", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "core", "lang": "en"}
{"prompt": "typo in the toast: \"Sucessfully saved\" -> \"Successfully saved\"", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.05, "slice": "core", "lang": "en"}
{"prompt": "SwiftUI settings screen for the notification prefs — grouped list, three toggles, a picker for quiet hours, matches the rest of the app's styling", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "core", "lang": "en"}
{"prompt": "UserManager is a terrible name at this point, it does account lifecycle only. rename it to AccountService everywhere including the test doubles and the DI registration", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "boundary", "lang": "en"}
{"prompt": "why does the invoice total come out 1 cent short sometimes? only on annual plans with a coupon as far as i can tell", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "is the upload handler in internal/media safe against zip bombs and path traversal? just want an assessment before we ship", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "README for the pgshovel CLI — install, the three subcommands, a quickstart with real flags, and a troubleshooting section", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "core", "lang": "en"}
{"prompt": "how should we shard the events table", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "bump axios to 1.8.2, lockfile too", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.1, "slice": "core", "lang": "en"}
{"prompt": "rust: parser for the legacy .plm telemetry format. records are length-prefixed, big endian, header has a version byte and we need to support v2 and v3. stream it, don't read the whole file", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "make the nav sticky", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.2, "slice": "core", "lang": "en"}
{"prompt": "walk me through how the offline queue in Sync/QueueCoordinator.swift decides what to retry. i've read it twice and i still don't get the ordering guarantees", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "boundary", "lang": "en"}
{"prompt": "extract the 400 lines of form state out of CheckoutPanel.tsx into hooks. same behavior, i just can't read it anymore", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "design doc for offline sync in the iOS app. we're on SwiftData now. cover the local store shape, conflict resolution when two devices edit the same note, and what happens if the refresh token expires halfway through a sync", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.85, "slice": "core", "lang": "en"}
{"prompt": "commit message for what's staged", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.2, "slice": "core", "lang": "en"}
{"prompt": "plan and then build the retry/backoff layer for the webhook dispatcher. i want the design first but go ahead and land the code in the same go", "purpose": "planning", "secondary": "backendImpl", "mixed": true, "difficulty": 0.75, "slice": "mixed", "lang": "en"}
{"prompt": "flaky test: apps/api/test/session_reaper_test.go fails maybe 1 in 12 runs on CI, never locally. seen it fail two different assertions so i assume it's timing", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.75, "slice": "core", "lang": "en"}
{"prompt": "shrink the padding on the sidebar nav items, they're way too airy. 12px -> 6px vertical", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.15, "slice": "boundary", "lang": "en"}
{"prompt": "migration guide for people upgrading from v3 to v4 of the sdk. the breaking changes are: constructor takes an options object now, `fetchAll` is gone, and errors are typed", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "boundary", "lang": "en"}
{"prompt": "postgres migration: partial index on orders (status) where status in ('pending','processing'), plus a backfill script that chunks so we don't lock the table. table is ~180M rows", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "there are three copies of the phone number validation regex — web, admin, and the twilio worker. one of them is subtly different. pull them into one place", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "core", "lang": "en"}
{"prompt": "compose bottom sheet for the filter panel, drag handle, snap to half and full, dim the scrim behind it", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "core", "lang": "en"}
{"prompt": "what does this do\n\n```\n(?<=\\bv)(\\d+)(?:\\.(\\d+))?(?:\\.(\\d+))?(?:-([0-9A-Za-z-.]+))?(?=\\s|$)\n```", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.3, "slice": "core", "lang": "en"}
{"prompt": "roadmap for deprecating v1 of the pricing API across two quarters — sunset dates, what we migrate ourselves vs what partners have to do, and the checkpoints where we can still back out", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.65, "slice": "core", "lang": "en"}
{"prompt": "missing await in `flushMetrics`, that's why the last batch drops on shutdown. one line", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.2, "slice": "boundary", "lang": "en"}
{"prompt": "continue", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "vague-eval", "lang": "en"}
{"prompt": "celery beat job that rolls up per-account usage every night at 2am UTC into the usage_daily table, idempotent so we can re-run a day, and it has to survive a worker dying mid-run", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.65, "slice": "core", "lang": "en"}
{"prompt": "skeleton loaders for the dashboard cards instead of the spinner", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "core", "lang": "en"}
{"prompt": "necesito un plan para migrar de MySQL 5.7 a Postgres 16. son 40 tablas, hay triggers y dos stored procedures. quiero fases, ventanas de mantenimiento y cómo hacemos el dual-write mientras tanto", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.85, "slice": "core", "lang": "es"}
{"prompt": "PR description for the branch, keep it short, there's a linked ticket ENG-2291", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.25, "slice": "core", "lang": "en"}
{"prompt": "refresh token rotation in the express auth service — rotate on every use, detect reuse of a revoked token and nuke the family, store hashes not the tokens", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "the app hangs on launch about 1 in 5 cold starts on my M2. no crash, just a beachball. i suspect something on the main actor but the sample is a wall of dispatch frames", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "core", "lang": "en"}
{"prompt": "make it pop", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.3, "slice": "vague-eval", "lang": "en"}
{"prompt": "pasted from the sprint board, need your read on approach before i estimate:\n\n> ENG-1874 — Bulk member import\n> As an org admin I want to upload a CSV of up to 50k members and have them invited.\n> AC:\n> - accepts CSV and XLSX\n> - validates emails, shows a per-row error report before anything is sent\n> - partial success is allowed, admin can retry just the failed rows\n> - must not blow the sendgrid rate limit\n> - progress visible while it runs, survives a page refresh\n> Notes from Dana: last time we tried this synchronously it timed out at ~4k rows.\n\nhow would you structure this? i mostly care about where the state lives and how we get resumability without building a whole job system", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "pasted-context", "lang": "en"}
{"prompt": "flip the `new_search_ranker` flag default to on for internal orgs only", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.2, "slice": "core", "lang": "en"}
{"prompt": "convert the ImageCache completion-handler API to async/await. keep the old methods as deprecated shims so callers can move gradually", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "audit the terraform in infra/prod for things that cost money and shouldn't — idle NAT gateways, oversized RDS, gp2 volumes, that kind of thing. don't change anything yet, just tell me", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "release notes for 2.4.0, user-facing tone, group into new / improved / fixed", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "core", "lang": "en"}
{"prompt": "kafka consumer for the order-events topic that dedupes on (order_id, revision) — we're getting replays after rebalance and downstream is double-charging", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "boundary", "lang": "en"}
{"prompt": "drag to reorder the playlist rows, with the little grip icon, and it should feel right on touch too", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "timeout in config/http.yml is 5s, needs to be 30s for the reporting client", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.1, "slice": "core", "lang": "en"}
{"prompt": "sketch the data model for multi-tenant workspaces. users can belong to several, roles are per workspace, and billing hangs off the workspace not the user", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.65, "slice": "core", "lang": "en"}
{"prompt": "```\nFATAL: sqlx: scan error on column index 3, name \"deleted_at\": converting NULL to time.Time is unsupported\n\ngoroutine 1 [running]:\ngithub.com/hollowpoint/api/internal/store.(*ProjectStore).List(0xc0001a4020, {0x1049fe0, 0xc0000260a0}, {0xc000132030, 0x1a})\n\t/src/internal/store/project.go:118 +0x3c8\ngithub.com/hollowpoint/api/internal/handler.(*Handler).ListProjects(0xc00013a000, {0x1051e40, 0xc000180000}, 0xc000186000)\n\t/src/internal/handler/project.go:64 +0x9c\nnet/http.HandlerFunc.ServeHTTP(...)\n```\n\nthis only started after friday's deploy and only on the staging db. nothing in the migration touched deleted_at that i can see", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "pasted-context", "lang": "en"}
{"prompt": "document the /v3/subscriptions endpoints — request/response shapes, the four error codes, and the proration behavior. it's already built, i just never wrote it down", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "boundary", "lang": "en"}
{"prompt": "kubernetes to nomad, is it worth it? if yes i want a migration doc i can take to the platform review on thursday", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "boundary", "lang": "en"}
{"prompt": "cobra subcommand `snap prune` — takes --older-than, --dry-run, --keep-last N, prints what it would delete in a table", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "core", "lang": "en"}
{"prompt": "the focus ring doesn't show on the icon buttons in the toolbar. keyboard users can't tell where they are", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "boundary", "lang": "en"}
{"prompt": "rename `flush` to `commit` on the WriteBuffer type and everywhere it's called. there's a bunch of call sites, some in the python bindings", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "boundary", "lang": "en"}
{"prompt": "break the checkout rewrite into two week chunks", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "core", "lang": "en"}
{"prompt": "figure out where the leak is in the ingest worker, rss climbs ~200mb/hr and never comes back down. then write up a short postmortem for the incident channel", "purpose": "debugging", "secondary": "writing", "mixed": true, "difficulty": 0.85, "slice": "mixed", "lang": "en"}
{"prompt": "dataloader for the `author` field on Post so we stop N+1ing the users table in graphql", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "core", "lang": "en"}
{"prompt": "add wal/ to gitignore", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.05, "slice": "core", "lang": "en"}
{"prompt": "toast/notification system for the web app — queue them, max 3 visible, auto dismiss after 5s unless it's an error, pause the timer on hover", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "core", "lang": "en"}
{"prompt": "runbook for on-call when the dunning worker backs up. include how to tell if it's stripe or us, the queue depth query, and the safe way to drain", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "core", "lang": "en"}
{"prompt": "why do we have two caches in the request path (the lru in resolver.ts and the redis one in cache/client.ts)? is one of them dead weight", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "boundary", "lang": "en"}
{"prompt": "architect a plugin system for the CLI. third parties should be able to add subcommands without us shipping their code — thinking wasm or subprocess protocol, talk me through both", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.85, "slice": "core", "lang": "en"}
{"prompt": "redis token bucket rate limiter as express middleware, per api key, 1000/min with burst 50, return the standard RateLimit-* headers", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "core", "lang": "en"}
{"prompt": "wrong default port in cmd/serve.go, should be 8081 not 8080", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.1, "slice": "core", "lang": "en"}
{"prompt": "split internal/scheduler/scheduler.go up, it's 2100 lines. i'd guess three files: the loop, the lease code, and the metrics. no behavior change", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "es normal que `latestSnapshot()` devuelva nil cuando la lista está vacía? me rompe la vista pero no sé si el bug está en la vista o en el store", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "boundary", "lang": "es"}
{"prompt": "dark mode. we have hardcoded hex all over the css, want proper tokens and a data-theme switch that respects prefers-color-scheme with a manual override", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.65, "slice": "core", "lang": "en"}
{"prompt": "translate docs/getting-started.md to spanish, keep code blocks and CLI flags in english", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "core", "lang": "en"}
{"prompt": "OTA update strategy for ~4000 esp32 units in the field, half of them on flaky cellular. dual bank A/B, rollback on watchdog, staged rollout by cohort. want the design before i touch the bootloader", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.9, "slice": "core", "lang": "en"}
{"prompt": "remove the console.logs i left in the payments folder", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.1, "slice": "core", "lang": "en"}
{"prompt": "presence service over websockets — who's viewing which doc, heartbeat every 15s, tombstone after 45s of silence, and it has to work with three api replicas behind the lb", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.75, "slice": "core", "lang": "en"}
{"prompt": "read through packages/pipeline/src/stages and tell me what invariants the stage runner assumes. i'm about to add a stage and i don't want to violate something implicit", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.65, "slice": "core", "lang": "en"}
{"prompt": "CrashLoopBackOff on the collector pods since we cut over to the new node pool:\n\n```\n$ kubectl logs otel-collector-7c9f8d4b6-2xk4v --previous\n2026-07-29T18:02:11.884Z\tinfo\tservice/telemetry.go:84\tSetting up own telemetry...\n2026-07-29T18:02:11.891Z\tinfo\[email protected]/exporter.go:275\tDeprecated component. Will be removed in future releases.\n2026-07-29T18:02:11.902Z\terror\tservice/collector.go:112\tfailed to build pipelines\t{\"error\": \"failed to create \\\"otlp\\\" exporter: rpc error: code = Unavailable desc = connection error: desc = \\\"transport: Error while dialing: dial tcp 10.4.19.22:4317: i/o timeout\\\"\"}\nError: cannot start pipelines: failed to build pipelines\n2026/07/29 18:02:11 collector server run finished with error\n```\n\n```\n$ kubectl get events --field-selector involvedObject.name=otel-collector-7c9f8d4b6-2xk4v\n2m Warning BackOff Back-off restarting failed container collector\n```\n\nthe gateway it's dialing is up, i can curl it from a debug pod in the same namespace. netpol looks unchanged", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.75, "slice": "pasted-context", "lang": "en"}
{"prompt": "empty state for the saved-searches list — illustration slot, headline, one sentence, primary button. also write the copy, i'm bad at that", "purpose": "frontendImpl", "secondary": "writing", "mixed": true, "difficulty": 0.4, "slice": "mixed", "lang": "en"}
{"prompt": "we keep going in circles on whether auth belongs in the gateway or in each service. write both options up properly with tradeoffs and then pick one and defend it", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.75, "slice": "core", "lang": "en"}
{"prompt": "fix the off by one in `windowSlice` — it's dropping the last element when step divides len exactly", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.3, "slice": "boundary", "lang": "en"}
{"prompt": "doc comments on the public surface of the KeenSync swift package. every public type and method, DocC style, with a code sample on the two entry points", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "core", "lang": "en"}
{"prompt": "S3 multipart upload service: presign the parts, client uploads direct, we assemble on complete, abort incompletes older than 24h with a lifecycle rule + a reconciler for the db rows", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "thoughts?", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "vague-eval", "lang": "en"}
{"prompt": "virtualized data table in react — 50k rows, sticky header, column resize, row selection with shift-click ranges. no ag-grid, we don't want the license", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "core", "lang": "en"}
{"prompt": "replace our homegrown logger with slog everywhere. keep the same fields on the output so the datadog parsers don't break", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "regression: search returns nothing for two-word queries since we shipped the analyzer change. single words fine. phrases in quotes fine. bare two words -> zero hits", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "milestones for automating SOC2 evidence collection before the october audit", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "add cdn.plumbline.dev to the allowed CORS origins", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.1, "slice": "core", "lang": "en"}
{"prompt": "idempotency keys on POST /payments — 24h window, same key + same body returns the cached response, same key + different body is a 422", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "CONTRIBUTING.md. we use conventional commits, pnpm, changesets, and PRs need one approval + green CI. also mention the dev container", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.3, "slice": "core", "lang": "en"}
{"prompt": "review this diff before i push:\n\n```diff\n--- a/internal/session/store.go\n+++ b/internal/session/store.go\n@@ -41,17 +41,22 @@ func (s *Store) Get(ctx context.Context, id string) (*Session, error) {\n-\ts.mu.RLock()\n-\tdefer s.mu.RUnlock()\n-\tsess, ok := s.cache[id]\n-\tif ok && !sess.Expired(time.Now()) {\n-\t\treturn sess, nil\n-\t}\n+\tif sess, ok := s.cache[id]; ok && !sess.Expired(time.Now()) {\n+\t\treturn sess, nil\n+\t}\n+\ts.mu.Lock()\n+\tdefer s.mu.Unlock()\n \trow := s.db.QueryRowContext(ctx, getSessionSQL, id)\n \tvar sess Session\n \tif err := row.Scan(&sess.ID, &sess.UserID, &sess.ExpiresAt); err != nil {\n \t\treturn nil, err\n \t}\n \ts.cache[id] = &sess\n \treturn &sess, nil\n }\n```\n\nthe point was to avoid taking the lock on the hot path", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "pasted-context", "lang": "en"}
{"prompt": "HUD for the arena mode — health bar top left, ammo bottom right, killfeed that stacks up to 5 entries and fades. unity, ui toolkit", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "port the completion-handler network layer in Networking/ to Swift Concurrency. behavior identical, tests should pass untouched", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.65, "slice": "core", "lang": "en"}
{"prompt": "phased rollout plan for the new ranking model behind the `ranker_v3` flag — 1% internal, then 5%, guardrail metrics at each step and the abort criteria", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "grpc server-streaming endpoint for tail-ing build logs, with a resume token so a reconnecting client doesn't re-read from the top", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "eslintrc still uses `ecmaFeatures.jsx`, that's been deprecated forever, update it", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.15, "slice": "core", "lang": "en"}
{"prompt": "is this migration backwards compatible with the currently deployed api? we do rolling deploys so old and new run together for ~4 minutes", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "internal announcement for the v1 API deprecation. going to #eng and #customer-success, so two versions, one technical one not", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "core", "lang": "en"}
{"prompt": "picking the payment-flow bug back up. card declines show the generic \"something went wrong\" instead of the issuer message, but only for 3DS cards. i traced it as far as the webhook handler and got lost", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "swipe actions on the inbox rows — archive on left swipe, delete needs a confirm on full swipe. iOS 18+, swiftui", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "core", "lang": "en"}
{"prompt": "consolidate config loading. right now we read env in 6 places with different defaults. one Config struct, parsed once at startup, injected", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "feature flag evaluation service — rules on user attrs, percentage rollouts with sticky bucketing by user id, sdk polls a snapshot every 30s and falls back to last known on failure", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "core", "lang": "en"}
{"prompt": "just fix it", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.3, "slice": "vague-eval", "lang": "en"}
{"prompt": "changelog entry for the flag-cache change plus bump the package version to 0.9.3", "purpose": "writing", "secondary": "quickFix", "mixed": true, "difficulty": 0.25, "slice": "mixed", "lang": "en"}
{"prompt": "ANR reports on the Play console, all in `HomeViewModel.observeFeed`. 0.4% of sessions, mostly older Samsungs. attaching nothing useful because the traces are all Binder frames", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "core", "lang": "en"}
{"prompt": "modularization plan for the android app. one gradle module now, 90s incremental builds. want a target structure and the order to carve things out in without a big-bang refactor", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "core", "lang": "en"}
{"prompt": "wire up the theme switcher to persist in localStorage and not flash white on reload", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "core", "lang": "en"}
{"prompt": "here's the TODO block i left at the top of ingest/normalize.py, work through it:\n\n```python\n# TODO(marla, 2026-04): cleanup pass, none of this changes behavior\n# - _coerce_ts, _coerce_ts2 and parse_when are all doing the same thing\n# with different fallbacks. pick one, keep the union of the formats.\n# - the vendor branches (lines 210-410) are copy-paste x5. table drive it.\n# - NormalizeError vs BadRecord vs ValueError raised interchangeably.\n# one error type, with a `field` and `reason`.\n# - `_ctx` dict threaded through 9 functions. make it a dataclass.\n# - drop the py3.8 compat shims at the bottom, we're on 3.12 everywhere\n```\n\ntests in tests/test_normalize.py should stay green as-is", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "pasted-context", "lang": "en"}
{"prompt": "explain what happens when two clients call `acquireLease` at the same millisecond in the etcd path. is the fencing token actually monotonic there", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "sqlite FTS5 search in the notes CLI — index title and body, prefix matching, snippet with highlights in the terminal output", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "core", "lang": "en"}
{"prompt": "the date on the export filename is coming out as 2026-30-07. format string's wrong somewhere in exporters/csv.ts", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.2, "slice": "boundary", "lang": "en"}
{"prompt": "docstrings für alle public functions in analytics/cohorts.py, numpy style, mit den units bei den return values. code bleibt wie er ist", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "core", "lang": "de"}
{"prompt": "print stylesheet for the invoice view. hide the nav and the action bar, black on white, page breaks between line item groups", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "core", "lang": "en"}
{"prompt": "we're about to delete packages/legacy-charts. check nothing still imports it, including the docs site and the two example apps, and tell me what breaks", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "core", "lang": "en"}
{"prompt": "design the feature store for the churn models — offline in bigquery, online in dynamo, point-in-time correctness for training, and a story for backfilling a new feature", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.9, "slice": "core", "lang": "en"}
{"prompt": "nil check around `resp.Body` in the health prober, it panics when the server closes early", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.2, "slice": "boundary", "lang": "en"}
{"prompt": "i2c driver for the BME280 on the nrf52840 — burst read the calibration block once, then compensated temp/pressure/humidity, blocking api is fine for now", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "pull the shared request/response types out of apps/api and apps/web into a packages/contracts workspace so they stop drifting", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "summarize this thread into something i can paste in the design doc:\n\n```\nDana 10:02\nok so the crux is whether the plan change takes effect immediately or at period end\nRui 10:03\nstripe does it immediately with proration by default\nRui 10:03\nbut our invoices are generated by our own job, not stripe's, so the proration lines have to come from us\nDana 10:05\nright. and finance wants the credit to show as a separate line, not folded into the next charge\nJo 10:07\nheads up we also have the annual->monthly downgrade case, legal said no refunds so that one has to be at period end\nDana 10:08\nso: upgrades immediate w/ proration credit line, downgrades deferred to period end. monthly<->monthly?\nRui 10:09\nimmediate both ways for monthly, the amounts are small\nJo 10:11\nand the seat count changes are always immediate, that's already shipped\nDana 10:12\nagreed. someone write this down before we forget it again\n```", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "pasted-context", "lang": "en"}
{"prompt": "frame time spikes to 40ms every couple of seconds in the forest level. profiler points at GC. i'd bet allocations in the projectile pool but i can't see where", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.75, "slice": "core", "lang": "en"}
{"prompt": "onboarding carousel, 4 slides, dots, skip in the corner, swipe or tap-through, and it remembers if you've seen it", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "core", "lang": "en"}
{"prompt": "rate my api design before i build it: POST /batches to create, PUT /batches/{id}/items to add, POST /batches/{id}/commit to run. is the commit-as-POST thing going to bite me", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "go.mod says 1.21, bump to 1.23 and update the CI matrix to match", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.2, "slice": "core", "lang": "en"}
{"prompt": "training data loader for the tabular churn model. parquet on gcs, shuffle buffer, handles the class imbalance by weighting not resampling, deterministic given a seed", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.65, "slice": "core", "lang": "en"}
{"prompt": "sticky first column AND sticky header on the comparison table without breaking the horizontal scroll shadow", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "how do we test the whole payment flow end to end without hitting stripe for real. i want a strategy, not code yet — fixtures vs their test mode vs a fake we own", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.65, "slice": "boundary", "lang": "en"}
{"prompt": "unify the error types in the crate. right now there's ParseError, IoError and a `String` variant in three enums that all get boxed into anyhow at the boundary. one thiserror enum please", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "what's the blast radius if we turn on `strict_tenant_isolation` in prod? which code paths read it", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "core", "lang": "en"}
{"prompt": "写一下 packages/queue 的 README,说明重试策略、死信队列怎么处理、还有本地怎么起 worker", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "core", "lang": "zh"}
{"prompt": "504s from the /reports endpoint about 2% of the time, always the same customer, always around :00. their dataset isn't the biggest one either", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.75, "slice": "core", "lang": "en"}
{"prompt": "menu bar app UI for the timer — popover with the current task, start/stop, and today's total. keep it native looking, no electron vibes", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "core", "lang": "en"}
{"prompt": "vapor route POST /v1/devices/register — validates the APNs token, upserts by (user, token), returns 200 on repeat instead of a dup error", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "core", "lang": "en"}
{"prompt": "collapse the two nearly identical endpoints /search and /search/advanced into one. the advanced one is a superset, so keep both routes working but one handler", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "boundary", "lang": "en"}
{"prompt": "ADR for the decision we already made to use outbox-pattern instead of 2pc between orders and inventory. context, decision, consequences, the usual shape", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "boundary", "lang": "en"}
{"prompt": "review the auth flow in services/identity and then just go ahead and patch the small stuff you find — missing constant-time compares, that sort of thing", "purpose": "review", "secondary": "quickFix", "mixed": true, "difficulty": 0.7, "slice": "mixed", "lang": "en"}
{"prompt": "increase the pgbouncer default_pool_size to 40", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.1, "slice": "core", "lang": "en"}
{"prompt": "the marketing page hero shifts down ~40px right after fonts load. CLS is 0.19 in the field data. web fonts are self hosted with font-display swap already", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "dead code sweep in web/src — anything not reachable from the router or the two entry points. list it first then delete", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "core", "lang": "en"}
{"prompt": "implement the outbox publisher and document the message envelope in docs/events.md while you're in there", "purpose": "backendImpl", "secondary": "writing", "mixed": true, "difficulty": 0.7, "slice": "mixed", "lang": "en"}
{"prompt": "what does the `--reconcile-window` flag actually change at runtime, the help text is one line and useless", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "boundary", "lang": "en"}
{"prompt": "chart component: grouped bars, up to 6 series, legend toggles series on click, tooltip follows the nearest bar. recharts is already in the bundle", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "migration strategy off redux-toolkit onto zustand for the web app, incrementally, both coexisting for a while. which slices go first and how do we keep devtools working", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "boundary", "lang": "en"}
{"prompt": "jest is unhappy, no idea why, this passed yesterday:\n\n```\n FAIL src/hooks/useDebouncedQuery.test.tsx\n ● useDebouncedQuery › cancels the in-flight request when the term changes\n\n expect(jest.fn()).toHaveBeenCalledTimes(1)\n\n Expected number of calls: 1\n Received number of calls: 2\n\n 42 | await act(() => jest.advanceTimersByTimeAsync(300))\n 43 |\n > 44 | expect(abortSpy).toHaveBeenCalledTimes(1)\n | ^\n 45 | expect(fetchMock).toHaveBeenCalledWith('/api/search?q=heron')\n\n at Object.<anonymous> (src/hooks/useDebouncedQuery.test.tsx:44:22)\n\n ● useDebouncedQuery › does not fire for terms under 2 chars\n\n Exceeded timeout of 5000 ms for a test.\n\n Test Suites: 1 failed, 23 passed, 24 total\n Tests: 2 failed, 118 passed, 120 total\n```\n\nonly thing that changed in the repo is a react 19.2 bump", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "pasted-context", "lang": "en"}
{"prompt": "onboarding doc for new backend devs — how to get the stack up, the three services that matter, where the seeds are, and the gotcha about the local cert", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "core", "lang": "en"}
{"prompt": "db trigger + audit table so every update to `contracts` records old/new jsonb, who, and when. postgres 16", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "core", "lang": "en"}
{"prompt": "spring boot batch job, reads the nightly bank file from sftp, matches transactions, writes exceptions to a report table. restartable from the last committed chunk", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "swap the spinner on the deploy button for an inline progress bar with the step name", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "boundary", "lang": "en"}
{"prompt": "do the thing we talked about with the queue", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "vague-eval", "lang": "en"}
{"prompt": "least risky order for these three: 1) react 19 upgrade 2) webpack -> vite 3) carve the design system into its own package. three weeks before the a11y audit and i'd rather not be mid-migration during it", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.65, "slice": "boundary", "lang": "en"}
{"prompt": "dependabot opened this and i just want it dealt with:\n\n```\nBumps tar-fs from 2.1.1 to 2.1.2\n\n GHSA-pq67-2wwv-3xjx — Link Following and Path Traversal in tar-fs\n Severity: High (7.5)\n Patched versions: >=2.1.2, >=3.0.7\n\n Dependency path:\n my-app > @cloudflare/wrangler > tar-fs\n\n 1 vulnerability found in package-lock.json\n```\n\nit's a transitive dep of a devDependency so nothing ships, but CI's red and i want it green", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.3, "slice": "pasted-context", "lang": "en"}
{"prompt": "explique-moi comment fonctionne le cache de permissions dans authz/resolver.go, notamment quand est-ce qu'il est invalidé après un changement de rôle", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "core", "lang": "fr"}
{"prompt": "move the tests next to the code they test. currently everything's in a top level tests/ mirror and it's a pain to navigate. update the pytest config too", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "core", "lang": "en"}
{"prompt": "spring animation on the card when it enters — subtle, no bounce past the target, and it should respect reduce-motion", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "core", "lang": "en"}
{"prompt": "docker build passes but the container exits immediately in prod and there's nothing in the logs. works with docker run locally. same image digest", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "write it up", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "vague-eval", "lang": "en"}
{"prompt": "introduce a repository interface between the handlers and sqlx so we can fake the db in tests. no query changes, just the seam", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "check the Dockerfile against current best practice — multistage, non-root, layer caching, and whether we're shipping the build toolchain to prod", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "core", "lang": "en"}
{"prompt": "the openapi spec has these paths stubbed with descriptions but no implementation. build them:\n\n```yaml\n /v1/exports:\n post:\n summary: Request an export\n requestBody:\n content:\n application/json:\n schema:\n type: object\n required: [dataset, format]\n properties:\n dataset: { type: string, enum: [contacts, deals, activity] }\n format: { type: string, enum: [csv, jsonl, parquet] }\n since: { type: string, format: date-time }\n responses:\n '202': { description: Accepted, returns export id and status url }\n '429': { description: One export at a time per workspace }\n /v1/exports/{id}:\n get:\n responses:\n '200': { description: status pending|running|done|failed, plus download url when done }\n '404': { description: Unknown or expired }\n```\n\nfastapi, the download url should be a presigned r2 link good for 1h", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "pasted-context", "lang": "en"}
{"prompt": "tidy the css into modules per component, we have one 4000 line app.css and specificity wars every time someone touches it. visual output should be pixel identical", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "summarize what changed between v1.8.0 and v1.9.0 for the customer-facing notes. git log is noisy, filter out the chores", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "boundary", "lang": "en"}
{"prompt": "segfault on the STM32 build after about 6 hours of uptime, always in the sensor task. stack is only 2k so i suspect overflow but the guard pattern is intact", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.85, "slice": "core", "lang": "en"}
{"prompt": "responsive grid for the pricing cards — 1 col mobile, 2 tablet, 4 desktop, the \"popular\" one taller and centered on mobile. tailwind", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "core", "lang": "en"}
{"prompt": "does the ingest path handle backpressure at all? if kafka slows down does the http handler block or do we drop", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "boundary", "lang": "en"}
{"prompt": "fix the broken \"Docs\" link in the footer, it 404s, should point to /docs/latest", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.05, "slice": "core", "lang": "en"}
{"prompt": "plan the move to per-tenant schemas and then get the first migration + the tenant resolver landed so we have something to look at", "purpose": "planning", "secondary": "backendImpl", "mixed": true, "difficulty": 0.85, "slice": "mixed", "lang": "en"}
{"prompt": "our error copy is a mess. do a pass over all user-facing strings in src/errors/messages.ts — plain language, say what to do next, no \"an error occurred\"", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "boundary", "lang": "en"}
{"prompt": "ci is green on my machine and red on github. gradle:\n\n```\n> Task :app:kaptGenerateStubsDebugKotlin FAILED\ne: /home/runner/work/vellum/vellum/app/src/main/java/dev/vellum/di/AppModule.kt:31:5 [Dagger/MissingBinding] dev.vellum.sync.SyncScheduler cannot be provided without an @Provides-annotated method.\n\n dev.vellum.sync.SyncScheduler is requested at\n dev.vellum.di.AppComponent.syncScheduler()\n\nFAILURE: Build failed with an exception.\n* What went wrong:\nExecution failed for task ':app:kaptGenerateStubsDebugKotlin'.\n> A failure occurred while executing org.jetbrains.kotlin.gradle.internal.KaptExecution\n > Process 'Gradle Worker Daemon 3' finished with non-zero exit value 1\n\n* Try:\n> Run with --stacktrace option to get the stack trace.\n\nBUILD FAILED in 3m 41s\n```\n\nSyncScheduler has an @Inject constructor. it builds fine locally with the same gradle version", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.65, "slice": "pasted-context", "lang": "en"}
{"prompt": "rename the `tenant_id` column to `workspace_id` across the schema, models, queries and the two views. behavior stays the same, it's a naming cleanup we agreed on months ago", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.65, "slice": "boundary", "lang": "en"}
{"prompt": "dead simple: hook the search input up to the existing /api/search endpoint with 250ms debounce and show the results in the dropdown we already have", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "core", "lang": "en"}
{"prompt": "postmortem doc for the july 14 outage. i have the timeline in my notes, need it in the standard format with contributing factors and action items", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "core", "lang": "en"}
{"prompt": "is the retry logic in sync/uploader.ts safe if two tabs run it at once? there's a shared indexeddb queue", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "the count in the header says 12 but the list shows 11 items. one of them is soft deleted i think", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "boundary", "lang": "en"}
{"prompt": "s'il te plaît ajoute un endpoint GET /v1/webhooks/{id}/deliveries avec pagination par curseur, et le filtre status=failed", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "core", "lang": "fr"}
{"prompt": "QA filed these against the settings redesign, all layout, want them all handled:\n\n```\nBUG-4412 Long workspace names overflow the breadcrumb instead of truncating (repro: 60 char name)\nBUG-4413 \"Danger zone\" section has 48px top margin on desktop, 8px on mobile — looks unintentional\nBUG-4415 Toggle labels wrap to two lines at 375px width and the row height doesn't grow, text clips\nBUG-4416 Save bar overlaps the last form field when the keyboard is up on iOS safari\nBUG-4419 Avatar upload dropzone loses its dashed border on drag-over (should highlight, not vanish)\nBUG-4421 Tab underline animates from the wrong side when you jump from tab 1 to tab 3\n```\n\nfigma is unchanged, these are all implementation drift", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "pasted-context", "lang": "en"}
{"prompt": "swap `==` for `===` in utils/compare.js, there are like four spots", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.15, "slice": "boundary", "lang": "en"}
{"prompt": "decouple the email sending from OrderService. it shouldn't know about templates or smtp — events out, a subscriber does the sending", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.65, "slice": "core", "lang": "en"}
{"prompt": "blog post about the 8x speedup we got on the tile renderer. technical audience, include the flamegraph before/after and the one trick that actually mattered", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "core", "lang": "en"}
{"prompt": "cursor keeps jumping to the end of the input when i type in the middle. controlled component, value comes from a reducer", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "core", "lang": "en"}
{"prompt": "GitHub Actions workflow that builds the multi-arch image, signs it with cosign, pushes to ghcr, and only deploys on tags matching v*", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "give the modal a proper redesign — bigger, two column on desktop — and while you're in there pull the form field boilerplate into a shared hook, it's duplicated in five modals", "purpose": "frontendImpl", "secondary": "refactor", "mixed": true, "difficulty": 0.7, "slice": "mixed", "lang": "en"}
{"prompt": "der cronjob läuft doppelt seit dem deploy gestern. zwei pods, jeder feuert. leader election ist eingebaut aber offenbar greift sie nicht", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.65, "slice": "core", "lang": "de"}
{"prompt": "explain the state machine in booking/reducer.ts to me like i'm new. which transitions are legal and where's the one that lets you get stuck", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "boundary", "lang": "en"}
{"prompt": "extract the vendor-specific bits of the payout code behind an interface so adding wise next quarter isn't another if-else. no behavior change today", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "quiero un plan por fases para meter observabilidad de verdad: traces en los 6 servicios, métricas RED, y logs correlacionados. presupuesto ajustado así que dime qué hacemos primero", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "core", "lang": "es"}
{"prompt": "add `engines: { node: \">=22\" }` to package.json", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.05, "slice": "core", "lang": "en"}
{"prompt": "pipeline is emitting duplicate rows in the daily fact table, roughly 0.3% of records, started three days ago. upstream swears nothing changed. dbt incremental with a merge on a surrogate key", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "core", "lang": "en"}
{"prompt": "test coverage on the billing module is 41%. tell me which uncovered paths actually matter and which are noise, don't write tests yet", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "core", "lang": "en"}
{"prompt": "the view doesn't update when the model changes. @Observable on the class, the property is a plain var, list is bound to it. worked before i moved it into a child view", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "netcode approach for an 8 player lobby, fast paced, shooting. rollback vs lockstep vs server authoritative with client prediction — argue it out and recommend one for our scale", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.9, "slice": "core", "lang": "en"}
{"prompt": "changelog: \"Fixed an issue where exports over 10MB failed silently\"", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.15, "slice": "core", "lang": "en"}
{"prompt": "env var in the Dockerfile is spelled DATABSE_URL, fix it and check nothing else references the typo'd name", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.15, "slice": "core", "lang": "en"}
{"prompt": "background job that reconciles our subscription state against stripe nightly and reports drift. read only, no mutations, output to a slack channel", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "このPRのdiffを見て、ロック順序が逆になっていないか確認してほしい。デッドロックの可能性が気になってる", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.65, "slice": "core", "lang": "ja"}
{"prompt": "loading state for the feed — the cards should reserve their final height so nothing jumps when data lands", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "core", "lang": "en"}
{"prompt": "same rename job as the last one but for the mobile repo: `Workspace` -> `Team` in models, api client, strings, and the two xcstrings files. behavior identical", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "boundary", "lang": "en"}
{"prompt": "figure out why the auth callback 500s for google-workspace accounts but not gmail ones, and then add a note in the auth docs about whatever the gotcha turns out to be", "purpose": "debugging", "secondary": "writing", "mixed": true, "difficulty": 0.7, "slice": "mixed", "lang": "en"}
{"prompt": "quick one — the pluralization on \"1 items selected\"", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.1, "slice": "core", "lang": "en"}
{"prompt": "prometheus exporter for the queue depths, one gauge per queue with a `queue` label, plus a histogram for job duration. wire it into the existing /metrics handler", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "core", "lang": "en"}
{"prompt": "the thing from yesterday", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.3, "slice": "vague-eval", "lang": "en"}
{"prompt": "design a rate-limit-aware sync scheduler for the desktop client. it has to be polite to our api, catch up fast after being offline for a week, and not thundering-herd us at 9am when everyone opens their laptop", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.85, "slice": "core", "lang": "en"}
{"prompt": "hover state on the table rows is barely visible in dark mode, bump the contrast a notch", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.15, "slice": "boundary", "lang": "en"}
{"prompt": "walk the whole request lifecycle for a POST /v1/orders from the edge worker down to the db commit and tell me every place a partial failure can leave state inconsistent", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "core", "lang": "en"}
{"prompt": "keyboard shortcut overlay, cmd+/ toggles it, grouped by section, and it should list the shortcuts from the same registry the handlers use so it can't drift", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "sed-able? probably not. `getUserById` is called from 60-odd places and half of them then immediately map to a DTO. i want a `getUserDTO` and the call sites cleaned up, but the wire output must be byte identical", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "boundary", "lang": "en"}
{"prompt": "openapi descriptions are all empty strings. fill them in for every path, param and schema field in api/openapi.yaml — accurate prose, don't invent behavior, read the handlers", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "boundary", "lang": "en"}
{"prompt": "connections to the pooler drop every ~5 min under load, clients see \"server closed the connection unexpectedly\". pooler logs show nothing at that timestamp, tcp keepalives are on", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "core", "lang": "en"}
{"prompt": "spec out how we'd support self-hosted installs. licensing, telemetry that's opt-in, how upgrades work without our control plane, what we refuse to support. write it as a doc for the leadership review", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.9, "slice": "core", "lang": "en"}
{"prompt": "cache the compiled templates. right now we parse on every render and it shows in the p99", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "boundary", "lang": "en"}
{"prompt": "review this for me and write up a short summary the rest of the team can read — packages/scheduler, specifically whether the priority queue is fair or if low-priority jobs can starve forever", "purpose": "review", "secondary": "writing", "mixed": true, "difficulty": 0.7, "slice": "mixed", "lang": "en"}
{"prompt": "pull the magic numbers in the physics step into named constants at the top. don't change any values", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.3, "slice": "boundary", "lang": "en"}
{"prompt": "make the empty dashboard less depressing", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "vague-eval", "lang": "en"}
{"prompt": "cli tool that diffs two openapi specs and exits nonzero on breaking changes. removed paths, narrowed enums, required params added, type changes. rust, and the output should be readable in a PR comment", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.75, "slice": "core", "lang": "en"}
{"prompt": "update docs/deploy.md — the helm values changed names in the 3.0 chart and half the commands in there are wrong now", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "boundary", "lang": "en"}
{"prompt": "why is this useEffect running twice on mount in dev, is that strict mode or did i mess up the deps", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "boundary", "lang": "en"}