Repository navigation
chore(release): 0.3.4 - #39
Merged
Merged
Conversation
Agent keys are also accepted as Authorization: Bearer on /mcp, and Studio shows ready-to-copy client setup after creating a key (#38). The site MCP points developers to cloudhal.dev's docs (#37). New pnpm projects install a Cloudhal release on the day it ships (#36). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Madraka <8898640+Madraka@users.noreply.github.com>
Madraka
added a commit
that referenced
this pull request
Nov 9, 2026
… hardening (#144) Review round 3 of #178. 1. Eviction matched exempt hosts with `clientId LIKE 'https://%.host/%'`. In SQLite `%` spans `/`, so https://junk.example/x.claude.ai/c.json passed for claude.ai and was never evicted, which brought the cap lockout back. evictCimdClient now reads the oldest grantless candidates and judges each by `new URL(clientId).hostname` with the same isExempt as admission. It deletes the pick in one atomic batch that re-checks the predicate (`clientId IN (?)`). 2. The plugin's cache size, which also bounds its per-origin and per-client fetch state, goes from 500 to 10,000. 3. oauthClientsPruneJob takes the deployment's limits (dcrUnusedDays, cimdUnusedHours). Test: 120 rows pruned in one run. 4. Test: eviction never removes a client with a live grant, nor a well-known host's row older than evictMinutes. 5. Look-alike names are folded with NFKD and their combining marks dropped (Cláude, Clȧude), with Armenian, Cherokee and Latin small capital look-alikes added to the map. A UTS #39 skeleton stays a follow-up. 6. Self-host guide: behind a reverse proxy without CLOUDHAL_BEHIND_PROXY=1, every client shares the proxy's rate-limit bucket. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Madraka <8898640+Madraka@users.noreply.github.com>
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.
Version bump for 0.3.4 (all
@cloudhal/*packages andcreate-cloudhal, fixed group).Authorization: Bearer <key>on/mcpand whereverx-api-keywas;/api/admin/*keeps its deployment-token bearer (feat: agent keys as Authorization: Bearer, per-client MCP setup in Studio #38). Released as a patch: purely additive, so^0.3.xranges (the template, existing projects) pick it up.@cloudhal/*andcreate-cloudhalfromminimumReleaseAge(docs: installation, quickstart, agents and MCP client setup on cloudhal.dev #36).After merge,
pnpm releasepublishes to npm. Then: cloudhal.com and the template to 0.3.4, and the cloudhal.dev docs (which already describe Bearer) get deployed.🤖 Generated with Claude Code