Repository navigation
Conversation
Contributor
Author
Contributor
Author
…eriment Custom experiments now run in two phases. Students design first (question, hypothesis, conditions, trial counts, parameters), then pass a blocking Feasibility Analysis, then gather stimuli and preview. The student is never hard-blocked: Continue is always offered once the analysis has finished. - Rules (utils/feasibility/rules.ts) make the call: a green/yellow/red verdict plus pitfalls. A small local model (Qwen3 4B / Qwen3.5 2B GGUF) only phrases it and falls back to the rules' own words if it is unavailable. - The model runs in an Electron utilityProcess (src/main/llm) behind llm:* IPC, forked lazily, and uses the best tier the machine's RAM can hold. - A verdict chip in the design nav shows while the checked design still matches the current one; the check is saved as feasibilityCheckedPrompt. - Trial counts are planned before any folder is chosen; picking folders no longer overwrites them (countPhases removed). Custom defaults are 100/10. - The new Stimuli step holds the condition folders and trial list. See docs/feasibility-coach.md.
jdpigeon
force-pushed
the
feat/feasibility-coach
branch
from
October 7, 2026 18:05
0b3e0a4 to
ee03d60
Compare
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.

A "computational thinking in the age of AI" prototype for custom experiments.
Flow
Entering any build step with a design that changed since the last passed check reopens the modal. A green / yellow / red verdict chip in the design nav shows while the passed check still matches the design. It is saved with the workspace (
params.feasibilityCheckedPrompt) and disappears on any edit that changes the analysis.How it works
src/renderer/utils/feasibility/rules.ts): keyword rules (most limiting wins) plus pitfalls (trials per condition, session length, movement, missing hypothesis). They are meant for advisor review.node-llama-cppruns in an ElectronutilityProcess(src/main/llm), forked lazily and killed on quit, behindllm:generate/llm:abort/llm:event. The worker is bundled via electron-vite?modulePath.balanceStimuliByConditionalready samplesceil(nbTrials / conditions)per condition, so folder picks no longer overwrite counts (countPhasesremoved). Custom defaults are now 100 experimental / 10 practice.Full design notes:
docs/feasibility-coach.md. Background research on local models:Running a Local LLM (MiMo) Inside Brainwaves (Electron).md(MiMo was dropped as too slow for lab PCs).Try it
Models are not bundled or downloaded by the app yet. Install one by hand:
Verification
npm test: 59 files, 317 passed.npm run typecheckis clean.Not done
node-llama-cppprebuilts (they are inasarUnpack).