Skip to content

Port the factory loop from the factory-control-plane branch - #1028

Draft
pcapriolo-yc wants to merge 1 commit into
mainfrom
qm-29-port-factory-loop
Draft

Port the factory loop from the factory-control-plane branch#1028
pcapriolo-yc wants to merge 1 commit into
mainfrom
qm-29-port-factory-loop

Conversation

@pcapriolo-yc

@pcapriolo-yc pcapriolo-yc commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Re-opens the content of #1008 (reverted in #1026) as a draft. This stays open until the QM-native factory path runs end to end on staging; qm-yc pins staging to this PR's head with pin.sh --candidate-pr. Not for merge before then.

Content is the squash commit ca09179e cherry-picked onto current main. See #1008 for the port notes, drift adaptations, and test counts.


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.

Source: yc-software/qm-yc branch factory-control-plane at ed98be4f8,
fork base f0ba6556775a3189e473dd6cc12f88c8594ea4a2.

Adds src/loops/factory/ (contract, credentials, effects, evaluate,
forge-evaluate, linear-intake, preflight, process-work, ship), the
factory-config admin resource and its FactoryConfig record, factory
surface routing in loop-fire, the factory_configs durable map and
factory deps in wiring, the Software factory admin card, and the ten
loop-factory test suites.

Drift adaptations against public main a5e43ef:
- loop-fire.ts: kept public main's stageFailure -> { error, userMessage }
  contract; the three moved effect bodies throw failure.error.
- config-store.ts: appended factoryConfig:${org} to flushScope's org
  drain-key list.
- wiring.ts: reused the existing buildApp-scope orgScope local.
- index.html: card class adapted to sv-customize for the subview filter;
  fork-base browse-model context dropped; card enrolled in
  prepareParityCards.
- Three credential fixtures gained deployments: false, now required on
  DecryptedServiceCredential.

Deviation: test/loop-factory-evaluate.test.ts drops the
converge-vector.sh case (tools/factory/ is out of scope for this port),
shipping 8 tests instead of 9; FACTORY_CHECKS is module-private since
nothing else on the ported tree reads it.

(cherry picked from commit ca09179)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant