Repository navigation
feat(foundry): Self-Upgrade files its own proposals - #21
Merged
Merged
Conversation
- Subscription runs (agents, swarms, Foundry builds, Command V2) read their default model from one place, SubscriptionModels: Opus 5.5 for agent work, Sonnet 5.5 for routine work. A sweep test fails on a Claude model literal in any file that starts a run. - Design Studio's subscription route said "$0 metered", then reviewed every design on the API key. On that route the review now runs on the plan, as claude --print with no tools, no MCP servers and none of the user's own settings, because the HTML under review is untrusted. At most two reviewers run at once, and Stop ends them and refuses the rest. - Foundry proposals stuck in building or verifying with nothing tracking them are rejected at launch with a visible reason. - Every spawned claude strips billing variables from the one tested list. - --studio-smoke --route=subscription checks the plan route end to end.
…ds while the CLI starts
Nothing in Grux ever filed a Self-Upgrade proposal: the sense pass harvested signals that went nowhere, and every card came from one hand-written June book. ProposalSynthesizer is the missing stage. - One pass is one Claude Code run on the user's plan over a git archive copy of the source checkout in a temp folder: Read, Grep and Glob only, nothing under any home folder, other volumes, /Library or /etc, no MCP servers, none of the user's settings. - Every draft is checked before it is filed: lane, domain, a one-line title, a bounded build brief with no fetch, shell pipe, push or home reach, real paths in the copy, no duplicate (a Reject or failed build blocks a title for 90 days), at most 8 a pass and 16 waiting. Touching the build rail pins it protected. The brief is shown on the card before Build. - Proposals unbuilt for 30 days retire in the same pass. - Runs on scheduled and manual passes (never opportunistic), stands down at a session limit, and on ~/.grux/fire-foundry-refresh. - Stuck cards are cleared at launch with self-upgrade off too.
Drops are counted and named by rule; paths are read as models write them; briefs carry Grux's own rules line; the prompt no longer describes the build and test gate (RDWorker owns it).
dotcomjack
marked this pull request as ready for review
October 31, 2026 01:08
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.
feat(foundry): Self-Upgrade files its own proposals
Nothing in Grux ever filed a Self-Upgrade proposal: the sense pass harvested
signals that went nowhere, and every card came from one hand-written June
book. ProposalSynthesizer is the missing stage.
of the source checkout in a temp folder: Read, Grep and Glob only, nothing
under any home folder, other volumes, /Library or /etc, no MCP servers,
none of the user's settings.
a bounded build brief with no fetch, shell pipe, push or home reach, real
paths in the copy, no duplicate (a Reject or failed build blocks a title
for 90 days), at most 8 a pass and 16 waiting. Touching the build rail
pins it protected. The brief is shown on the card before Build.
session limit, and on ~/.grux/fire-foundry-refresh.
Stacked on #20 (the subscription route fix); merge #20 first.