Add pool triage runbook for incident liquidity ranking (SEC-G03) #968
No reviewers
Labels
No labels
agent:fix_bugfix
agent:fix_conflicts
agent:fix_security
agent:gap_analysis
agent:implement
agent:implement
agent:implement
agent:open_issues
agent:ready
agent:research
agent:security_audit
agent:verify
architecture
backend
blocker:hybrid
blocker:launch
blocker:limit-orders
blocker:v2
block:log_only
block:security
bug
ci
contracts
correctness
deploy
dev
devops
docs
documentation
duplicate
e2e
enhancement
epic
feature
frontend
functional-completion
gas
good first issue
governance
help wanted
high-risk
hooks
hybrid
indexer
infra
infrastructure
integrators
invalid
launch-blocker
limit-orders
localnet
localterra
low priority
missing-implementation
needs-design
ops
performance
priority
high
priority
medium
product
qa
QA
question
ready
ready
research
scripts
security
security-hardening
smartcontracts
tech-debt
testing
ux
UX
v2
verification
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
code/cl8y-dex-terraclassic!968
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "issue-436-pool-triage-sec-g03"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Adds Quick pool triage (SEC-G03) to the emergency-commands runbook and incident template so operators can rank CL8Y DEX pairs by approximate on-chain liquidity during incidents (#436).
pair_reserves— pairs sorted by descendingapprox_liquidity_units(human-normalized reserve sum) or quote-side reserveGET /api/v1/pairs?sort=volume_24h&order=desc(24h activity proxy when DB shell unavailable){"pool":{}}when indexer is downmake check-pool-triage-docs/make verify-issue-436skills/AGENTS_POOL_TRIAGE.mdAcceptance checklist
grep 'ORDER BY approx_liquidity_units DESC' docs/runbooks/emergency-commands.mdemergency-commands.mdgrep 'quick-pool-triage-sec-g03' docs/templates/incident-dex-indexer.mdmake check-pool-triage-docsmake verify-issue-436pair_reserves)Verification for third parties
Manual: open
docs/runbooks/emergency-commands.md§ Quick pool triage (SEC-G03) and confirm SQL + API snippets. With indexer Postgres populated (make setup-cloud-localterra):Incident template triage item:
docs/templates/incident-dex-indexer.md→ Top pools by liquidity.Security review — MR !968
Commit reviewed:
97cb68420f40c45392097dd9b3d6c9e257a4fdfbScope: Pool triage runbook (SEC-G03) —
docs/runbooks/emergency-commands.md, incident template, security-model cross-links,skills/AGENTS_POOL_TRIAGE.md,scripts/check_pool_triage_docs.py,scripts/qa/verify-issue-436.sh, Makefile targets. No smart-contract, indexer API, or frontend runtime changes.Method: Diff review with attacker-input tracing on new shell/SQL/curl snippets and verification scripts. Checked prior MR notes (none). Compared indexer
GET /api/v1/pairs?sort=volume_24husage against existing allowlisted sort parsing inindexer/src/api/pairs.rs(pre-existing; not modified here).Outcome:
FINDINGS: 0medium+Inline threads: None (no findings to anchor).
Notes (informational, below reporting threshold)
psql "$DATABASE_URL"andverify-issue-436.shsmoke SQL use quoted connection strings and fixedSELECTtext — no new injection sink.poolqueries are read-only, operator-local triage paths; credentials stay inindexer/.envon the host (existing emergency-commands pattern).Security review: no medium+ findings on this diff.
mentioned in issue #436
added 12 commits
main0b0b0334- Merge origin/main into issue-436-pool-triage-sec-g03.Compare with previous version
Resolved merge conflicts with
main(commit0b0b0334).Files:
Makefile,docs/security-model.md,docs/testing.md,skills/AGENTS_EMERGENCY_COMMANDS.mdResolution: Kept both sides' additions — pool triage (SEC-G03, #436) alongside incident template (SEC-G06, #439), launch monitoring (#434), and unpause gates (SEC-G07, #440) from
main.Sanity:
make check-pool-triage-docsandmake check-incident-template-docspass.Security review — MR !968 (re-review after merge)
Commit reviewed:
0b0b03346b207e139d79cb55f46c4863d4afb306Scope: Pool triage runbook (SEC-G03) —
docs/runbooks/emergency-commands.md, incident template,docs/security-model.md,skills/AGENTS_POOL_TRIAGE.md,skills/AGENTS_EMERGENCY_COMMANDS.md,scripts/check_pool_triage_docs.py,scripts/qa/verify-issue-436.sh, Makefile/doc-test targets. Re-reviewed after merge-conflict resolution withmain(prior review on97cb684).Method: Full diff review with attacker-input tracing on documented shell/SQL/curl snippets and verification scripts. Cross-checked documented
GET /api/v1/pairs?sort=volume_24hagainst pre-existing allowlisted sort parsing inindexer/src/api/pairs.rs(parse_pair_list_sort— not modified in this MR). No smart-contract, indexer runtime, or frontend code changes.Outcome:
FINDINGS: 0medium+Inline threads: None (no findings to anchor).
Prior review
Earlier security note on
97cb684also reported zero medium+ findings. Merge resolution (0b0b033) only integrated parallel doc/Makefile additions frommain; no new executable attack surface.Notes (informational, below reporting threshold)
psql "$DATABASE_URL"andverify-issue-436.shsmoke SQL use quoted connection strings and fixedSELECTtext — no new injection sink.poolqueries are read-only, operator-local triage paths; credentials remain inindexer/.envon the host (existing emergency-commands pattern).Security review: no medium+ findings on this diff.
added 4 commits
main5c7e3a13- Merge origin/main into issue-436-pool-triage-sec-g03.Compare with previous version
Resolved merge conflicts with
maininMakefile(3 hunks).Kept both branches' doc/verify targets:
check-pool-triage-docs,verify-issue-436check-anomaly-signals-docs,verify-issue-435Sanity:
make check-pool-triage-docsandmake check-anomaly-signals-docsboth pass.Security review — MR !968
Commit reviewed:
5c7e3a136a035f63207b083e092c38bd160e46efScope: Pool triage runbook (SEC-G03) —
docs/runbooks/emergency-commands.md, incident template,docs/security-model.md,skills/AGENTS_POOL_TRIAGE.md,skills/AGENTS_EMERGENCY_COMMANDS.md,scripts/check_pool_triage_docs.py,scripts/qa/verify-issue-436.sh, Makefile/doc-test targets. Re-reviewed at current head (prior reviews on97cb684/0b0b033).Method: Full diff review with attacker-input tracing on documented shell/SQL/curl snippets and verification scripts. Cross-checked documented
GET /api/v1/pairs?sort=volume_24hagainst pre-existing allowlisted sort parsing inindexer/src/api/pairs.rs(parse_pair_list_sort— not modified in this MR). No smart-contract, indexer runtime, or frontend code changes.Outcome:
FINDINGS: 0medium+Inline threads: None (no findings to anchor)
Prior review
Earlier notes on
97cb684and0b0b033also reported zero medium+ findings. Current head (5c7e3a1) is the same functional diff scope; no new executable attack surface identified.Notes (informational, below reporting threshold)
psql "$DATABASE_URL"andverify-issue-436.shsmoke SQL use quoted connection strings and fixedSELECTtext — no new injection sink.poolqueries are read-only, operator-local triage paths; credentials remain inindexer/.envon the host (existing emergency-commands pattern).Security review: no medium+ findings on this diff.
mentioned in commit
7f1429d829