{"prompt": "the agent one", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "vague-eval", "lang": "en"}
{"prompt": "claims stopped auto-assigning overnight and there's nothing obviously wrong:\n\nActiveJob::DeserializationError: Error while trying to deserialize arguments: Couldn't find Claim with 'id'=88412\n  from /app/vendor/bundle/ruby/3.3.0/gems/activejob-7.2.1/lib/active_job/arguments.rb:88:in `deserialize_global_id'\n  from /app/app/jobs/auto_assign_job.rb:12:in `perform'\n\nSidekiq::Job dead: AutoAssignJob args=[gid://claims/Claim/88412] retries=25\nDead set size: 4,118\n\nclaims created in the last hour: 1,204\nclaims assigned: 0\nclaims table max id: 88,401\n\nsomething is enqueuing jobs for claims that don't exist yet", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "pasted-context", "lang": "en"}
{"prompt": "claim documents upload fine and then can't be downloaded, about 1 in 200:\n\nAws::S3::Errors::NoSuchKey (The specified key does not exist.):\n  app/services/documents/fetch.rb:41:in `download'\n  app/controllers/documents_controller.rb:22:in `show'\n\nupload log for the same document:\n  11:02:14 direct upload started key=claims/88412/scan-001.pdf size=4.1MB\n  11:02:19 direct upload completed etag=\"9c1d0044410bb7b77e91030cc219e1f0\"\n  11:02:19 Document record created id=41882 key=claims/88412/scan-001.pdf\n  11:02:20 antivirus scan queued\n  11:02:44 antivirus scan passed\n  11:02:44 document moved to claims/88412/clean/scan-001.pdf\n\nthe Document row still points at the pre-scan key", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "pasted-context", "lang": "en"}
{"prompt": "pipeline caches restore into the wrong workspace occasionally and builds fail bizarrely:\n\ncache key: deps-{{ checksum \"go.sum\" }}-linux-amd64\nrestored from: deps-9c1d0044410bb7b77e91030cc219e1f0a-linux-amd64\nrestore path: /workspace/.cache/go-build\n\nbuild output:\n  # github.com/lumen/claims/internal/rating\n  internal/rating/table.go:41:2: cannot find package \"github.com/lumen/claims/internal/tariff\"\n  note: module github.com/lumen/claims requires go >= 1.24, running go1.22\n\nagent reports:\n  workspace /workspace reused from previous job (pipeline 8f2b1c, repo lumen/billing)\n  cleanup: skipped (fast-path enabled)", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "pasted-context", "lang": "en"}
{"prompt": "our claims dashboard times out for the largest broker and the correlated subqueries are the obvious suspect, but i'd like the actual profile before rewriting. work out where the time goes, then restructure the query so the page loads for a broker with four hundred thousand claims", "purpose": "debugging", "secondary": "backendImpl", "mixed": true, "difficulty": 0.8, "slice": "mixed", "lang": "en"}
{"prompt": "the pipeline parser validates inconsistently, ignores some problems silently, and duplicates the API's own validation. consolidate it, and while you're there confirm whether any currently-accepted pipeline would start failing — i'd rather know than find out from a customer customers write these files by hand, so a newly-rejected pipeline is a support ticket.", "purpose": "refactor", "secondary": "review", "mixed": true, "difficulty": 0.65, "slice": "mixed", "lang": "en"}
{"prompt": "plugin host segfaults during automation recording, roughly once an hour:\n\nProgram received signal SIGSEGV, Segmentation fault.\n0x00007ffff7a2c118 in juce::AudioProcessorValueTreeState::Parameter::setValueNotifyingHost(float) ()\n(gdb) bt\n#0  juce::AudioProcessorValueTreeState::Parameter::setValueNotifyingHost(float)\n#1  0x0000555555601a44 in AutomationRecorder::processBlock(juce::AudioBuffer<float>&) at src/AutomationRecorder.cpp:141\n#2  0x00005555556220c8 in PluginProcessor::processBlock(juce::AudioBuffer<float>&) at src/PluginProcessor.cpp:88\n#3  0x00007ffff7b0a112 in juce::AudioProcessorGraph::processBlock()\n(gdb) info threads\n  Id   Target Id         Frame\n* 1    Thread (audio)    setValueNotifyingHost\n  2    Thread (message)  juce::MessageManager::runDispatchLoop\n\nsetValueNotifyingHost is being called from the audio thread, which the docs say not to do", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "pasted-context", "lang": "en"}
{"prompt": "claim rating engine's caching, which i inherited last week:\n\nclass Rating::Engine\n  CACHE = {}\n\n  def self.rate(claim)\n    CACHE[claim.id] ||= begin\n      policy = claim.policy.version_at(claim.incident_at)\n      factors = policy.factors.map { |f| f.evaluate(claim) }\n      Money.new(factors.sum { |f| f.amount_cents }, policy.currency)\n    end\n  end\nend\n\npuma with four workers and five threads each, claims are rated on every page view of the claim detail screen, and policy versions change when an underwriter edits them", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.75, "slice": "pasted-context", "lang": "en"}
{"prompt": "pipeline definition format, which customers write by hand. is it as unambiguous as we think?\n\nsteps:\n  - name: test\n    image: golang:1.24\n    commands: [\"go test ./...\"]\n    cache:\n      key: deps-{{ checksum \"go.sum\" }}\n      paths: [\"/go/pkg/mod\", \".cache/go-build\"]\n  - name: build\n    image: golang:1.24\n    depends_on: [test]\n    commands: [\"go build -o bin/app\"]\n    artifacts: [\"bin/app\"]\n  - name: deploy\n    when: { branch: main, event: push }\n    image: alpine\n    commands: [\"./deploy.sh\"]\n    secrets: [DEPLOY_TOKEN]\n\nthe cache key doesn't include the image or the architecture; `when` on one step doesn't skip its dependents; and secrets are available to any command in the step, including ones that print the environment", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "pasted-context", "lang": "en"}
{"prompt": "claims API, integrated by four brokers, documented in a spreadsheet. this is the create endpoint:\n\nPOST /api/v2/claims\n  auth: broker API key, scoped to the broker's policies\n  body: { policy_number, incident_at, description, claimant: {...}, documents: [{ name, url }] }\n  policy_number must exist and be active at incident_at, else 422 policy_not_in_force\n  incident_at more than 90 days ago is accepted but flagged for manual review\n  documents are fetched asynchronously from the given URLs; a fetch failure does not fail the claim\n  the response is 202 with a claim reference, not 201, because assignment happens asynchronously\n  duplicate submissions within 24h with the same policy and incident_at return the original reference\n\nwrite the API reference, and make the 202 and the deduplication behaviour impossible to miss", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "pasted-context", "lang": "en"}
{"prompt": "our API changelog needs an entry for the claim deduplication window, brokers keep asking", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "boundary", "lang": "en"}
{"prompt": "three ways of describing a step's status in our codebase, and the API leaks all three:\n\n// internal/agent\ntype StepState int   // 0 pending, 1 running, 2 done, 3 failed, 4 killed\n\n// internal/api\ntype StepStatus string  // \"queued\" | \"in_progress\" | \"success\" | \"failure\" | \"cancelled\"\n\n// database\nstatus smallint  -- 0..4, but 5 and 6 exist in production rows from an old version\n\nthe mapping lives in three switch statements, one of which is missing a case and silently produces \"queued\" for anything unknown", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "pasted-context", "lang": "en"}
{"prompt": "what does the blocklist actually block?", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "core", "lang": "en"}
{"prompt": "a regulator has asked six questions about rating reproducibility, post-closure edits, document retention, broker isolation, policy corrections and data replication. answer each from the code rather than from what we'd like to be true, and write it as a controls document with anything unsubstantiated clearly marked as such our compliance lead will read it before the regulator does and prefers plain statements.", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.75, "slice": "boundary", "lang": "en"}
{"prompt": "plugin SDK has no documentation beyond one example file, and the behaviours third-party developers keep tripping over are exactly the ones we've never written down: the version check that fails silently, the parameter cap that drops the extras, the blocklist after two crashes, and the thirty-second scan timeout counting as a crash. write the integration guide that covers all of it three developers are waiting on this and two of them have already shipped against guesses.", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "audio drops out for a few hundred milliseconds when a plugin scan finishes, users are furious:\n\n[audio] callback 512 frames @ 48000 (10.67ms budget)\n[audio] xrun: callback took 24.11ms\n[audio] xrun: callback took 31.88ms\n[scan] plugin scan finished, 412 plugins, 88 new\n[scan] posting to message thread: refreshPluginList()\n[audio] xrun: callback took 41.02ms\n[audio] xrun: callback took 18.44ms\n[audio] 4 dropouts in 200ms\n[ui] plugin list rebuilt, 412 items\n\nrefreshPluginList swaps the shared array the audio thread reads from, under a std::mutex that the audio callback also takes", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.85, "slice": "pasted-context", "lang": "en"}
{"prompt": "design doc for our session format, written before the plugin work. does it still hold?\n\n## Session file\nA session is a single JSON document containing tracks, clips, automation and a plugin manifest. Plugins are referenced by their UID and version. On load, missing plugins are replaced by a placeholder that preserves the parameter state so the session can round-trip.\n\n## Assumptions\n- Sessions are small (< 5MB) and can be parsed on the message thread at load.\n- Plugin UIDs are stable across versions.\n- Automation is sparse enough to store as a list of (time, value) pairs.\n\n## Not covered\nCollaborative editing. Partial loading. Sessions referencing external audio files that have moved.\n\nsessions from our heaviest users are now 40-80MB, and the placeholder path is what's crashing on iOS", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "pasted-context", "lang": "en"}
{"prompt": "prod and staging agent config, and staging has never wedged:\n\n# staging/agent.yaml\nagent:\n  slots: 2\n  fast_path: false\n  hard_timeout: 20m\n  soft_timeout: 10m\n  reaper_interval: 1m\n  runtime: docker\n  workspace_root: /var/lib/agent/ws\n  cleanup_on_release: true\n\n# prod/agent.yaml\nagent:\n  slots: 8\n  fast_path: true\n  hard_timeout: 20m\n  soft_timeout: 10m\n  reaper_interval: 5m\n  runtime: runc\n  workspace_root: /mnt/nvme/ws\n  cleanup_on_release: false\n\n# prod agent metrics over the last day\n  agent_slots_reserved      4 (steady, no running steps)\n  agent_steps_started_total rate 0/s for 3h\n  agent_reaper_runs_total   12\n  agent_reaper_errors_total 12  (\"container not found\")\n\nprod agents have 8 cores; fast_path went on last year to cut build times and nobody has revisited it since", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "pasted-context", "lang": "en"}
{"prompt": "one smoothing helper for all processors", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "core", "lang": "en"}
{"prompt": "is the ring buffer safe with std::function?", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "core", "lang": "en"}
{"prompt": "i'd like an honest read on whether our rating cache can serve one claim's rating for another under puma's threading, and if it can, the fix — with a test that fails on the current code", "purpose": "review", "secondary": "backendImpl", "mixed": true, "difficulty": 0.8, "slice": "mixed", "lang": "en"}
{"prompt": "we have two audio buffer pool implementations, one in the engine and one in the plugin host", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "boundary", "lang": "en"}
{"prompt": "three third-party developers are blocked on a plugin SDK document that doesn't exist, and writing it will force us to decide which of our current behaviours are the contract and which are accidents — the silent parameter cap, the blocklist, the scan timeout. i want the plan for what we commit to publicly before anyone writes prose", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "core", "lang": "en"}
{"prompt": "what does the antivirus step do with a document it can't scan at all", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "core", "lang": "en"}
{"prompt": "a walkthrough of the plugin scan process would help before i touch the blocklist", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "boundary", "lang": "en"}
{"prompt": "webhook receiver drops events under load and the numbers don't add up:\n\nnginx access log (1 minute sample):\n  POST /webhooks/insurer  200  count=8,412\n  POST /webhooks/insurer  499  count=1,204\n  POST /webhooks/insurer  502  count=118\n\napp side:\n  WebhookEvent.where(created_at: 1.minute.ago..).count  => 8,180\n  Sidekiq queue :webhooks depth => 41,882\n  Sidekiq latency :webhooks => 812 seconds\n\npuma: 4 workers × 5 threads, and the receiver writes the event row synchronously before enqueueing\n\nthe insurer retries anything that isn't a 200 within 30 seconds, which is where the 499s come from", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.75, "slice": "pasted-context", "lang": "en"}
{"prompt": "before this lands, is the lock-free queue actually lock-free the way it's used?\n\ntemplate <typename T, size_t Capacity>\nclass RingBuffer {\n  std::array<T, Capacity> data_;\n  std::atomic<size_t> head_{0}, tail_{0};\npublic:\n  bool push(const T& v) {                       // called from the message thread\n    auto t = tail_.load(std::memory_order_relaxed);\n    auto next = (t + 1) % Capacity;\n    if (next == head_.load(std::memory_order_acquire)) return false;\n    data_[t] = v;                               // T is std::function<void()>\n    tail_.store(next, std::memory_order_release);\n    return true;\n  }\n  bool pop(T& out) { /* mirror, called from the audio thread */ }\n};\n\nthe queue carries std::function objects that capture by value, and the audio thread invokes them", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.85, "slice": "pasted-context", "lang": "en"}
{"prompt": "agent's step execution, and i want to know whether the cleanup can be skipped safely:\n\nfunc (a *Agent) runStep(ctx context.Context, s Step) error {\n\tws, err := a.workspaces.Acquire(s.PipelineID)\n\tif err != nil { return err }\n\tif !a.fastPath {\n\t\tdefer a.workspaces.Clean(ws)\n\t}\n\tdefer a.workspaces.Release(ws)\n\tid, err := a.runtime.Create(ctx, s.Image, ws.Path)\n\tif err != nil { return err }\n\tdefer a.runtime.Remove(context.Background(), id)\n\tctx, cancel := context.WithTimeout(ctx, s.HardTimeout)\n\tdefer cancel()\n\treturn a.runtime.Wait(ctx, id)\n}\n\nfastPath is on in production, workspaces are reused across pipelines, and Release is also called by a reaper goroutine on timeout", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "pasted-context", "lang": "en"}
{"prompt": "la política de reintentos del receptor de webhooks, ¿tiene sentido?\n\nclass WebhooksController < ApplicationController\n  skip_before_action :verify_authenticity_token\n\n  def insurer\n    event = WebhookEvent.create!(payload: params.to_unsafe_h, source: \"insurer\")\n    ProcessWebhookJob.perform_later(event.id)\n    head :ok\n  rescue ActiveRecord::RecordNotUnique\n    head :ok\n  rescue => e\n    Sentry.capture_exception(e)\n    head :internal_server_error\n  end\nend\n\n# ProcessWebhookJob\nclass ProcessWebhookJob < ApplicationJob\n  queue_as :webhooks\n  retry_on StandardError, wait: :polynomially_longer, attempts: 25\n\n  def perform(id)\n    event = WebhookEvent.find(id)\n    Insurer::Apply.new(event).call\n    event.update!(processed_at: Time.current)\n  end\nend\n\nla aseguradora reintenta cualquier respuesta que no sea 200 durante 24 horas y sin espera entre intentos, el payload puede tener 2 MB con adjuntos en base64, y por la mañana nos llegan 40.000 eventos en veinte minutos", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "pasted-context", "lang": "es"}
{"prompt": "support notes about the plugin scan, they need to become a proper help article:\n\n- first launch scans every plugin on the machine, which for a big library is 10-40 minutes\n- the scan runs in a separate process so a crashing plugin doesn't take the app down\n- a plugin that crashes twice is blocklisted and hidden from the browser, with no visible message\n- users find their plugin \"missing\" and reinstall it, which doesn't help because the blocklist survives\n- the blocklist is in a plist that we've never documented, and clearing it requires the terminal\n- rescanning individual plugins is possible from a preference pane most users never open\n- audio dropouts during the scan are a known issue we're working on\n\nwrite the article, including how to clear the blocklist without making it sound like a defect", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "pasted-context", "lang": "en"}
{"prompt": "regulator's question list arrived and answering it properly is the documentation we never wrote:\n\n1. How is a claim's assessed value calculated, and is the calculation reproducible for a claim closed two years ago?\n2. Which roles can alter a claim after it has been closed, and how is that recorded?\n3. How long are claim documents retained, and how is deletion evidenced?\n4. Describe the controls preventing a broker from seeing another broker's claims.\n5. What happens to a claim if the policy version it was rated against is later corrected?\n6. Where is claimant personal data replicated, including backups and analytics?\n\nwork each answer out from the code and write it as a controls document, marking anything you can't substantiate", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "pasted-context", "lang": "en"}
{"prompt": "stem export filenames drop the track number", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.2, "slice": "core", "lang": "en"}
{"prompt": "queue alert needs a 30 minute window", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.25, "slice": "boundary", "lang": "en"}
{"prompt": "document thumbnails need type badges", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.3, "slice": "core", "lang": "en"}
{"prompt": "scan progress strip at the top", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "core", "lang": "en"}
{"prompt": "step status is colour-only in the graph", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.3, "slice": "boundary", "lang": "en"}
{"prompt": "why do sessions take eight seconds to open?", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "boundary", "lang": "en"}
{"prompt": "agents wedge at full capacity", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.75, "slice": "boundary", "lang": "en"}
{"prompt": "session format design doc assumed sessions under five megabytes and stable plugin UIDs, and both assumptions have quietly failed — our heaviest users have eighty megabyte sessions and the placeholder path crashes on iOS. read the doc against the current loader and tell me which of its assumptions still hold i'd like the answer in terms of what breaks next rather than what's already broken.", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.75, "slice": "boundary", "lang": "en"}
{"prompt": "audio team's list, which i need to turn into a plan with the september release in mind:\n\n- move all plugin scanning off any lock the audio thread touches\n- lazy session loading, because 80MB sessions block the message thread for seconds\n- fix the MIDI timing drift, which is a rounding bug in the scheduler and probably a day's work\n- replace the three copies of plugin state with one owner\n- automation recording currently calls host APIs from the audio thread, which is why it segfaults\n- surface the plugin blocklist in the UI instead of hiding it in a plist\n\nthe release is in six weeks, and QA needs two of those", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.85, "slice": "pasted-context", "lang": "en"}
{"prompt": "design spec for the plugin browser, which is currently a flat list of 400 items:\n\nPlugin browser\n- Left rail: categories (Instruments, Effects, Utility) with counts, plus Favourites and Recently Used.\n- Grid of cards, 160x120, showing the plugin name, vendor, format badge (VST3/AU/AAX) and a favourite star.\n- Virtualised; scrolling 2,000 plugins must stay at 60fps on a 2019 MacBook.\n- Search filters as you type with a 120ms debounce, matching name and vendor, highlighting the match.\n- Blocklisted plugins appear greyed with a warning glyph, a tooltip explaining why, and a Rescan action.\n- While a scan is running, a progress strip at the top shows the current plugin name and a Cancel button.\n- Drag a card onto a track to instantiate; the drag image is the card at 60% opacity.\n- Keyboard: type-ahead selection, enter instantiates on the selected track, space previews.", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.75, "slice": "pasted-context", "lang": "en"}
{"prompt": "one owner for the plugin list", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "i'd like to understand how a claim's assessed value is recalculated when the policy version changes", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.65, "slice": "core", "lang": "en"}
{"prompt": "is our session loader doing anything on the audio thread, or is that just where it crashes", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "prod agents run eight slots on eight cores, which is why steps time out rather than queue", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.3, "slice": "boundary", "lang": "en"}
{"prompt": "we need a plan for supporting AAX, which means a different SDK, signing, and a certification process", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "boundary", "lang": "en"}
{"prompt": "build agents wedge on a subset of pipelines and the only trace is this:\n\ntime=2026-07-29T11:02:14Z level=info msg=\"step started\" pipeline=8f2b1c step=test image=golang:1.24\ntime=2026-07-29T11:02:15Z level=info msg=\"container created\" id=a11c3f2 runtime=runc\ntime=2026-07-29T11:12:15Z level=warn msg=\"step exceeded soft timeout\" elapsed=10m0s\ntime=2026-07-29T11:22:15Z level=warn msg=\"step exceeded hard timeout, sending SIGTERM\" elapsed=20m0s\ntime=2026-07-29T11:22:45Z level=error msg=\"container did not exit, sending SIGKILL\"\ntime=2026-07-29T11:22:45Z level=error msg=\"kill failed\" err=\"container not found: a11c3f2\"\ntime=2026-07-29T11:22:45Z level=info msg=\"agent marked step failed, releasing slot\"\ntime=2026-07-29T11:22:46Z level=error msg=\"slot release failed: slot already released\"\n\nafter this the agent reports capacity 4/4 forever and takes no new work", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "pasted-context", "lang": "en"}
{"prompt": "iOS build of our sampler crashes on launch for some users only:\n\nException Type:  EXC_BAD_ACCESS (SIGSEGV)\nException Subtype: KERN_INVALID_ADDRESS at 0x0000000000000018\nTermination Reason: SIGNAL 11 Segmentation fault: 11\n\nThread 0 Crashed:\n0   Sampler                       0x104a2c118 juce::AudioProcessorGraph::rebuild() + 216\n1   Sampler                       0x104b19a44 SamplerEngine::loadSession(juce::File const&) + 388\n2   Sampler                       0x1051220c8 SessionRestore::restoreLast() + 296\n3   Sampler                       0x104f0a112 -[AppDelegate application:didFinishLaunchingWithOptions:] + 148\n\nonly users whose last session referenced a plugin that has since been deleted from the device", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.75, "slice": "pasted-context", "lang": "en"}
{"prompt": "das MIDI-Timing driftet bei langen Sessions, hier die Messwerte:\n\nEvent-Nr   Soll (ms)   Ist (ms)   Abweichung\n1          0.00        0.02       +0.02\n1000       125000.00   125041.10  +41.10\n5000       625000.00   625208.44  +208.44\n10000      1250000.00  1250417.02 +417.02\n20000      2500000.00  2500834.88 +834.88\n\nSample-Rate 48000, Buffer 512, Host-Tempo 120 BPM konstant\ndie Abweichung wächst linear, etwa 0,33 ms pro 1000 Events\nwir rechnen die Event-Zeit in Samples um und runden dabei auf ganze Samples ab", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "pasted-context", "lang": "de"}
{"prompt": "rails app leaks memory in production and restarts every six hours on the memory limit:\n\nrss over 6 hours: 420MB → 2.8GB, linear\nobjects allocated (GC.stat[:total_allocated_objects]) at restart: 4.1e9\nheap_live_slots: 41,882,104\n\nderailed exec perf:mem_over_time top allocations:\n  app/services/rating/engine.rb:88   1.2GB   Hash allocations\n  app/models/claim.rb:212            0.8GB   String allocations\n  activerecord (7.2.1) query cache   0.4GB\n\nrating/engine.rb:88 is inside a loop over policy versions, memoising into a class-level hash keyed by claim id", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.75, "slice": "pasted-context", "lang": "en"}
{"prompt": "the claim detail screen needs the document virus-scan states visible, and support needs the help article explaining what a rejected document means. do both, and keep the read-only broker view free of edit affordances", "purpose": "frontendImpl", "secondary": "writing", "mixed": true, "difficulty": 0.6, "slice": "mixed", "lang": "en"}
{"prompt": "claims stopped auto-assigning overnight", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "claim reference is lowercase in emails", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.1, "slice": "core", "lang": "en"}
{"prompt": "pipeline parser has grown organically and validation is scattered through it:\n\nfunc Parse(b []byte) (*Pipeline, error) {\n\tvar p Pipeline\n\tif err := yaml.Unmarshal(b, &p); err != nil { return nil, err }\n\tfor i, s := range p.Steps {\n\t\tif s.Name == \"\" { return nil, fmt.Errorf(\"step %d: name required\", i) }\n\t\tif !nameRe.MatchString(s.Name) { return nil, fmt.Errorf(\"step %s: bad name\", s.Name) }\n\t\tif s.Image == \"\" && s.Plugin == \"\" { return nil, fmt.Errorf(\"step %s: image required\", s.Name) }\n\t\tfor _, d := range s.DependsOn {\n\t\t\tif !p.has(d) { return nil, fmt.Errorf(\"step %s: unknown dependency %s\", s.Name, d) }\n\t\t}\n\t\tif s.Cache.Key != \"\" && len(s.Cache.Paths) == 0 { /* silently ignored */ }\n\t\tp.Steps[i] = applyDefaults(s)\n\t}\n\treturn &p, detectCycles(&p)\n}\n\nerror messages are inconsistent, some problems are silently ignored, and the same validation is duplicated in the API's own request validator", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "pasted-context", "lang": "en"}
{"prompt": "our health check reports the agent healthy while it has zero free slots and no running steps", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.3, "slice": "core", "lang": "en"}
{"prompt": "the claims UI uses eleven hardcoded colours and three custom focus styles, one of which removes the ring. move it onto the tokens, and tell me which status colours will visibly change for adjusters who have used this for years", "purpose": "frontendImpl", "secondary": "review", "mixed": true, "difficulty": 0.55, "slice": "mixed", "lang": "en"}
{"prompt": "plugin browser is a flat list of four hundred items that scrolls badly on older machines, and it's the first thing every reviewer complains about. build the browser to the new spec — categories, virtualised card grid, search with highlighting, blocklist state visible — and keep drag-to-instantiate working exactly as it does today our oldest supported machine is a 2019 MacBook Pro, which is what the 60fps target refers to.", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "claim documents are occasionally unreachable after upload, and the pattern seems to be that the antivirus step moves the object while the database row keeps the original key. i'd like that confirmed properly rather than assumed, including what happens when the scan fails and whether any documents are currently orphaned roughly one in two hundred, and support has three examples with timestamps if that helps.", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "pipeline YAML format has grown features that interact badly — `when` not skipping dependents, cache keys that ignore the image, secrets visible to every command in a step — and customers write these by hand. before we add anything else i'd like a view on whether this is a versioned format change or a set of fixes we can make compatibly", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "boundary", "lang": "en"}
{"prompt": "claims thing", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "vague-eval", "lang": "en"}
{"prompt": "our on-premise CI customers upgrade by replacing a binary and have no migration story for config", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "three query objects each define what \"this broker's claims\" means, two of them interpolate the search term straight into SQL, and they disagree about whether closed claims are included. consolidate them into one scope with one definition, keep the exported CSV byte-identical for a sample of brokers, and get rid of the interpolation while you're in there the export is what brokers reconcile against, so a changed row count would be noticed immediately.", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "boundary", "lang": "en"}
{"prompt": "what guarantees does the agent make about artifact upload when a step is killed mid-write", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "boundary", "lang": "en"}
{"prompt": "a short note explaining why sessions are moving to lazy loading, for the decision log", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "core", "lang": "en"}
{"prompt": "plugin SDK document has to exist before we can onboard the three developers waiting on it, and writing it will surface behaviours we should probably change rather than document. write the guide, and give me the separate list of things you'd rather fix than commit to the silent version check is the one i'd most like to stop defending in writing.", "purpose": "writing", "secondary": "review", "mixed": true, "difficulty": 0.7, "slice": "mixed", "lang": "en"}
{"prompt": "SQL behind our claims dashboard, which times out for the largest broker:\n\nSELECT c.id, c.reference, c.status, c.incident_at,\n       p.number AS policy_number, b.name AS broker,\n       (SELECT SUM(amount_cents) FROM payments pm WHERE pm.claim_id = c.id) AS paid,\n       (SELECT COUNT(*) FROM documents d WHERE d.claim_id = c.id) AS docs,\n       (SELECT MAX(created_at) FROM claim_notes n WHERE n.claim_id = c.id) AS last_note\nFROM claims c\nJOIN policies p ON p.id = c.policy_id\nJOIN brokers b ON b.id = p.broker_id\nWHERE b.id = $1 AND c.status <> 'closed'\nORDER BY c.incident_at DESC\nLIMIT 50;\n\nclaims 2.1M rows, payments 8.4M, documents 12M, and the broker in question has 400k claims", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "pasted-context", "lang": "en"}
{"prompt": "concurrency model in our scheduler, which decides which agent gets which step:\n\nfunc (s *Scheduler) assign() {\n\ts.mu.Lock()\n\tdefer s.mu.Unlock()\n\tfor _, step := range s.pending {\n\t\tfor _, agent := range s.agents {\n\t\t\tif agent.Free() >= step.Slots && agent.Matches(step.Tags) {\n\t\t\t\tagent.Reserve(step.Slots)\n\t\t\t\tgo s.dispatch(agent, step)\n\t\t\t\ts.remove(step)\n\t\t\t\tbreak\n\t\t\t}\n\t\t}\n\t}\n}\n\nassign runs every second and on every agent heartbeat; dispatch can take up to 30 seconds; Reserve is in-memory only and the agent may already be running steps it accepted from a previous scheduler instance", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "pasted-context", "lang": "en"}
{"prompt": "public pipeline YAML reference is a single example with no prose. this is what the parser accepts:\n\nsteps[].name          required, unique within the file, [a-z0-9-]{1,40}\nsteps[].image         required unless `plugin` is set\nsteps[].commands      list of strings, run with `set -e` in a shell\nsteps[].depends_on    list of step names; a cycle is a parse error\nsteps[].when          map of branch/event/path filters, all must match\nsteps[].cache.key     template string, `{{ checksum \"file\" }}` and `{{ env \"VAR\" }}` supported\nsteps[].cache.paths   list, relative paths are relative to the workspace root\nsteps[].artifacts     list of globs, uploaded on success only\nsteps[].secrets       list of secret names, injected as environment variables\nsteps[].matrix        map of name to list; expands the step, `matrix.<name>` available in templates\n\nwrite the reference documentation, including that `when` doesn't skip dependents and that cache keys don't include the image", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "pasted-context", "lang": "en"}
{"prompt": "o resumo do incidente de ontem, para os corretores. estes são os factos:\n\n09:12 as participações deixam de ser atribuídas automaticamente\n09:31 detetamos que a fila de jobs está a rejeitar tudo com erro de desserialização\n10:02 causa identificada: o job é enfileirado dentro da transação, antes do commit\n10:20 correção aplicada em produção\n10:40 reprocessamento das 1.204 participações em atraso\n11:15 tudo normalizado; nenhuma participação perdida, o atraso máximo foi de duas horas\n\nos corretores viram participações \"por atribuir\" durante duas horas e alguns telefonaram para o apoio; não houve perda de dados nem prazos regulamentares ultrapassados", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "pasted-context", "lang": "pt"}
{"prompt": "changelog for the desktop app, from the release branch:\n\n41c9e0b fix(audio): plugin scan no longer takes the audio lock\n88f21c0 feat(session): sessions load lazily, large sessions open in under a second\nc0aa774 fix(ios): sessions referencing deleted plugins no longer crash on launch\n2e91b45 feat(midi): sample-accurate event scheduling, fixes long-session drift\naa30f19 fix(browser): blocklisted plugins now show with an explanation and a rescan button\n9c1d004 perf(ui): plugin list virtualised\n4410bb7 chore: minimum macOS is now 13\nb77e910 feat(export): stem export with per-track naming templates\n\nour users are musicians, not engineers; two of these are things they've been complaining about for a year and one is a breaking change", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "pasted-context", "lang": "en"}
{"prompt": "runbook for a wedged agent is \"restart it\", which loses running builds. what the team actually does:\n\n- symptom is an agent reporting full capacity with no running steps, usually after a container disappears\n- `agentctl slots <agent>` shows the reserved slots and which pipeline reserved them\n- `agentctl release <agent> <slot>` frees one, and the scheduler picks up within a second\n- restarting the agent kills any genuinely running builds, which is why we avoid it\n- if the reaper is the thing that's stuck, its goroutine dump shows it blocked on the runtime socket\n- the underlying bug is that slot release is not idempotent, and we've known that for months\n\nturn this into a runbook page, and be clear about which steps are safe during working hours", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "pasted-context", "lang": "en"}
{"prompt": "我们的插件开发文档只有一页示例代码，需要正式的接入说明。目前 SDK 的实际行为如下：\n\n- 插件必须导出 `lumen_plugin_entry`，返回描述结构体；结构体里的 `abi_version` 必须与 SDK 主版本号一致，否则宿主会静默跳过，不打印任何日志\n- 参数上限为 512 个，超出的部分在注册阶段被丢弃，既不报错也不警告\n- `processBlock` 在音频线程调用，禁止分配内存、加锁、访问文件系统或调用任何宿主 API\n- `getStateInformation` 返回的数据会原样写入会话文件；没有硬性大小限制，但超过 1MB 会明显拖慢会话加载\n- `setStateInformation` 可能在音频线程停止之前被调用，插件必须自行处理并发\n- 插件连续崩溃两次后进入黑名单，黑名单保存在用户目录的 plist 文件里，我们从未对外说明过，用户只会发现插件“消失了”\n- 扫描在独立进程中进行，单个插件超时时间是 30 秒，超时同样计入崩溃次数\n- 参数自动化的写入频率上限是每个采样块一次，超过的调用会被静默合并\n\n请写成面向第三方开发者的接入文档，把黑名单、超时和参数上限这三件事写清楚，其余按常规接口说明组织\n\n目前的示例代码就是这一段，文档里也只有这些：\n\nextern \"C\" LumenPluginDescription* lumen_plugin_entry(void) {\n    static LumenPluginDescription d = {\n        .abi_version = LUMEN_ABI_VERSION,\n        .uid = \"com.example.reverb\",\n        .name = \"Example Reverb\",\n        .vendor = \"Example Audio\",\n        .num_parameters = 4,\n        .create = &create_instance,\n        .destroy = &destroy_instance,\n    };\n    return &d;\n}\n\nstatic void process_block(LumenPlugin* self, float** io, int channels, int frames) {\n    // 这里不能分配内存、不能加锁、不能调用宿主 API\n}", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "pasted-context", "lang": "zh"}
{"prompt": "rubocop and brakeman before the gate goes on:\n\napp/controllers/webhooks_controller.rb:12:5: W: Rails/SkipsModelValidations: Avoid using `update_all`\napp/services/rating/engine.rb:8:3: C: Style/ClassVars: Class variable @@cache is used\napp/models/claim.rb:141:9: C: Metrics/AbcSize: Assignment Branch Condition size for assign is too high. [<12, 28, 9> 32.08/17]\n\nBrakeman:\n  Confidence: High\n  Category: Mass Assignment\n  Check: MassAssignment\n  Message: Parameters should be whitelisted for mass assignment\n  File: app/controllers/webhooks_controller.rb\n  Line: 6\n\n  Confidence: Medium\n  Category: SQL Injection\n  Check: SQL\n  Message: Possible SQL injection\n  File: app/queries/claims_search.rb\n  Line: 88", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "pasted-context", "lang": "en"}
{"prompt": "clang-tidy on the audio engine, and two of these are the ones that bite:\n\nsrc/AutomationRecorder.cpp:141:9: warning: function 'processBlock' calls 'setValueNotifyingHost' which may allocate [audio-thread-safety]\nsrc/SamplerEngine.cpp:88:22: warning: 'std::function' invoked on the audio thread may allocate on copy [performance-no-automatic-move]\nsrc/SessionRestore.cpp:41:5: warning: 'get' on possibly null pointer [bugprone-unchecked-optional-access]\nsrc/PluginScanner.cpp:212:13: warning: lock acquired in a real-time context [audio-thread-safety]\nsrc/UI/PluginList.cpp:19:1: warning: function exceeds recommended size [readability-function-size]\n\n5 warnings; the two audio-thread-safety ones correspond exactly to our two worst crash clusters", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "pasted-context", "lang": "en"}
{"prompt": "CI for the audio engine takes 50 minutes and most of it is this:\n\njobs:\n  build:\n    strategy:\n      matrix:\n        os: [macos-14, macos-15, ubuntu-24.04, windows-2022]\n        config: [Debug, Release]\n    steps:\n      - uses: actions/checkout@v4\n        with: { submodules: recursive }\n      - run: cmake -B build -DCMAKE_BUILD_TYPE=${{ matrix.config }}\n      - run: cmake --build build --parallel\n      - run: ctest --test-dir build --output-on-failure\n\nno ccache, no build cache action, JUCE is a submodule that gets fully rebuilt every time, and Debug builds are only ever looked at when something fails", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "pasted-context", "lang": "en"}
{"prompt": "bundler audit on the rails app, which of these go in today:\n\nName: rack\nVersion: 3.0.9\nAdvisory: CVE-2026-10884\nCriticality: Medium\nSolution: upgrade to >= 3.0.11\n\nName: nokogiri\nVersion: 1.16.2\nAdvisory: CVE-2026-11221\nCriticality: High\nSolution: upgrade to >= 1.17.1\n\nName: sidekiq\nVersion: 7.2.0\nAdvisory: GHSA-4c8f (web UI XSS in the busy page)\nCriticality: Medium\nSolution: upgrade to >= 7.3.2\n\nour sidekiq web UI is behind SSO and only reachable from the office network", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.3, "slice": "pasted-context", "lang": "en"}
{"prompt": "terraform for our build agents, someone spotted this during an unrelated review:\n\nresource \"aws_instance\" \"agent\" {\n  count                  = var.agent_count\n  instance_type          = \"c7i.4xlarge\"\n  vpc_security_group_ids = [aws_security_group.agent.id]\n  user_data              = templatefile(\"agent.sh.tpl\", { token = var.agent_token })\n  metadata_options {\n    http_tokens = \"optional\"\n  }\n}\n\nresource \"aws_security_group_rule\" \"agent_ssh\" {\n  type challenge = \"ingress\"\n  from_port   = 22\n  to_port     = 22\n  cidr_blocks = [\"0.0.0.0/0\"]\n}\n\nthe agent token is a long-lived credential that can register new agents", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "pasted-context", "lang": "en"}
{"prompt": "agent's configuration, documented by its flag help and nothing else:\n\n  --workspace-root string     where job workspaces are created (default \"/var/lib/agent/ws\")\n  --fast-path                 reuse workspaces between jobs without cleaning (default false)\n  --slots int                 concurrent steps this agent will accept (default 4)\n  --tags strings              labels used for step matching\n  --hard-timeout duration     kill a step after this (default 20m)\n  --soft-timeout duration     warn after this (default 10m)\n  --reaper-interval duration  how often to look for orphaned containers (default 1m)\n  --runtime string            runc | docker | podman (default \"runc\")\n\nwhat operators actually need to know: fast-path is why one customer's builds see another repo's files; slots above the core count causes step timeouts rather than queueing; the reaper is the only thing that recovers a leaked slot, and it doesn't handle the case where the container is already gone\n\nwrite the operator's configuration guide", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "pasted-context", "lang": "en"}
{"prompt": "les seuils d'alerte de la file d'attente, on nous réveille pour rien :\n\n- alert: WebhookQueueDepth\n  expr: sidekiq_queue_size{queue=\"webhooks\"} > 1000\n  for: 1m\n  labels: { severity: page }\n\n- alert: WebhookQueueLatency\n  expr: sidekiq_queue_latency{queue=\"webhooks\"} > 60\n  for: 1m\n  labels: { severity: page }\n\ncomportement normal : chaque matin à 6h l'assureur envoie un lot de 40 000 événements, la file monte à 40 000 et se vide en vingt minutes\nincident réel du mois dernier : la file est restée à 200 000 pendant six heures sans que personne ne le remarque, parce que tout le monde avait coupé les alertes", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "pasted-context", "lang": "fr"}
{"prompt": "same parameter-smoothing code exists in four processors with different time constants:\n\n// Gain.cpp\nsmoothed = smoothed * 0.99f + target * 0.01f;\n\n// Filter.cpp\nconst float coeff = std::exp(-1.0f / (0.05f * sampleRate));\nsmoothed = target + (smoothed - target) * coeff;\n\n// Delay.cpp\nsmoothed += (target - smoothed) * (1.0f / 64.0f);\n\n// Reverb.cpp\njuce::SmoothedValue<float> smoothed;   // ramp length 0.02s, set once in prepareToPlay\n\nthree of them are sample-rate dependent in ways their authors probably didn't intend, and only the reverb one is reset on prepareToPlay", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "pasted-context", "lang": "en"}
{"prompt": "this service object has grown to 400 lines and the tests take a database. same behaviour, testable pieces:\n\nclass Claims::Assign\n  def initialize(claim, actor: nil, force: false)\n    @claim, @actor, @force = claim, actor, force\n  end\n\n  def call\n    return if @claim.assigned? && !@force\n    candidates = Adjuster.active.where(region: @claim.region)\n    candidates = candidates.where(specialism: @claim.peril) if @claim.complex?\n    candidates = candidates.reject { |a| a.workload > a.capacity }\n    chosen = candidates.min_by { |a| [a.workload, a.last_assigned_at] }\n    raise NoAdjusterAvailable if chosen.nil?\n    @claim.update!(adjuster: chosen, assigned_at: Time.current)\n    AuditLog.create!(subject: @claim, actor: @actor || \"system\", action: \"assign\")\n    AdjusterMailer.assigned(chosen, @claim).deliver_later\n    Slack.notify(chosen.slack_id, \"New claim #{@claim.reference}\") if chosen.slack_id\n    Metrics.increment(\"claims.assigned\", tags: [\"region:#{@claim.region}\"])\n  end\nend", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "pasted-context", "lang": "en"}
{"prompt": "unsere Zustandsverwaltung im Plugin-Browser ist dreifach vorhanden:\n\n// PluginList.cpp — hält eine eigene sortierte Kopie\nstd::vector<PluginDescription> items;\n\n// PluginScanner.cpp — hält die Rohliste plus Blockliste\nstd::vector<PluginDescription> scanned;\nstd::set<juce::String> blocked;\n\n// SessionRestore.cpp — hält eine Map von UID auf Beschreibung\nstd::map<juce::String, PluginDescription> byUid;\n\ndrei Kopien derselben Daten, die über Callbacks synchron gehalten werden, und der Audio-Thread liest zwei davon", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "pasted-context", "lang": "de"}
{"prompt": "query objects each build their own filtering and they've drifted:\n\n# claims_search.rb\nscope = Claim.where(broker_id: broker.id)\nscope = scope.where(\"reference ILIKE ?\", \"%#{params[:q]}%\") if params[:q]\n\n# claims_export.rb\nscope = Claim.joins(:policy).where(policies: { broker_id: broker.id })\nscope = scope.where(\"claims.reference ILIKE :q OR claimants.surname ILIKE :q\", q: \"%#{params[:q]}%\")\n\n# api/v2/claims_controller.rb\nscope = current_broker.claims\nscope = scope.search(params[:q]) if params[:q].present?\n\nthree different definitions of \"this broker's claims\" and two of them interpolate the search term directly", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.65, "slice": "pasted-context", "lang": "en"}
{"prompt": "half-year planning input, i need it turned into something sequenced:\n\n- the audio dropout problem is our worst review driver and the fix touches the plugin scanner, the session loader and the UI\n- a regulator audit of the claims platform is booked for february and we have no controls documentation\n- the CI platform's biggest customer wants isolated agents, which fast-path workspace reuse makes impossible\n- ios sessions crash on launch for a small but vocal group of users\n- one engineer is shared across the audio engine and the CI agent and is the only person who understands either\n- we owe a plugin SDK document to three third-party developers who are blocked without it\n- there's a macOS release in september that we cannot move", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.9, "slice": "pasted-context", "lang": "en"}
{"prompt": "architecture ticket for the CI platform, needs thinking before code:\n\nCI-330 — Workspace isolation\nAgents currently reuse workspaces between jobs with cleanup disabled for speed, which is why one customer occasionally sees another repo's files. The proposal is a workspace per job on an overlay filesystem, with the lower layer being a warm cache of dependencies. Concerns: build times went up 40% in a naive experiment; the overlay approach ties us to specific kernels which our on-premise customers may not have; artifacts and caches currently assume a stable path; and we have no way to prove isolation to a customer once we've claimed it.", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.85, "slice": "pasted-context", "lang": "en"}
{"prompt": "regulator's expectations, as our compliance lead summarised them:\n\n\"Rating decisions must be reproducible for the lifetime of the claim plus seven years. Where a policy version is corrected, claims rated against the earlier version must be identifiable and re-rateable, with both results retained. Personal data of claimants must be deletable on request without destroying the audit trail of the claim itself. Access to claim data by staff must be logged with a business reason, and the log must not be alterable by those staff.\"\n\nwe memoise ratings in a process-local hash, we hard-delete claimant records on request, and our audit log is a table any admin can update. i want the plan, in order of regulatory risk", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.9, "slice": "pasted-context", "lang": "en"}
{"prompt": "spec for the claim detail screen, the one adjusters live in all day:\n\nClaim detail\n- Header: reference, status pill, policy number, incident date, assessed value. Status drives the pill colour and a left border.\n- Three-column layout above 1440px, two below, single column under 900px. The columns are Summary, Documents, Activity.\n- Documents: thumbnail grid with type badges, drag to upload, virus-scan state per document (scanning / clean / rejected), and a rejected document must explain why.\n- Activity: reverse chronological, mixing notes, status changes, payments and emails, with filters per type that persist per user.\n- Notes: inline composer at the top of Activity, markdown, @mention autocomplete of adjusters, optimistic insert with a failure state.\n- Assessed value is editable inline by adjusters only, with the previous value shown on hover and every change recorded.\n- The whole screen must be usable read-only for brokers, with edit affordances absent rather than disabled.", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.75, "slice": "pasted-context", "lang": "en"}
{"prompt": "accessibility findings for our pipeline view, from an enterprise customer's review:\n\n1. The pipeline graph is an SVG with no text alternative; screen reader users cannot tell what ran or what failed.\n2. Step status is conveyed by colour only — green, red, grey circles with no label or shape difference.\n3. Live log output is announced continuously by screen readers, making the page unusable during a build.\n4. The log viewer traps focus; escape does nothing and tab cycles within it forever.\n5. Timestamps are rendered as relative text (\"2m ago\") that never updates and has no absolute value available.\n6. The retry button on a failed step is a div with a click handler.\n7. Contrast on the dimmed log text is 2.9:1.", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "pasted-context", "lang": "en"}
{"prompt": "insurer's integration spec, we implement the receiving side:\n\nPOST to our endpoint, one event per request, at up to 2,000 requests per second during their morning batch\n  headers: X-Insurer-Signature (HMAC-SHA256, hex), X-Insurer-Event-Id (UUID), X-Insurer-Sent-At\n  body: up to 2MB of JSON, including base64 document attachments in some event types\n  we must respond within 5 seconds; anything else is retried for 24 hours with no backoff\n  duplicate event ids are expected (their retries) and must be idempotent\n  events must be applied in `sent_at` order per policy, but arrive in any order\n  a rejected event (signature failure) should be a 401, which they alert on\n  they will disable our endpoint if our error rate exceeds 5% over an hour", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "pasted-context", "lang": "en"}
{"prompt": "schema we agreed for reproducible ratings, now it needs building:\n\nCREATE TABLE rating_runs (\n  id              uuid PRIMARY KEY,\n  claim_id        bigint NOT NULL REFERENCES claims(id),\n  policy_version  bigint NOT NULL REFERENCES policy_versions(id),\n  engine_version  text NOT NULL,\n  inputs          jsonb NOT NULL,\n  result_cents    bigint NOT NULL,\n  currency        char(3) NOT NULL,\n  created_at      timestamptz NOT NULL DEFAULT now(),\n  superseded_by   uuid REFERENCES rating_runs(id)\n);\n\nevery rating must be recorded, never mutated; re-rating creates a new row and links the old one; the claim detail screen shows the current rating and its history; and a rating must be reproducible from `inputs` plus `engine_version` seven years later, which means the engine's behaviour has to be versioned rather than just its code", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.85, "slice": "pasted-context", "lang": "en"}
{"prompt": "design tokens versus what the claims UI actually uses:\n\ntokens:\n  color.surface        #FFFFFF / #14171A\n  color.border         #E1E4E8 / #2A2F35\n  color.text.default   #1B1F23 / #E6EDF3\n  color.status.open    #0969DA\n  color.status.closed  #6E7781\n  color.status.urgent  #CF222E\n  space 4/8/12/16/24/32, radius 4/8/12, focus ring 2px offset 2px\n\nthe claims UI: eleven hardcoded colours, four of them near-misses; three custom focus styles, one of which removes the ring entirely; paddings of 6, 10, 14 and 18; and a status colour set that predates the tokens and doesn't match any of them\n\nbring it onto the tokens, keeping the status colours recognisable to adjusters who have used this for years", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "pasted-context", "lang": "en"}
{"prompt": "reaper interval back to 1m in prod", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.2, "slice": "core", "lang": "en"}
{"prompt": "nokogiri advisory bump", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.15, "slice": "core", "lang": "en"}
{"prompt": "ccache in the CMake CI job", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.25, "slice": "core", "lang": "en"}
{"prompt": "el estado «cerrado» sale en inglés", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.15, "slice": "core", "lang": "es"}
{"prompt": "ssh open to the world on agents", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "boundary", "lang": "en"}
{"prompt": "turn fast-path off on prod agents", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.3, "slice": "boundary", "lang": "en"}
{"prompt": "IMDSv2 required on the agent instances", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.3, "slice": "boundary", "lang": "en"}
{"prompt": "Debug-Builds nur noch bei Fehlern bauen", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.25, "slice": "boundary", "lang": "de"}
{"prompt": "class variable in the rating engine", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.3, "slice": "boundary", "lang": "en"}
{"prompt": "the claims models have twelve callbacks between them and the order they fire in is load-bearing", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "claims platform has one engineer who understands the rating engine and a regulator audit in february, which is a risk in itself. what would you do about the knowledge concentration, given that the honest options are documentation, pairing, or restructuring the engine so it's less clever — and we can probably afford one of them", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.75, "slice": "boundary", "lang": "en"}
{"prompt": "claim assignment does candidate selection, persistence, audit, email, slack and metrics in one method, and the selection logic is the only part anyone wants to test. split it, then document the assignment rules for the operations team who currently guess at them operations currently guess at the rules, and their guesses are wrong in at least two ways.", "purpose": "refactor", "secondary": "writing", "mixed": true, "difficulty": 0.6, "slice": "mixed", "lang": "en"}
{"prompt": "pipeline view fails an enterprise customer's accessibility review on seven counts, including a graph with no text alternative and live log output that screen readers read continuously. work through the findings, and where a fix changes the visual design, tell me before you commit to it they've asked for a remediation date, so a rough ordering by effort would help too.", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "boundary", "lang": "en"}
{"prompt": "our audit log is a table any admin can update, which the regulator will notice in february", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.75, "slice": "boundary", "lang": "en"}
{"prompt": "the claim reference in the PDF is generated with a different padding than the one in the UI", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.25, "slice": "core", "lang": "en"}
{"prompt": "virtualise the plugin grid", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "core", "lang": "en"}
{"prompt": "format badges on the plugin cards", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.3, "slice": "core", "lang": "en"}
{"prompt": "activity feed filters should persist", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "core", "lang": "en"}
{"prompt": "ログビューアからフォーカスが抜けません", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "core", "lang": "ja"}
{"prompt": "relative timestamps never update", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.25, "slice": "boundary", "lang": "en"}
{"prompt": "retry button is a div", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.2, "slice": "boundary", "lang": "en"}
{"prompt": "dimmed log text fails contrast", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.2, "slice": "boundary", "lang": "en"}
{"prompt": "pull the notifications out of Claims::Assign", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "core", "lang": "en"}
{"prompt": "one step-status type end to end", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "core", "lang": "en"}
{"prompt": "une seule définition de « sinistres du courtier »", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "core", "lang": "fr"}
{"prompt": "`incident_at` naming across the app", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.3, "slice": "boundary", "lang": "en"}
{"prompt": "move parser validation into one place", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "boundary", "lang": "en"}
{"prompt": "inline the one-line `has()` helper", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.2, "slice": "boundary", "lang": "en"}
{"prompt": "split the 400-line assign service", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "boundary", "lang": "en"}
{"prompt": "doc comments on the plugin SDK entry point", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "core", "lang": "en"}
{"prompt": "release notes for the september build", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "core", "lang": "en"}
{"prompt": "nota para corretores sobre o incidente", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "core", "lang": "pt"}
{"prompt": "document the 202 on claim creation", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "boundary", "lang": "en"}
{"prompt": "summarise the isolation proposal for the team", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "boundary", "lang": "en"}
{"prompt": "PR description for the scan fix", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.25, "slice": "boundary", "lang": "en"}
{"prompt": "¿la caché de tarifas es segura entre hilos?", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "es"}
{"prompt": "can a slot leak twice?", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "boundary", "lang": "en"}
{"prompt": "walk me through claim assignment", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "boundary", "lang": "en"}
{"prompt": "dropouts whenever a scan finishes", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "core", "lang": "en"}
{"prompt": "warum wächst der Speicher linear?", "purpose": "debugging", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "boundary", "lang": "de"}
{"prompt": "endpoint for a claim's rating history", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "core", "lang": "en"}
{"prompt": "keep going on that one", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "vague-eval", "lang": "en"}
{"prompt": "quieter", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "vague-eval", "lang": "en"}
{"prompt": "browser again please", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "vague-eval", "lang": "en"}
{"prompt": "your call on the order", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "vague-eval", "lang": "en"}
{"prompt": "sort out the mess", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "vague-eval", "lang": "en"}
{"prompt": "as before", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "vague-eval", "lang": "en"}
{"prompt": "audit stuff", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "vague-eval", "lang": "en"}
{"prompt": "encore une passe rapide", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "vague-eval", "lang": "fr"}
{"prompt": "anything for the release", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "vague-eval", "lang": "en"}
{"prompt": "look at it again", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "vague-eval", "lang": "en"}
{"prompt": "次の作業、任せます", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "vague-eval", "lang": "ja"}
{"prompt": "more of the same", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "vague-eval", "lang": "en"}
{"prompt": "biggest CI customer wants isolated agents and our fast-path workspace reuse makes that impossible, but turning it off in a naive experiment made builds forty percent slower. i'd like the options for real isolation worked through — overlay filesystems, per-job volumes, or something else — with attention to our on-premise customers whose kernels we don't control, and to the awkward fact that we'd then be making an isolation claim we have to be able to prove", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.9, "slice": "core", "lang": "en"}
{"prompt": "regulator expects rating decisions to be reproducible for the life of the claim plus seven years, and today we memoise ratings in a process-local hash and version nothing. work out what reproducibility actually requires of us — inputs, engine versioning, storage, re-rating after a policy correction — and give me the plan ordered by regulatory risk rather than by engineering convenience", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.9, "slice": "core", "lang": "en"}
{"prompt": "september release is fixed and the audio team has six weeks minus two for QA, with six candidate items ranging from a day's rounding fix to restructuring who owns plugin state. sequence them for me with the dropout problem as the priority, and be explicit about which items i should cut rather than half-finish", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.85, "slice": "core", "lang": "en"}
{"prompt": "operators configure the build agent from flag help alone, which is why one customer ran with fast-path on for a year without knowing what it meant. write the configuration guide, covering what each option does, which combinations are dangerous, and the fact that the reaper is the only thing that recovers a leaked slot some of them run us on hardware we've never seen, so avoid assuming our own topology.", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "support explains the plugin blocklist several times a week and users reinstall plugins that were never the problem. write the help article that explains what the scan does, why a plugin disappears, and how to bring it back — pitched at a musician rather than an engineer, and without making our crash handling sound like a defect the article should stand alone without requiring a terminal, if that's at all possible.", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "boundary", "lang": "en"}
{"prompt": "nobody can tell me whether our ring buffer is genuinely safe given that it carries std::function objects the audio thread invokes, and the copy on push may allocate. read it carefully and tell me exactly which operations can allocate or block, and whether the memory ordering is right for the single-producer single-consumer use we actually have", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.85, "slice": "core", "lang": "en"}
{"prompt": "scheduler reserves slots in memory and dispatches in a goroutine that can take thirty seconds, while agents may already be running work accepted from a previous scheduler instance. work through what happens across a scheduler restart and tell me whether double-assignment is possible, and if so how often it would show up as the wedging we see", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.85, "slice": "boundary", "lang": "en"}
{"prompt": "claims API is integrated by four brokers off a spreadsheet, and the two things they get wrong every time are the 202 response and the 24-hour deduplication window. write the reference documentation properly, structured so those two are impossible to miss, with a worked example of a submission and its follow-up polling assume the reader is integrating for the first time and has our sandbox credentials.", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "parameter smoothing is implemented four times across our processors, three of them sample-rate dependent in ways the authors probably didn't intend, and only one resets properly on prepareToPlay. consolidate onto one implementation with an explicit time constant, and keep each processor's audible behaviour at 48kHz indistinguishable from today's the reverb is the reference implementation as far as anyone remembers.", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "core", "lang": "en"}
{"prompt": "step status exists as an int in the agent, a string in the API and a smallint in the database, with three switch statements mapping between them and one missing case that silently reports \"queued\". unify on one representation, handle the two legacy values that exist in production rows, and keep the public API strings exactly as they are there are two production rows with values five and six that predate the current enum.", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.65, "slice": "core", "lang": "en"}
{"prompt": "before the audio work starts i want the threading model written down properly — what the audio thread may touch, how state gets to it, what the message thread owns — and then the plugin scanner moved off the shared lock as the first piece of evidence that the model works the scanner is the piece we can ship first, and the release is in six weeks.", "purpose": "planning", "secondary": "refactor", "mixed": true, "difficulty": 0.85, "slice": "mixed", "lang": "en"}
{"prompt": "workspace isolation needs a decision and also needs progress. lay out the options with their build-time cost, then implement per-job workspaces behind a flag so we can measure the real impact rather than argue about the naive experiment the naive experiment's forty percent slowdown is the number everyone will quote at us.", "purpose": "planning", "secondary": "backendImpl", "mixed": true, "difficulty": 0.85, "slice": "mixed", "lang": "en"}
{"prompt": "rating reproducibility is a february problem that needs starting now. give me the design — what we record, how the engine is versioned, what re-rating means — and then the rating_runs table and write path so new ratings start being recorded while the rest is designed the regulator's wording is about the life of the claim plus seven years, not about our schema.", "purpose": "planning", "secondary": "backendImpl", "mixed": true, "difficulty": 0.9, "slice": "mixed", "lang": "en"}
{"prompt": "die Session-Datei ist inzwischen 80 MB groß und blockiert beim Laden den Message-Thread. Ich hätte gern zuerst ein Konzept für inkrementelles Laden und danach die Umsetzung des Track-Lazy-Loadings, damit die Startzeit vor dem Release besser wird", "purpose": "planning", "secondary": "frontendImpl", "mixed": true, "difficulty": 0.8, "slice": "mixed", "lang": "de"}
{"prompt": "webhook receiver needs to stop dropping events during the insurer's morning batch, and the fix probably changes our whole ingestion shape. think through the design — accept fast, persist cheaply, order per policy — then implement the accept path so tomorrow's batch survives their batch starts at six and they retry anything that isn't a 200 for a full day.", "purpose": "planning", "secondary": "backendImpl", "mixed": true, "difficulty": 0.85, "slice": "mixed", "lang": "en"}
{"prompt": "agent configuration guide needs writing, and while going through the flags i expect you'll find at least one whose documented default doesn't match the binary. produce the guide, and list every discrepancy you find between help text and behaviour operators run this on hardware we've never seen, so defaults matter more than usual.", "purpose": "writing", "secondary": "review", "mixed": true, "difficulty": 0.6, "slice": "mixed", "lang": "en"}
{"prompt": "escribe la documentación de la API de siniestros para los corredores y comprueba en el código si la deduplicación de 24 horas funciona como decimos, porque uno de ellos dice que recibe referencias distintas", "purpose": "writing", "secondary": "review", "mixed": true, "difficulty": 0.65, "slice": "mixed", "lang": "es"}
{"prompt": "wedged-agent runbook should be a page rather than folklore, and the underlying non-idempotent slot release should stop being a footnote. write the runbook, then make release idempotent so the runbook's main entry becomes unnecessary the non-idempotent release has been a known footnote for months and it keeps costing us nights.", "purpose": "writing", "secondary": "backendImpl", "mixed": true, "difficulty": 0.65, "slice": "mixed", "lang": "en"}
{"prompt": "plugin state lives in three places kept in sync by callbacks, two of which the audio thread reads. give it one owner, and write the short note explaining the new ownership so the next person doesn't add a fourth copy two of the three copies are read on the audio thread, which is the part that frightens me.", "purpose": "refactor", "secondary": "writing", "mixed": true, "difficulty": 0.75, "slice": "mixed", "lang": "en"}
{"prompt": "automation recorder calls host APIs from the audio thread, which explains the segfaults, but i want that confirmed before we restructure it. diagnose it properly, then move the parameter updates onto the message thread without changing the recorded result", "purpose": "debugging", "secondary": "refactor", "mixed": true, "difficulty": 0.85, "slice": "mixed", "lang": "en"}
{"prompt": "MIDI events drift by about a third of a millisecond per thousand events, which smells like accumulated rounding in the sample conversion. confirm the mechanism, then fix the scheduling so long sessions stay accurate, and tell me whether existing sessions need anything", "purpose": "debugging", "secondary": "backendImpl", "mixed": true, "difficulty": 0.8, "slice": "mixed", "lang": "en"}
{"prompt": "queue alerts page for the normal morning batch and stayed silent through a six-hour genuine backlog. work out what the rules should be from the actual traffic pattern, then change them", "purpose": "quickFix", "secondary": "planning", "mixed": true, "difficulty": 0.5, "slice": "mixed", "lang": "en"}
{"prompt": "agents should register with short-lived credentials rather than the long-lived token baked into user data. design the enrolment flow, then implement the token exchange", "purpose": "backendImpl", "secondary": "planning", "mixed": true, "difficulty": 0.75, "slice": "mixed", "lang": "en"}
{"prompt": "audio engine's parameter classes each reimplement denormal protection, three of them slightly wrong", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "go services each parse their own config with a different precedence between flags, env and file", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "core", "lang": "en"}
{"prompt": "rename `StepState` to `StepPhase` in the agent, it's confused with the API's status everywhere", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "boundary", "lang": "en"}
{"prompt": "could you explain what happens to a running build when the scheduler restarts", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.65, "slice": "core", "lang": "en"}
{"prompt": "why does our cache key not include the container image, and has that ever bitten us", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "boundary", "lang": "en"}
{"prompt": "someone should check whether a broker can reach another broker's documents by guessing an id", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "boundary", "lang": "en"}
{"prompt": "is it expected that a step's secrets are visible to every command in that step", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "boundary", "lang": "en"}
{"prompt": "docs/rating.md describes a synchronous rating call that we made asynchronous last year", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "core", "lang": "en"}
{"prompt": "SDK header comments claim processBlock may allocate \"if necessary\", which is precisely wrong", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "boundary", "lang": "en"}
{"prompt": "write the migration note for operators about the minimum macOS version change", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "boundary", "lang": "en"}
{"prompt": "precisamos de uma página que explique aos corretores como funciona a atribuição automática", "purpose": "writing", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "boundary", "lang": "pt"}
{"prompt": "scan timeout counts as a crash toward the blocklist, which nobody intended", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.35, "slice": "boundary", "lang": "en"}
{"prompt": "how should we version the pipeline YAML format now that we need to change three of its behaviours", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.75, "slice": "core", "lang": "en"}
{"prompt": "what's the right approach to testing audio code where the failure mode is an audible glitch", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "core", "lang": "en"}
{"prompt": "three brokers want webhooks from us and we've only ever consumed them, what should our outbound story be", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.7, "slice": "boundary", "lang": "en"}
{"prompt": "what should happen to in-flight builds when a customer's plan is downgraded mid-pipeline", "purpose": "planning", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "boundary", "lang": "en"}
{"prompt": "an endpoint that returns a step's log with byte-range support, for the viewer's infinite scroll", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "core", "lang": "en"}
{"prompt": "claim documents should be served through signed URLs that expire, rather than proxied through rails", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "core", "lang": "en"}
{"prompt": "per-broker rate limits on the claims API, since one broker's batch job saturates our workers", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "boundary", "lang": "en"}
{"prompt": "session file should record the host sample rate so we can warn on mismatch at load", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "core", "lang": "en"}
{"prompt": "log viewer needs to follow output without pinning the scroll when the user has scrolled up", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "core", "lang": "en"}
{"prompt": "pipeline graph should collapse matrix expansions into one node with a count", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.55, "slice": "core", "lang": "en"}
{"prompt": "documents grid needs a drag-to-upload target that works on the whole panel", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.45, "slice": "boundary", "lang": "en"}
{"prompt": "stem export needs a naming template field with a live preview of the resulting filenames", "purpose": "frontendImpl", "secondary": null, "mixed": false, "difficulty": 0.5, "slice": "boundary", "lang": "en"}
{"prompt": "whichever is least risky today", "purpose": "quickFix", "secondary": null, "mixed": false, "difficulty": 0.4, "slice": "vague-eval", "lang": "en"}
{"prompt": "pick up the scanner work", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "vague-eval", "lang": "en"}
{"prompt": "our go services each parse configuration with a different precedence between flags, environment variables and the config file, and two of them silently ignore the file when a flag is present. settle on one precedence, apply it across all four services, and tell me which deployed configurations would resolve differently afterwards so we can warn the operators who run them", "purpose": "refactor", "secondary": null, "mixed": false, "difficulty": 0.6, "slice": "core", "lang": "en"}
{"prompt": "a broker's support ticket claims they can see a document that isn't theirs, which if true is the worst bug we could have. before anyone panics, trace how document authorisation actually works — the controller, the signed URL, and whether the scan-moved key is checked against the claim's broker at all", "purpose": "review", "secondary": null, "mixed": false, "difficulty": 0.8, "slice": "boundary", "lang": "en"}
{"prompt": "we need per-broker rate limiting on the claims API, because one broker's nightly batch job saturates the worker pool and everyone else's submissions queue behind it. limits per broker with a burst allowance, a clear 429 with a retry-after, and the limits themselves configurable without a deploy since account managers negotiate them individually", "purpose": "backendImpl", "secondary": null, "mixed": false, "difficulty": 0.65, "slice": "boundary", "lang": "en"}
{"prompt": "the claims models carry twelve callbacks whose firing order is load-bearing, which is why nobody dares add a thirteenth. untangle them into explicit service calls, keep the observable behaviour identical including the side effects on save, and document the order the old callbacks ran in so we can prove nothing was lost", "purpose": "refactor", "secondary": "writing", "mixed": true, "difficulty": 0.75, "slice": "mixed", "lang": "en"}
{"prompt": "denormal protection is reimplemented in each parameter class and three of the four are subtly wrong, which we only noticed because one processor gets slower with quiet input. consolidate it, and confirm from measurements rather than reasoning that the CPU behaviour is unchanged on the processors that were already correct", "purpose": "refactor", "secondary": "review", "mixed": true, "difficulty": 0.7, "slice": "mixed", "lang": "en"}
{"prompt": "i'd like an honest read of whether our audit log can be altered by the admins it's meant to hold accountable, and if it can, the smallest change that fixes it before february rather than the ideal one", "purpose": "review", "secondary": "planning", "mixed": true, "difficulty": 0.7, "slice": "mixed", "lang": "en"}
{"prompt": "prod agents run eight slots on eight cores, which is why steps time out instead of queueing, and the fix is a number in a config file. change it, and tell me what else in the agent's defaults assumes a machine larger than the one it runs on", "purpose": "quickFix", "secondary": "review", "mixed": true, "difficulty": 0.45, "slice": "mixed", "lang": "en"}
