Repository navigation
Conversation
berry-13
marked this pull request as ready for review
October 15, 2026 15:46
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
berry-13
force-pushed
the
refactor/chat-steer-move
branch
from
October 15, 2026 16:07
43a343a to
aee8843
Compare
berry-13
added this pull request to stack #17157
October 15, 2026 16:23
berry-13
force-pushed
the
refactor/chat-steer-move
branch
from
October 15, 2026 17:30
aee8843 to
3b1331c
Compare
berry-13
force-pushed
the
refactor/chat-steer-move
branch
from
October 16, 2026 13:14
3b1331c to
ac50fd7
Compare
Contributor
|
Lighthouse CI failed. The last 80 log lines contain the measured budgets and assertion failures. |
This branch has not been 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
With their state in the package and their app services behind the steer host, the steering hooks no longer need the app. This moves them into
@librechat/chat:hooks/Chat/steering/*,useSteering,useSteerCancel,useSteerConvertanduseSteerEscalatenow live inpackages/chat/src/react/steering/with no~/imports, exported from@librechat/chat/react, and every client consumer (the composer, the queue rail, the during-run send button, the pending steers, the chat helpers, the stream binding, composer restore and the specs) imports them from the package. No client re-export is left behind for these hooks.Package rules shape two small changes: every exported hook now declares its return type (
SteeringControls,QueueRows,SteerChipsand friends), as the package's isolated declarations require, and the composer's attachment type is a structuralComposerFilethe hooks stay generic over, so the app keeps passing its own richer file type.uuidbecomes a peer dependency of the package, at the version the app already resolves. Behaviour is unchanged.Part of the stack that moves the steer hooks into the chat package; base is the previous link. The run-end hooks still blocked on the submitting flag move after #17121.
Type of change
Testing
Tested environments/configuration:
Local jest and typecheck; no runtime configuration matters for this change.
Automated tests:
cd packages/chat && npx jest: 232 tests pass.cd client && npx jest src/hooks/Chat/__tests__ src/components/Chat src/hooks/SSE src/hooks/Input src/routes: 5,065 tests pass. The integration specs stay in the client and exercise the package hooks through the app's steer host; module mocks of the moved hooks now partially mock@librechat/chat/react.npx tsc --noEmitforclientandpackages/chat, and the package build: clean. ESLint, Prettier and import sorting clean on every changed file; the lockfile change is the twouuidentries and contains no internal registry URLs.Screenshots / recordings
No user-facing change.
Risk / compatibility
Low. The moved code is the same code with relative imports; ids still come from
uuidv4 rather thancrypto.randomUUID, which an insecure (plain HTTP) context does not provide.Checklist