LearnNewsExamplesServices
Frontmatter
id15495
titleOffTheMainThread.md L132: last "Neo.mjs Framework" self-description
stateClosed
labels
bugdocumentationai
assigneesneo-fable-clio
createdAtJul 18, 2026, 7:53 PM
updatedAtJul 18, 2026, 8:33 PM
githubUrlhttps://github.com/neomjs/neo/issues/15495
authorneo-fable-clio
commentsCount0
parentIssuenull
subIssues[]
subIssuesCompleted0
subIssuesTotal0
contentTrust
projected
quarantined0
signals[]
blockedBy[]
blocking[]
closedAtJul 18, 2026, 8:33 PM

OffTheMainThread.md L132: last "Neo.mjs Framework" self-description

Closed Backlog/active-chunk-7 bugdocumentationai
neo-fable-clio
neo-fable-clio commented on Jul 18, 2026, 7:53 PM

Context

Binding-vocabulary rule (2026-07-04 broadcast, @neo-fable): neo is NEVER "a framework." Sanctioned self-descriptions: "application engine" / "Agent OS". #14741 fixed the same violation class in ROADMAP.md ("the framework" → "the tech", PR #14742). An operator front-door review pass (2026-07-18) surfaced one more residual — the last branded, capital-F form on public learn/ substrate.

The Problem

learn/benefits/body/OffTheMainThread.md:132, in the Application Worker actor list:

  • Most parts of the Neo.mjs Framework live here

V-B-A: case-sensitive grep -rn "Neo.mjs Framework" learn/ returns exactly this one hit; grep -rn "Neo Framework" learn/ returns zero. This is the final branded self-description in learn/. The file is front-door benefits substrate (portal-indexed, crawler-visible) — the word "Framework" attached to the product name is precisely the misclassification vector the binding rule exists to close.

The Architectural Reality

The doc walks the worker topology (Main / App / VDom actors). The accurate claim at L132 is that most of the engine's source (src/) executes inside the App Worker — components, state, the class system. The sibling doc learn/benefits/body/ApplicationEngine.md already carries the sanctioned category term for exactly this surface, so the reword aligns the two benefits pages.

The Fix

One-line reword at learn/benefits/body/OffTheMainThread.md:132:

* Most parts of the Neo.mjs application engine live here

Acceptance Criteria

  • L132 self-describes Neo as "application engine" — no "Framework".
  • grep -rn "Neo.mjs Framework" learn/ → zero hits.
  • Contrast/generic usages untouched — including OffTheMainThread.md:64 ("An UI Framework or Library itself…"), a generic category statement about off-thread workloads, which stays.

Out of Scope

Lowercase self-referential residuals ("the framework" = Neo) across live learn/ docs — the verification sweep falsified "last self-description" in the broad reading; those are enumerated with receipts in #15494 (filed alongside this one). learn/blog/** historical posts likewise (see that ticket's Out of Scope).

Decision Record impact

aligned-with ADR 0018 (identity source-of-truth model — framing surface).

Related

#14741 · PR #14742 · #15494 · ADR 0018

Creation notes

Live latest-open sweep: latest 20 open issues checked immediately before creation; no equivalent found (closest: #14753, agent-identity drift — different domain). A2A in-flight claim sweep: N/A — Agent OS MCP offline in this operator-directed solo worktree session (gap declared per ticket-create §1a-ii; herd risk assessed near-zero). Memory Core offline → no Origin Session ID; provenance: Claude Code worktree session, 2026-07-18.

Retrieval Hint: "Neo.mjs Framework branded self-description OffTheMainThread binding vocabulary"