module system / file layout

✓ 29 passing ○ 1 planned

Lessons

1 ✓ Passing
001 kjs extension import
2 ✓ Passing
002 k pure contract
3 ✓ Passing
003 directory mixed extensions
4 ✓ Passing
004 index kjs directory source
5 ✓ Passing
005 companion k and kz
6 ○ Planned
006 reject private event in contract — Rework as a cross-module private-event VISIBILITY test. KORU111 Rule 1 (private event in .k rejected) was removed 2026-07-17 — private events are legal in a .k full program. The surviving intent here is that a PRIVATE event must not be callable across a module boundary; that needs cross-module visibility enforcement (see 110_002 TODO) before this can be re-pinned.
7 ✓ Passing
007 reject pub event in impl when k exists
8 ✓ Passing
008 pub event in kz alone is fine
9 ✓ Passing
009 entry merges companions
10 ✓ Passing
010 cross target host line routing
11 ✓ Passing
011 vaxis pump realistic
12 ✓ Passing
012 js dispatch binding shadow
13 ✓ Passing
013 js continuation branch dispatch
14 ✓ Passing
014 for template cross target
15 ✓ Passing
015 if template cross target
16 ✓ Passing
016 private event in k allowed
17 ✓ Passing
017 lib mode exports survive and are importable
18 ✓ Passing
018 lib mode text crosses as pointer and length
19 ✓ Passing
019 lib mode numeric buffers cross as pointer and length
20 ✓ Passing
020 part basic join
21 ✓ Passing
021 part tilde spelling
22 ✓ Passing
022 part host facet routing
23 ✓ Passing
023 part missing errors
24 ✓ Passing
024 part duplicate decl errors
25 ✓ Passing
025 part tag underscore rejected
26 ✓ Passing
026 part dir collision
27 ✓ Passing
027 part error location preserved
28 ✓ Passing
028 part nested refused
29 ✓ Passing
029 dup tor across facets refused
30 ✓ Passing
030 submodule canonical facet