Skip to content

[pull] main from Alishahryar1:main - #252

Merged
pull[bot] merged 2 commits into
Co-Contribute-OpenSource:mainfrom
Alishahryar1:main
Sep 27, 2026
Merged

pull[bot] merged 2 commits into
Co-Contribute-OpenSource:mainfrom
Alishahryar1:main

Conversation

@pull

@pull pull Bot commented Sep 27, 2026 •

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

## Why

The Windows installer fails when installing Hermes because its official
installer rejects `-SkipSetup`. Closes #1921.

## How

Pass only `-NonInteractive`, which already skips upstream stages
requiring input. Update the Hermes smoke stub to reject unsupported
parameters and add a focused installation regression scenario for
Windows PowerShell and PowerShell 7.


<!-- greptile_comment -->

<!-- greptile_summary -->

<h2><a
href="https://app.greptile.com/api/retrigger?id=70242636"><picture><source
media="(prefers-color-scheme: dark)"
srcset="https://greptile-static-assets.s3.amazonaws.com/badges/RetriggerDark.svg?v=2"><source
media="(prefers-color-scheme: light)"
srcset="https://greptile-static-assets.s3.amazonaws.com/badges/Retrigger.svg?v=2"><img
alt="Retrigger"
src="https://greptile-static-assets.s3.amazonaws.com/badges/Retrigger.svg?v=2"
align="right"></picture></a>Confidence Score: 5/5</h2>

<!-- greptile-risk -->

No identified issue blocks merging.

What we checked:
- The wrapper was updated to pass only -NonInteractive, and the
installer was found to declare -NonInteractive but not -SkipSetup. <a
href="https://www.greptile.com/trex"><img alt="T-Rex"
src="https://greptile-static-assets.s3.amazonaws.com/trex/trex_green.svg"
height="16" align="absmiddle"></a>
- Contract validation showed upstream Stage-Setup and Stage-Gateway
exited early and did not invoke Hermes when the -NonInteractive flag was
used. <a href="https://www.greptile.com/trex"><img alt="T-Rex"
src="https://greptile-static-assets.s3.amazonaws.com/trex/trex_green.svg"
height="16" align="absmiddle"></a>
- The contract checks reported exit codes 1 and 0 for the parallel
checks, indicating that no real Hermes installation was attempted. <a
href="https://www.greptile.com/trex"><img alt="T-Rex"
src="https://greptile-static-assets.s3.amazonaws.com/trex/trex_green.svg"
height="16" align="absmiddle"></a>

<details open><summary>Summary</summary>

The PR removes an unsupported argument from the Windows Hermes installer
call and updates the smoke fixture and assertions to check
noninteractive installation. The fetched installer accepts the remaining
argument and skips interactive setup when it is set. This lets Windows
users install Hermes without being prompted for setup. No actionable
issues were found.
</details>

<!-- greptile_confidence_score:5 -->

