v0.22.0
Minor Changes
-
a7f7218: Engineering audit remediation: 32 findings fixed across 5 epics.
Breaking:
get_messagesnow returns full embed and attachment objects instead of counts.embedschanges fromnumbertoarray,attachmentsfromnumbertoarray. Update consumers checkingembeds > 0toembeds.length > 0.New tools:
send_template,list_templates,pin_message,unpin_message,notify_owners,get_invites(42 → 48 tools).CLI:
setup,run,validatesubcommands now wired. Flags--allow-unauthenticated,--profile,--tools,--dry-run,--argsaccepted. Version reads from package.json dynamically.Bug fixes:
list_threadsrespectsarchivedparam.timeout_membermarked destructive.resolveTargetreturnsundefinedinstead of""for missing guild. Permission pre-flight logs errors.Security: SSRF DNS pinning prevents rebinding. Template URL vars validated. X-Forwarded-For parsed right-to-left. Per-project rate limit buckets. Extended reserved IP blocking. Token hashing for cache keys. IP counter hard cap.
Code quality: Dead code removed. TTLCache max-size eviction. Profile tool name validation at startup. Rate limiter bucket pruning.