QR capacity error, id batch monotonicity, geo rate limit
Three bug fixes to existing tool and config contracts.
Fixed:
- generate_qr rejects over-capacity payloads with a typed data_too_large (InvalidParams) error and recovery hint, not an untyped qrcode internal error (#10)
- generate_id uuid_v7/ulid batches are strictly monotonic — the suffix increments within a millisecond so a batch is sorted by creation; uuid_v4 unchanged (#11)
- TOOLKIT_GEO_RATE_LIMIT_PER_MIN is enforced via the framework RateLimiter (cache hits exempt); over-budget lookups return a retryable RateLimited error (#12)
173 tests pass; bun run devcheck clean.