omnilearn-workflow 1.0.8 → 1.0.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -265,10 +265,11 @@ task(category="deep", run_in_background=false, timeout=600000, prompt="
265
265
 
266
266
  ### 2. ...
267
267
 
268
- ## Assignment Structure
269
- - N assignments with progressive difficulty: Basic Intermediate Real-World
270
- - Each builds on the previous. More than 3 can be created if the user needs extra practice or the topic is deep.
271
- - Final assignment should be a mini-project or real-world scenario
268
+ ## Assignment Structure (Adaptive — Determined During Learning)
269
+ - **Assignments are NOT pre-defined.** They are generated on-demand based on the user's performance, ZPD, and pace.
270
+ - The general trajectory is: Baseline Stretch Real-World, but the number of assignments and their specific difficulty is determined adaptively.
271
+ - If the user breezes through, they get fewer, harder assignments. If they struggle, they get more scaffolding and intermediate bridging exercises.
272
+ - The final assignment will be a real-world scenario that integrates this topic with other skills the user knows.
272
273
 
273
274
  STEP 3 — Create topic-explanation.md at:
274
275
  {TOPICS_DIR}/{topic}/topic-explanation.md
@@ -334,18 +335,69 @@ task(category="deep", run_in_background=false, timeout=600000, prompt="
334
335
  - Use the simplest possible test setup
335
336
 
336
337
  c) scaffold/ directory with starter files:
337
- - Minimal code structure to get started
338
- - Comments marking where to write code // TODO: or # TODO:
339
- - Import/require statements already in place
340
- - Can be empty scaffold if topic is conceptual
341
-
342
- d) solution-guide.md:
343
- - Complete reference solution (code)
344
- - Explanation of the solution approach
345
- - Why certain choices were made
346
- - Alternative approaches
347
- - Common mistakes and how to avoid them
348
- - Real-world connections
338
+
339
+ GOLDEN RULE: The user must be able to go from `cd scaffold/` to `running the test` in ONE command.
340
+ If the assignment isn't testing setup/environment skills, automate ALL of that.
341
+
342
+ - Include a setup script (`setup.sh` for Unix, `setup.ps1` for Windows) that:
343
+ * Creates virtual environment (Python: `python -m venv .venv`), or installs deps (Node: `npm install`)
344
+ * Installs required packages
345
+ * Prints "Environment ready! Run this command to start: ..."
346
+ - OR include a one-liner in the scaffold README: `python -m venv .venv && source .venv/bin/activate && pip install -r requirements.txt`
347
+ - Include `requirements.txt` / `package.json` with ALL needed deps pre-listed
348
+ - Minimal code structure only the files the user needs to touch
349
+ - Comments marking where to write code // TODO: or # TODO:
350
+ - Import/require statements already in place
351
+ - Cross-skill integration: if the user knows {related_skill}, structure the scaffold to use familiar patterns from it
352
+ - If the topic is NOT a programming topic (e.g., system design), provide templates or worksheets instead
353
+
354
+ ANNOYING THINGS TO NEVER DO:
355
+ - Do NOT make the user manually create a venv or install packages unless the assignment is specifically about that
356
+ - Do NOT leave unlisted imports — if a package is needed, it must be in requirements.txt / package.json
357
+ - Do NOT require the user to set up databases, API keys, or external services without providing clear instructions or a docker-compose.yml
358
+ - Do NOT leave configuration files empty or incomplete — provide working defaults
359
+ - Do NOT make the user hunt for the right Python/Node version — specify it in the scaffold or use `.nvmrc`/`.python-version`
360
+
361
+ d) solution-guide.md — CRITICAL: Must be researched, accurate, and complete.
362
+
363
+ BEFORE writing the solution:
364
+ 1. Use google_search / context7_query-docs to research the CORRECT approach for this specific problem.
365
+ 2. Verify your solution compiles/runs correctly — test it mentally or note any assumptions.
366
+ 3. Cross-reference with topic-explanation.md to ensure consistency.
367
+ 4. If the topic involves a library/framework, check official docs via context7 to confirm API accuracy.
368
+
369
+ The solution-guide.md must have this structure:
370
+
371
+ ## Solution Overview
372
+ - What approach was taken and why (1 paragraph)
373
+ - Key decisions made and the tradeoffs considered
374
+
375
+ ## Complete Solution
376
+ ```{language}
377
+ # The full, working solution code
378
+ # Each section commented with WHY, not just WHAT
379
+ ```
380
+
381
+ ## Step-by-Step Explanation
382
+ - Break the solution into logical steps
383
+ - For each step: what it does, why it's done this way, what would happen if you did it differently
384
+ - Reference the topic-explanation.md concepts being applied
385
+
386
+ ## Edge Cases Handled
387
+ - List edge cases the solution handles
388
+ - What would break if not handled
389
+
390
+ ## Alternative Approaches
391
+ - At least one alternative solution approach
392
+ - Why the main approach was chosen over alternatives
393
+
394
+ ## Common Mistakes
395
+ - 3-5 specific mistakes learners make on this type of problem
396
+ - How to identify and fix each one
397
+
398
+ ## Real-World Notes
399
+ - How this solution would differ in a production codebase
400
+ - Performance, security, or maintainability considerations
349
401
 
