feat: add ability to attach source to an environment - #809
Merged
Conversation
🦋 Changeset detectedLatest commit: 394c355 The changes in this PR will be included in the next version bump. This PR includes changesets to release 2 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
qstearns
force-pushed
the
quinn/source-environments
branch
from
November 10, 2025 17:57
e1c6218 to
2f9e885
Compare
qstearns
force-pushed
the
quinn/source-environments
branch
from
November 10, 2025 18:16
2f9e885 to
6173181
Compare
qstearns
changed the base branch from
main
to
quinn/add-source-environments-table
November 10, 2025 18:22
qstearns
force-pushed
the
quinn/source-environments
branch
from
November 10, 2025 18:31
6173181 to
7d03814
Compare
qstearns
force-pushed
the
quinn/add-source-environments-table
branch
from
November 10, 2025 18:32
303753a to
c665eb6
Compare
qstearns
force-pushed
the
quinn/source-environments
branch
from
November 10, 2025 18:51
7d03814 to
5cc8a5f
Compare
qstearns
force-pushed
the
quinn/source-environments
branch
from
November 10, 2025 19:23
5cc8a5f to
cbc03e8
Compare
ryan-timothy-albert
approved these changes
Nov 12, 2025
ryan-timothy-albert
left a comment
Contributor
There was a problem hiding this comment.
Let's deploy to dev and test carefully
…e such that all tool calls originating from that source will have those environment variables apply
move oauth token into environement resolution exclude server url when system environments are used pass through all environment variables not specified by plan
move ci env switch environment parameter for tool proxy
Note that we're removing explicit map sizing because map size has become unpredictable
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 subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
Allows attaching environments to sources for all callers.
This introduces the distinction between a System Environment and User Configuration to the system. These names might be stupid but they attempt to get around the idea that Headers are more of an implementation detail and the rules associated with how you merge these things should be derived from their provenance rather than how they were supplied.
We make some decisions. First off, we complect the call sites of tool proxies by placing the onus of loading on them. This was more or less in the name of purity of the tools proxy. But might be a mistake because it forces the onus of reading system environments to a bunch of places in our code base. It's possible it's a little bug-prone to do this nonsense in a bunch of places.
The other decision, which I feel a little better about is to provide both environments to each tool type and leave the responsibility of merging them at the call site. Even though we aim for consistent behavior (ie. preferring user config over system environment), leaving the flexibility on how to merge each tool type seems healthy.
UX
A dialog attached to source cards. Not good.
Affordance to access functionality is currently buried behind:
The interface for attaching an environment is implemented in this modal:
Things to pay Attention To
zustandfor state management)Dialogs and Dropdown Menu's to the moonshine versions of those components. I couldn't visually tell the difference and there were some really nasty interplay issues. Hoping this is a nice stability moveConsiderations