Maailmantutkija

Kasvatuskirja uteliaalle mielelle

Ready to test? Here’s how to get started immediately.


1. Load a Test Level (30 seconds!)

Option A: Use the Test Level Loader (EASIEST! ⭐)

This is the fastest and easiest way:

  1. Open load-test-levels.html in your browser
  2. Click “Load & Open Editor” button for the test you want
  3. Done! The editor will open with the level loaded

Alternative: Click individual “Load” buttons, then open editor.html and use “Load Level” button.

Option B: Manual Import via Console

  1. Open editor.html
  2. Open browser DevTools (F12)
  3. Copy contents of levels/comprehensive-test-level.json
  4. In console, paste:
    const level = [PASTE JSON HERE];
    localStorage.setItem('bayesianFactoryLevels', JSON.stringify([level]));
    location.reload();
    
  5. Level should appear in level list

Option C: Recreate in Editor (Educational but slow)

Follow the layout described in IMPLEMENTATION_SUMMARY.md and place components manually.


2. Run the Test (1 minute)

  1. Click “Test Level” or “Play” button in editor
  2. Watch balls spawn and move through components
  3. Observe the behavior

What to watch for:


3. Check Console (1 minute)

Open browser DevTools (F12) → Console tab

Look for:

Expected logs:

Duplicator 3 outputting ball ... to right
Shuffler 7 buffered ball ... (3/5)
Shuffler 7 buffer full, starting output
Filter 11 outputting ball ... to left

Unexpected (bad):

Uncaught TypeError: ...
Missing sackId for ball ...
Ball stuck at component ...

4. Quick Visual Checks (2 minutes)

Duplicator (Component ID 3)

Shuffler (Component ID 7)

Filter (Component ID 11)

Observations (IDs 5, 12, 19)


5. Test Rotation (2 minutes)

  1. In editor, select a component
  2. Press R key
  3. Component should rotate 90° clockwise
  4. Check that connections update automatically

Components to test:

What to verify:


6. Test Editor UI (3 minutes)

Duplicator Properties

  1. Select duplicator component
  2. Look for properties panel (usually on right side)
  3. Should see:
    • “Number of Copies” input
    • “Edit Output Pattern” button
    • Pattern display showing “3 copies → right”, etc.
  4. Click “Edit Output Pattern”
  5. Try changing pattern JSON
  6. Verify validation catches bad input

Shuffler Properties

  1. Select shuffler component
  2. Should see:
    • “Min Buffer Size” input
    • “Edit Output Pattern” button
    • Pattern display showing outputs and retention
  3. Click “Edit Output Pattern”
  4. Try adding retention: [{side: 'right', count: 2}, {retain: true, count: 3}]
  5. Should offer to update minBufferSize to 5

7. Report Issues (As you find them)

Open TESTING_CHECKLIST.md and document issues in the Issues Log section at the bottom:

Issue #1: Duplicator renders incorrectly after rotation
Severity: Medium
Component: Duplicator
Reproduction:
1. Place duplicator
2. Rotate with R key
3. Visual rendering shows arrows in wrong positions
Expected: Arrows should rotate with component
Actual: Arrows stay in original positions
Console Output: None

Common Issues & Solutions

“Can’t see test level in level list”

“Balls aren’t spawning”

“Components look weird/overlapping”

“Nothing happens when I click Test Level”

“Inference/Betting interface not showing”


Quick Test Checklist (15 minutes total)

Use this for rapid initial validation:

If all 9 checks pass: ✅ Basic functionality working, proceed to full testing

If any checks fail: 🔴 Document issue and investigate before full testing


Next Steps After Quick Test

If Everything Works:

  1. Proceed to full testing with TESTING_CHECKLIST.md
  2. Test all 3 test levels systematically
  3. Test edge cases and complex scenarios
  4. Provide comprehensive feedback

If Issues Found:

  1. Document issues in TESTING_CHECKLIST.md Issues Log
  2. Note severity (Critical/High/Medium/Low)
  3. Continue testing other features if possible
  4. Report blockers immediately

When Testing Complete:

  1. Review all checkboxes in TESTING_CHECKLIST.md
  2. Compile list of issues found
  3. Provide feedback on:
    • Performance (smooth? laggy?)
    • Visual polish (clear? confusing?)
    • UX (intuitive? frustrating?)
    • Missing features or bugs
  4. Developer will address issues and iterate

Contact / Feedback

Ready? Load comprehensive-test-level.json and start testing! 🚀


Estimated Time:

Priority: Start with quick test to validate basic functionality, then proceed to full testing if no blockers found.