350
402
  STEP 5 — Create topic-progress.md at:
351
403
  {TOPICS_DIR}/{topic}/topic-progress.md
@@ -382,6 +434,8 @@ STEP 5 — Create topic-progress.md at:
382
434
  - Do NOT use any external packages that aren't standard library without noting it
383
435
  - Do NOT create assignments that are too easy (basic concept application) or too hard (leaps without foundation)
384
436
  - Do NOT leave TODOs in scaffold that require making unrelated architectural decisions
437
+ - **Do NOT write solutions without researching first** — use google_search or context7 to verify API syntax, library behavior, and best practices before writing solution-guide.md
438
+ - **Do NOT guess** — if you're unsure how a library function works, look it up via context7. Guesses lead to inaccurate solutions.
385
439
 
386
440
  6. CONTEXT:
387
441
  - Skill: {skill}
@@ -390,6 +444,7 @@ STEP 5 — Create topic-progress.md at:
390
444
  - User experience level: {from preferences}
391
445
  - User learning style: {from preferences}
392
446
  - Skill conventions (package manager, project structure, deps, testing setup): {from SkillConventions.md — read before generating scaffold}
447
+ - Cross-skill context (other skills user knows, so scaffold can use familiar patterns): {from cross-skill inventory}
393
448
  ")
394
449
  ```
395
450
 
@@ -399,9 +454,28 @@ After completion, verify:
399
454
  - Assignment 1 exists with all 4 files (question.md, test, scaffold, solution-guide.md)
400
455
  - Test script is syntactically valid (run a quick check)
401
456
 
402
- If anything is missing, fix via session continuation: `task(task_id="<session_id>", prompt="Fix: {missing element}")`
457
+ If anything is missing, fix via session continuation: `task(task_id="<session_id>", prompt="Fix: {missing element}")"
458
+
459
+ ## Phase 1.5: READINESS GATE — Teach Before Test
460
+
461
+ **The user MUST read the theory before touching assignments.** This is non-negotiable.
462
+
463
+ 1. Present the topic-explanation.md to the user:
464
+ > "Before we jump into coding, let's cover the concepts you need.
465
+ >
466
+ > 📖 **{SKILL_DIR}/topics/{topic}/topic-explanation.md**
467
+ >
468
+ > This covers: TL;DR → Core Concepts → Examples → Pitfalls → Best Practices
469
+ > It should take about 5-10 minutes to read.
470
+ >
471
+ > Let me know when you've finished reading, or ask me questions about anything that's unclear."
472
+
473
+ 2. **Wait for the user to confirm they've read it.** Do NOT skip this step.
474
+ - If they ask questions → answer them (using diagnostic task pattern from Phase 3 if needed)
475
+ - If they say "I already know this" → ask 2 quick concept-checking questions to verify. If they pass, skip. If they fail, tell them to read it.
476
+ - If they say "ready" → proceed.
403
477
 
404
- **Then proceed to Phase 2.**
478
+ 3. **Only after confirmation** → proceed to Phase 2.
405
479
 
406
480
  ## Phase 2: ASSIGNMENT PRESENTATION
407
481
 