<sub>Reviews (1) · Last reviewed commit: ["fix: use supported Hermes
Windows
instal..."](https://github.com/alishahryar1/free-claude-code/commit/6b39dfd8582a82aae5114b97a97a106d026c3b48)</sub>

<!-- /greptile_comment -->
## Why

Applying settings rebuilds provider clients and currently resets their
rate history, concurrency budgets, and coordinated recovery. Requests
still using a retired client can therefore overlap with a replacement
that has an independent protection budget, even after an unrelated
settings edit.

## How

Give the runtime manager one admission registry and inject its
controllers into every client generation. Separate live admission limits
from immutable client configuration, publish limits with the new
settings generation, and preserve occupied slots, request timestamps,
and recovery episodes. Grant rate and concurrency capacity together when
an attempt starts. Retire deleted custom-provider state only after its
client generations close.

Accepted behavior:

- Protection is scoped to each configured provider ID for this server
instance. Key, URL, account, and OAuth-token changes retain that state.
Separate custom provider IDs remain independent, even with matching
credentials or URLs.
- Changed limits govern waiting and new attempts. Running calls finish
normally, including when concurrency is lowered below current occupancy.
- Increasing the rate window waits conservatively when older timestamps
have already been discarded, until that missing history is outside the
new window. Ordinary settings edits add no delay.
- Restarting the server resets this in-memory state. It does not track
account quotas across processes.


<!-- greptile_comment -->

<!-- greptile_summary -->

<h2><a
href="https://app.greptile.com/api/retrigger?id=70262717"><picture><source
media="(prefers-color-scheme: dark)"
srcset="https://greptile-static-assets.s3.amazonaws.com/badges/RetriggerDark.svg?v=2"><source
media="(prefers-color-scheme: light)"
srcset="https://greptile-static-assets.s3.amazonaws.com/badges/Retrigger.svg?v=2"><img
alt="Retrigger"
src="https://greptile-static-assets.s3.amazonaws.com/badges/Retrigger.svg?v=2"
align="right"></picture></a>Confidence Score: 5/5</h2>

<!-- greptile-risk -->

No confirmed issue blocks merging.

What we checked:
- T-Rex ran a general contract validation to examine how _finish_claim
could race between transaction exit and processor launch when reentrancy
is forced. <a href="https://www.greptile.com/trex"><img alt="T-Rex"
src="https://greptile-static-assets.s3.amazonaws.com/trex/trex_green.svg"
height="16" align="absmiddle"></a>
- The harness recorded the forced-order scenario, including the
cancellation task being created before the real launch and the observed
commit, launch, and cancellation states along with node_processor calls.
<a href="https://www.greptile.com/trex"><img alt="T-Rex"
src="https://greptile-static-assets.s3.amazonaws.com/trex/trex_green.svg"
height="16" align="absmiddle"></a>
- The analysis showed that normal runs publish the child task before
cancellation and process only the root, while reentrant runs with forced
order can process both root and child. <a
href="https://www.greptile.com/trex"><img alt="T-Rex"
src="https://greptile-static-assets.s3.amazonaws.com/trex/trex_green.svg"
height="16" align="absmiddle"></a>
- In a separate validation, T-Rex confirmed the deletion flow where the
status-reply child referenced status-root, foreign-key checks passed,
and the child was deleted with the parent's status cleared. <a
href="https://www.greptile.com/trex"><img alt="T-Rex"
src="https://greptile-static-assets.s3.amazonaws.com/trex/trex_green.svg"
height="16" align="absmiddle"></a>
- T-Rex identified the code locations affected by the deletion changes
and linked them to sqlite_migrations/v0004_messaging_schema.py,
messaging_sqlite.py, and messaging/trees/runtime.py. <a
href="https://www.greptile.com/trex"><img alt="T-Rex"
src="https://greptile-static-assets.s3.amazonaws.com/trex/trex_green.svg"
height="16" align="absmiddle"></a>

<details open><summary>Summary</summary>

The PR shares provider admission state across settings changes and moves
messaging history to transactional SQLite storage. No actionable issues
were confirmed.
</details>

<!-- greptile_confidence_score:5 -->

<sub>Reviews (1) · Last reviewed commit: ["fix: preserve provider
admission across
..."](https://github.com/alishahryar1/free-claude-code/commit/f8c565cce0c4482be9f3897d4cb51192e6ad5706)</sub>

<!-- /greptile_comment -->
@pull pull Bot locked and limited conversation to collaborators Sep 27, 2026
@pull pull Bot added the ⤵️ pull label Sep 27, 2026
@pull
pull Bot merged commit 37c7726 into Co-Contribute-OpenSource:main Sep 27, 2026
10 of 11 checks passed

This branch had an error being deployed

1 failed deployment
pypi — 37c77262 Deployed Sep 27, 2026 by pull[bot] via Publish to PyPI #9
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant