Document SEC-E08 extension fee guard LocalTerra-only scope (#429) #957
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!957
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "issue-429-extension-fee-guard-sec-e08"
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
Addresses GitLab #429 (SEC-E08): the post-sign extension fee guard in
extensionSignedFeeGuard.tsis intentionally LocalTerra-only (localterrachain ID). Keplr on mainnet (columbus-5) does not exhibit the stale-fee rewrite that prompted the guard (#127, maintainer confirmation on #429).This MR adds:
docs/runbooks/extension-fee-guard-wallet-qa.md) with LocalTerra + mainnet manual steps and launch sign-off textskills/AGENTS_EXTENSION_FEE_GUARD.md) for third-party agentsmake verify-issue-429— doc drift guard +extensionSignedFeeGuardunit tests (including mainnet skip)No behavioral change to the guard — documentation and verification only.
Acceptance checklist
docs/security-model.md§ SEC-E08;docs/runbooks/extension-fee-guard-wallet-qa.mdScope tabledocs/runbooks/launch-checklist.mdPhase 4 SEC-E08 itemmake verify-issue-429Verification checklist (third parties)
Manual wallet QA (pre-launch): follow
docs/runbooks/extension-fee-guard-wallet-qa.md— Keplr swap oncolumbus-5(or staging) and Keplr/simulated wallet on LocalTerra.Blockers
None.
Relates to #429
assigned to @PlasticDigits
Security review — MR !957
Commit reviewed:
3f91ddef7866a3c543ce9178b32fc79a424391b5Scope: SEC-E08 documentation and verification only — security model, wallet QA runbook, launch checklist Phase 4 gate, agent playbook (
skills/AGENTS_EXTENSION_FEE_GUARD.md), doc-drift guard (scripts/check_extension_fee_guard_docs.py),make verify-issue-429, Makefile/lint wiring, skill cross-links, and a JSDoc pointer inextensionSignedFeeGuard.ts. No runtime or on-chain logic changes.Method: Full MR diff reviewed. Attacker-controlled input paths traced for new/changed scripts and tooling.
extensionSignedFeeGuard.tsLocalTerra-only gate (isLocalTerraChainId→ earlynullon mainnet) confirmed pre-existing; this MR documents intentional mainnet exclusion rather than introducing it.Outcome:
FINDINGS: 0medium+Security review: no medium+ findings on this diff.
Inline threads: none (no findings to anchor)
Notes:
check_extension_fee_guard_docs.pyreads fixed repo paths with static string markers — no injection or SSRF surface.scripts/qa/verify-issue-429.shruns fixedmake/Vitest steps withset -euo pipefail; no untrusted input.mentioned in issue #429
mentioned in commit
02d9e3c982mentioned in issue #460