@@ -650,30 +724,73 @@ task(category="unspecified-high", run_in_background=false, timeout=300000, promp
650
724
  - Self-contained and runnable
651
725
 
652
726
  c) scaffold/ — Starter code:
653
- - Minimal boilerplate
654
- - TODO markers for user implementation
655
- - All necessary imports/includes set up
656
727
 
657
- d) solution-guide.md:
658
- - Complete solution
659
- - Explanation of approach
660
- - Alternative solutions' discussion
661
- - Real-world production considerations
662
- - Common mistakes
663
-
664
- 5. MUST NOT DO:
728
+ GOLDEN RULE: The user must go from `cd scaffold/` to running tests in ONE command.
729
+
730
+ - Include setup script (`setup.sh` + `setup.ps1`) that auto-creates env + installs deps
731
+ - OR one-liner setup instructions in a README
732
+ - `requirements.txt` / `package.json` with ALL deps pre-listed
733
+ - Minimal boilerplate — only what the user needs to touch
734
+ - TODO markers for user implementation
735
+ - All necessary imports/includes set up
736
+ - If the user knows {related_skill} from SkillConventions.md, use familiar patterns
737
+ - Auto-setup: `python -m venv .venv && source .venv/bin/activate && pip install -r requirements.txt`
738
+ - NEVER make the user manually install packages (unless assignment tests that skill)
739
+
740
+ d) solution-guide.md — CRITICAL: Must be researched and accurate.
741
+
742
+ BEFORE writing:
743
+ 1. Use google_search / context7_query-docs to research the correct approach.
744
+ 2. Verify the solution works — test mentally or note assumptions.
745
+ 3. Cross-reference with previous solution-guide.md files to maintain consistency.
746
+
747
+ Structure:
748
+
749
+ ## Solution Overview
750
+ - Approach taken, key decisions, tradeoffs
751
+
752
+ ## Complete Solution
753
+ ```{language}
754
+ # Full working code with WHY comments, not just WHAT
755
+ ```
756
+
757
+ ## Step-by-Step Explanation
758
+ - Logical steps with reasoning for each
759
+ - What changes at this difficulty level vs previous assignments
760
+
761
+ ## Edge Cases Handled
762
+ - What was considered and why
763
+
764
+ ## Alternative Approaches
765
+ - Other valid solutions and when to use them
766
+
767
+ ## Common Mistakes
768
+ - Specific errors learners make at this difficulty level
769
+
770
+ ## Production Notes
771
+ - How this scales, performs, or differs in real codebases
772
+
773
+ 5. MUST DO (research before generation):
774
+ - **Research FIRST** — Use context7 or google_search to verify your solution approach before writing
775
+ - **Cross-reference** with topic-explanation.md and prior solution-guide.md files
776
+ - **Verify accuracy** — If you're unsure about API syntax or behavior, look it up. Do not guess.
777
+
778
+ 6. MUST NOT DO:
665
779
  - Do NOT make the next assignment a repetition of the previous one
666
780
  - Do NOT skip difficulty progression
781
+ - Do NOT write solutions without researching first
667
782
  - Do NOT use external non-standard dependencies without noting it in scaffold setup
783
+ - Do NOT guess API signatures — use context7 to verify
668
784
 
669
785
  6. CONTEXT:
670
786
  - Skill: {skill}
671
787
  - Topic: {topic}
672
- - Assignment number: {n}/3
673
- - Difficulty: {basic/intermediate/real-world}
788
+ - Assignment number: {n}
789
+ - Difficulty: {current difficulty level}
674
790
  - Previous assignment concepts: {summary}
675
791
  - User performance on previous assignment: {observations}
676
792
  - Skill conventions (package manager, project structure, deps, testing setup): {from SkillConventions.md — MUST follow these when generating scaffold}
793
+ - Cross-skill context (other skills the user knows): {from cross-skill inventory — integrate these patterns into the scaffold if relevant}
677
794
  ")
678
795
  ```
679
796
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "omnilearn-workflow",
3
- "version": "1.0.8",
3
+ "version": "1.0.10",
4
4
  "description": "OmniLearn — AI-powered adaptive learning workflow for OpenCode. Multi-agent orchestration that creates personalized roadmaps, hands-on assignments, and tracks progress across any skill.",
5
5
  "keywords": [
6
6
  "opencode",