Repository navigation
Description
Rationale
6 verbs referenced by Virgin.root scripts have NO kernel implementation in the headless build. Their scripts "fail to compile" with "Error in kernel call. The verb X does not exist, or isn't set up to handle messages" — NOT stored corruption (control: string.upper has byte-identical kernel(...) shape and compiles). These were misclassified as broken scripts in #879. Disposition needed per verb: implement headless, or document as intentionally absent.
Current State
Missing kernel implementations (headless build, verified 2026-08-10):
- quickTime.isPlaying — no kernel implementation
- quickTime.open — no kernel implementation
- quickTime.play — no kernel implementation
- quickTime.stop — no kernel implementation
- window.quickTime — no kernel implementation
- string.nthChar — no kernel implementation
Error signature:
- "Error in kernel call. The verb X does not exist, or isn't set up to handle messages"
- NOT stored corruption (control test: string.upper has byte-identical kernel(...) call shape and compiles successfully)
Impact:
- Scripts referencing these verbs fail at compile time in headless build
- Misclassified as "genuinely broken scripts" in 12 Virgin.root scripts genuinely broken in DB (fail to compile in place); webBrowser.openURL + cleanRoot block #855 #879 (should be "missing headless implementations")
- Blocks scripts that call these verbs (e.g., any script using string.nthChar or quickTime.*)
Desired Outcome
For each missing verb, decide:
- Implement headless: Add kernel implementation (especially string.nthChar, which is presumably trivial)
- Document absent: quickTime verbs on headless don't make sense; document as intentionally GUI-only
Recommendation
string.nthChar (HIGH priority):
- Presumably straightforward string utility (return Nth character)
- Used in active scripts
- Recommendation: implement in headless build
quickTime. (LOW priority)*:
- GUI/multimedia operations (play, stop, etc.)
- Questionable value on headless server
- Recommendation: document as GUI-only; no headless implementation needed
- Alternative: stub implementations that return errors or no-op
window.quickTime (LOW priority)**:
- Related to quickTime operations
- Likely GUI-only
- Recommendation: document as GUI-only
Exit Criteria
- For each verb: decision made (implement or document)
- string.nthChar implemented in headless build (if decision is "implement")
- quickTime verbs documented as GUI-only (if decision is "document")
- Scripts referencing these verbs compile successfully (after decision applied)
- 12 Virgin.root scripts genuinely broken in DB (fail to compile in place); webBrowser.openURL + cleanRoot block #855 #879 corrected: reclassify these as "missing headless implementations" not "genuinely broken"
Related Context
- Found by: langscan comment-strip scanner ignored single-quoted char constants: 0xC7 inside 'x' literals corrupts scripts cumulatively on install (was misattributed to newScriptObject size/reinstall) #866 investigation, 2026-08-10
- Related issues: 12 Virgin.root scripts genuinely broken in DB (fail to compile in place); webBrowser.openURL + cleanRoot block #855 #879 (misclassified as broken scripts), webBrowser.openUrl fails to compile headless; blocks first-run finishInstall flow #865 (webBrowser issues)
- Code: Headless kernel implementation, Virgin.root scripts referencing quickTime and string.nthChar
- Build: Headless vs GUI build configurations
- Verification: Control test shows string.upper compiles (kernel implementation present)
Misclassification Note
#879 incorrectly classified these as "genuinely broken scripts" (stored corruption). They are actually "missing kernel implementations in headless build" — a build/configuration issue, not a data integrity issue. The distinction matters: stored corruption requires data repair; missing implementations require build decisions.
Activity
jsavin commentedon Aug 11, 2026
Provenance Confirmation (#879 investigation complete):
The 6 scripts (quickTime.*, string.nthChar) are byte-intact ORIGINAL kernel glue:
Gap is purely HEADLESS VERB REGISTRATION: These verbs work on Mac (UserLand shipped them); the issue is they're unregistered in the headless build.
Correction to #879: These 6 are NOT "broken scripts" — they're correctly-authored kernel stubs waiting for verb registration in the headless configuration.
Action: Reclassify #879 and resolve this issue as verb-registration work (possibly defer to post-#855 or mark as known-limitation for headless build).
jsavin commentedon Aug 11, 2026
Fix Likely CHEAP — Registration Gap, Not Missing Implementation (#882 Headless Verbs):
Evidence from byte analysis:
Root cause: NAME-TABLE/DISPATCH REGISTRATION gap in headless build, NOT missing implementation
Recommendation: Scope as verb-table entry (probably headless verb-table registration, no new code needed)
All six stubs byte-identical to pristine v6 ancestor (2025-08-09) — no corruption, no rewrites needed. Just register the verbs in the headless build configuration.