Skip to content

Docs: the AgentSig clock window is 60 seconds, not 15 or 30 - #191

Merged
maxfain merged 3 commits into
mainfrom
claude/dazzling-pasteur-te7ag2
Oct 15, 2026
Merged

maxfain merged 3 commits into
mainfrom
claude/dazzling-pasteur-te7ag2

Conversation

@maxfain

@maxfain maxfain commented Oct 11, 2026

Copy link
Copy Markdown
Owner

The API has accepted an X-Timestamp up to 60 seconds from server time since #99 (2026-09-10). That change was deliberate: 15 s caused spurious 401s from agent clock skew, and the 120 s replay guard still covers a ±60 s window. The docs never caught up, and a deliverer's quickstart surfaced the mismatch during review:

Doc Said Now
packages/api/src/openapi.json (AgentSig scheme) 15 s 60 s
README.md 15 s 60 s
packages/api/README.md 15 s 60 s
SPEC.md 30 s 60 s
SECURITY.md (architecture list and the replay finding) 30 s 60 s

The middleware (agentAuth and optionalAuth), its 401 message ("must be within 60 seconds"), the skill's recovery table, .env.example and the Python SDK already said 60. Point-in-time records (the CHANGELOG history, QA_REPORT_2026-03-16.md, SECURITY_AUDIT.md) are left as written.

Test. security-fixes.test.ts gains one case next to the existing ±60 s window tests. It asserts that the OpenAPI AgentSig description says "within 60 seconds of server time". It fails against the old text and passes now.

Checks run locally: typecheck, lint (only the existing probe.ts warning), API tests (75 files, 1,283 tests), build, check-positioning, and sync-skill --check. All pass.

🤖 Generated with Claude Code

https://claude.ai/code/session_01HUEV4Uf69wpKrB7GQqEQiX


Generated by Claude Code

The API has accepted an X-Timestamp up to 60 seconds from server time
since #99 (2026-09-10), but the docs kept the old limits: 15 seconds in
the OpenAPI AgentSig scheme, README.md and packages/api/README.md, and
30 seconds in SPEC.md and SECURITY.md. All five now say 60, matching the
middleware, its 401 message and the skill.

A test next to the existing window tests pins the OpenAPI description to
60 seconds; it fails on the old text.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HUEV4Uf69wpKrB7GQqEQiX
@greptile-apps

greptile-apps Bot commented Oct 11, 2026 •

Copy link
Copy Markdown

RetriggerConfidence Score: 5/5

[Low impact] The PR appears safe to merge; the remaining documentation mismatch is fixed.

Summary

The docs now describe the ±60-second AgentSig clock window already used by the API.

  • AgentSig guides now give the API’s 60-second timestamp window.

Reviews (2) · Last reviewed commit: "SPEC.md: the last two 30-second window m..." · Reviewed by Greptile

Comment thread SPEC.md
@github-actions

github-actions Bot commented Oct 11, 2026 •

Copy link
Copy Markdown

🔎 Console preview: https://a78d8a31.basedagents-console.pages.dev
🌐 Site preview: https://1ef81518.auth-ai-web.pages.dev

(Passkey ceremonies only work on app.basedagents.ai — previews are for UI review.)

The replay-protection section and the security checklist still said
30 seconds. Both now give the ±60 s window the middleware enforces.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HUEV4Uf69wpKrB7GQqEQiX
Brings in the MCP sign-in popup fix (#192). CHANGELOG.md conflicted only
because both sides added an entry at the top of Unreleased; both are kept.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HUEV4Uf69wpKrB7GQqEQiX
@maxfain
maxfain merged commit 9501f33 into main Oct 15, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants