Repository navigation
feat(approvals): org-configurable default Allow & Remember expiry (7 days) - #846
Merged
Merged
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
…days)
Orgs get default_remember_ttl_secs (migration 139; NULL = forever,
60s..365d, default 7 days, backfilled to existing orgs), exposed on
/v1/orgs/{id}/execution-settings and as a select in Org Settings.
An allow_remember resolve with no ttl now takes the org default instead
of minting a permanent rule; "forever" is accepted explicitly. The
dashboard expiry picker and the MCP remember dialog preselect the org
default, and the dashboard, MCP and SDK card send "forever" explicitly.
One parser (parse_rule_ttl) now serves /resolve and permission edits.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
angel-manuel
force-pushed
the
feat/org-default-remember-ttl
branch
from
October 28, 2026 12:17
1b85484 to
0d78275
Compare
Contributor
Code diff size+359 / −61 across 20 files (net +298)
Source files under |
Svelte trimmed the leading space inside the tag span, so it read "For 7 days· default". Screenshot script waits out the menu fade-in. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Codecov Report❌ Patch coverage is 📢 Thoughts on this report? Let us know! |
This was referenced Oct 29, 2026
Merged
Merged
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
"Allow & Remember" used to create a permanent rule unless the reviewer changed the picker: "Never" was preselected, and an API resolve that left out
ttlmeant forever. Orgs can now set the default expiry, and it starts at 7 days.orgs.default_remember_ttl_secs. NULL means forever, the range is 60s to 365d, and the column default is 604800, which also backfills existing orgs.GET/PATCH /v1/orgs/{id}/execution-settings. PATCH is admin-only and three-valued (absent /null/ number).POST /v1/approvals/{id}/resolvewithallow_rememberand nottlnow applies the org default.ttl: "forever"is accepted explicitly; it used to 400.parse_rule_ttl, now serves both/resolveandPATCH /v1/permissions/{id}."{n}s"option.foreveris now passed through instead of being dropped.ttl, so "Always" is an explicitforever.ttl;foreveris sent explicitly.D-NEXTdecision.Behaviour change
API callers that relied on leaving out
ttlto get a permanent rule now get the org default (7 days). Passttl: "forever"for a permanent rule. Rules that already exist keep their expiry.Screenshots (real stack,
dashboard/scripts/screenshot-remember-ttl-default.mjs)Org setting:
The default changed to 30 days through the UI; a new approval's Allow menu then tags it:
Test plan
approvals_remember_keys.rs):foreverwrites a rule with no expiry;1hwins over the default;parse_rule_ttl, the elicitation default and off-menu option,remember_resolve_bodypassingforeverthrough,humanize_secs.mcp_elicitation::remember_dialog_without_scope_saves_the_exact_keysupdated: no duration picked now means 7 days.cargo nextest run --workspace: 3851 passed. Clippy-D warningsclean, svelte-check clean, SDK vitest 138 passed.--agentic: no issues.🤖 Generated with Claude Code