协作头脑风暴
brainstorming
在实现前澄清需求、探索设计选择,并形成清晰的开发方向。
flexport-incident-runbook【开发与工程】Analyze, contain, and reconcile a Flexport integration incident without unsafe retries or invented webhook replay APIs. Use when events stop, payload parsing fails, credentials break, or mutation outcomes are uncertain. Trigger with: "Flexport incident", "missing Flexport events", "reconcile Flexport outage".
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
name: flexport-incident-runbook description: >- Analyze, contain, and reconcile a Flexport integration incident without unsafe retries or invented webhook replay APIs. Use when events stop, payload parsing fails, credentials break, or mutation outcomes are uncertain. Trigger with: "Flexport incident", "missing Flexport events", "reconcile Flexport outage". allowed-tools: Read, Grep, Write, Edit version: 2.0.0 argument-hint: '[incident-window-and-affected-surface]' model: inherit effort: high license: MIT author: Jeremy Longshore jeremy@intentsolutions.io tags:
Preserve freight correctness first. Freeze uncertain mutations, separate provider delivery from local processing, and reconstruct affected state with documented resource/event reads.
Disable automatic bookings and affected writes. Keep authenticated webhook acceptance only if durable enqueue and deduplication remain correct.
Identify first/last bad receipt by surface, operation, release, credential alias, and version without examining broad sensitive payloads.
Test OAuth, REST read, MCP connection, webhook ingress, queue processing, and downstream state independently.
Use /events or affected resource reads to compare provider state with durable local operation keys. Do not assume Flexport exposes a webhook replay endpoint.
Reprocess authenticated durable events or apply approved state corrections exactly once; reconcile uncertain creates/bookings before retry.
Restore traffic by cohort, verify the full incident window, rotate exposed credentials if needed, and add a sanitized regression fixture.
REST calls authenticate with a cached OAuth 2.0 client-credentials Bearer token using audience https://api.flexport.com, or an explicitly accepted broad API key. Use distinct credentials per workload and never log credentials or tokens. MCP calls use the authenticated connection to https://mcp.flexport.com/mcp and remain subject to each tool's documented account permissions.
Use Read and Grep for discovery and evidence. Use Write or Edit only for the approved artifact, code, configuration, test, or receipt described by this workflow; do not make an unapproved Flexport-side change.
Return a machine-reviewable receipt in this shape; adapt the operation values, but never place credentials or provider payloads in it:
surface: rest-v3
operation: shipment-read
decision: approved
outcome: verified
evidence:
release_sha: recorded-out-of-band
provider_reference: redacted
rollback_owner: logistics-platform
A receiver deployment parsed bodies before signature validation and dropped events. The team restores the prior release, queries the bounded event/resource window, deduplicates by durable operation identity, and backfills only missing local transitions.
| Failure | Response |
|---|---|
| Provider reads unavailable | Maintain the mutation freeze and preserve the reconciliation window. |
| Duplicate business action found | Stop workers and choose one authoritative provider resource. |
| Event type newly additive | Update tolerant routing and replay only authenticated durable items. |
| Incident needs sensitive payload | Escalate access and minimize fields rather than copying broad logs. |