nx_office_census.nx source
↩ module page · 262 lines · 29391 B
1// nx_office_census.nx -- the MEASURED, LIAR-KILLED scoreboard for the NISHI OFFICE SUITE vs the STATE OF THE ART
2// (2025/2026 conferences + industry leaders: Microsoft 365 Copilot, Google Workspace Gemini, LibreOffice 25.x).
3// Operator 2026-07-08: "do we have a SOTA office suite with all the features ... as of conferences from 25/26 and
4// the industry leaders?" -- this organ answers HONESTLY, never self-scored: each cell is PROVEN by reading the
5// REAL organ source on disk. PRESENT requires the implementing symbol to EXIST; ABSENT (the gap) requires it to
6// NOT exist ANYWHERE. EXCEEDS = a capability NO leader (incl. LibreOffice) has, cited. The SOTA feature BAR is
7// grounded in the web-fetched corpus knowledge/library/office-sota-bar-2026-07-08.txt (real 2025/2026 sources).
8// Coverage=(EXCEEDS+PRESENT)/total is a FEATURE-COVERAGE fraction, NOT a "beat everyone" score. A SOTA suite has
9// ~34 major feature areas; scoring LOW is the HONEST outcome for a young sovereign stack -- the point is to NAME
10// the gaps, not flatter. Liar-kill asserts the marquee gaps are REAL + coverage stays honest-low.
11// census-subject: product-surface (the suite has a public UI at nishifamily.com/office -- U-axes mandatory)
12// expect_exit: 0 license_tier: ORIGINAL
13import "nx_syscalls.nx"
14import "nx_itoa_lib.nx" // shared MSB-first emitter (zero-alloc)
15const K_MAGIC_262144: i64 = 262144
16
17func lc_w(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } sys_write(1, s, n); return 0 }
18// MIGRATED to the shared emitter (debt 1785563586). The old body mmapped a scratch buffer
19// per call and never freed it. At PAGE granularity that is 4096B leaked PER CALL -- the
20// defect that took 28.5GB of a 36GB host in nx_ts_lumadiff (2MB input, ~3.66M calls).
21// nxi_* is MSB-first, allocates NOTHING, and emits identical bytes including the sign.
22func lc_n(v: i64) -> i64 { nxi_out(v); return 0 }
23func lc_read(path: *u8, buf: *u8, cap: i64) -> i64 {
24 let fd: i64 = sys_openat_rd(path); if fd < 0 { return 0 - 1 }
25 var tot: i64 = 0
26 while tot < cap { let r: i64 = sys_read(fd, (buf as i64 + tot) as *u8, cap - tot); if r <= 0 { break } tot = tot + r }
27 sys_close(fd); return tot
28}
29func lc_exists(path: *u8) -> i64 { let fd: i64 = sys_openat_rd(path); if fd < 0 { return 0 } sys_close(fd); return 1 }
30func lc_has(buf: *u8, n: i64, needle: *u8) -> i64 {
31 var i: i64 = 0
32 while i < n { var k: i64 = 0; var hit: i64 = 1
33 while needle[k] != (0 as u8) { if i + k >= n { hit = 0; k = 0 - 1; break } if buf[i+k] != needle[k] { hit = 0; break } k = k + 1 }
34 if hit == 1 { if k > 0 { return 1 } } i = i + 1 }
35 return 0
36}
37func lc_file_has(path: *u8, needle: *u8, buf: *u8, cap: i64) -> i64 {
38 let n: i64 = lc_read(path, buf, cap); if n <= 0 { return 0 }
39 return lc_has(buf, n, needle)
40}
41func lc_cell(cls: *u8, id: *u8, txt: *u8) -> i64 { lc_w(" ["); lc_w(cls); lc_w("] "); lc_w(id); lc_w(" "); lc_w(txt); lc_w("\n"); return 0 }
42
43func main() -> i64 {
44 lc_w("=== NX-OFFICE-CENSUS -- the Nishi office suite, MEASURED vs SOTA (Microsoft 365 Copilot / Google Workspace Gemini / LibreOffice 25.x, 2025/2026) ===\n" as *u8)
45 let cap: i64 = K_MAGIC_262144
46 let buf: *u8 = sys_mmap(cap)
47
48 let DOCX: *u8 = "runtime/_hdl_build/nx_docx.nx"
49 let ODT: *u8 = "runtime/_hdl_build/nx_odt.nx"
50 let XLSX: *u8 = "runtime/_hdl_build/nx_xlsx.nx"
51 let MERGE: *u8 = "runtime/_hdl_build/nx_mailmerge.nx"
52 let VDOC: *u8 = "runtime/_hdl_build/nx_vizsla_doc.nx"
53 let DGEN: *u8 = "runtime/_hdl_build/nx_vizsla_docgen.nx"
54 let EST: *u8 = "runtime/_hdl_build/nx_estate_inventory.nx"
55 let PPTX: *u8 = "runtime/_hdl_build/nx_pptx.nx"
56 let IMPR: *u8 = "runtime/_hdl_build/nx_impress.nx"
57 let COEDIT: *u8 = "runtime/_hdl_build/nx_coedit.nx"
58 let AISLIDE: *u8 = "runtime/_hdl_build/nx_ai_slides.nx"
59 let CORPUS: *u8 = "knowledge/library/office-sota-bar-2026-07-08.txt"
60 let SERVE: *u8 = "runtime/nx_office_serve.nx"
61 let APPJS: *u8 = "office_app.js"
62
63 // ---- PRESENT evidence (each proven by a real implementing symbol) ----
64 let e_docx: i64 = lc_file_has(DOCX as *u8, "docx_write" as *u8, buf, cap)
65 let e_odt: i64 = lc_exists(ODT as *u8) & lc_file_has(ODT as *u8, "text:p" as *u8, buf, cap)
66 let e_merge: i64 = lc_exists(MERGE as *u8) & lc_file_has(MERGE as *u8, "{{" as *u8, buf, cap)
67 let e_xlsx: i64 = lc_file_has(XLSX as *u8, "fromtsv" as *u8, buf, cap)
68 let e_celltype: i64 = lc_file_has(XLSX as *u8, "inlineStr" as *u8, buf, cap)
69 let e_docmgmt: i64 = lc_file_has(VDOC as *u8, "VIZSLA-DOC-HISTORY" as *u8, buf, cap)
70 let e_docgen: i64 = lc_file_has(DGEN as *u8, "VIZSLA-DOCGEN" as *u8, buf, cap)
71 let e_estate: i64 = lc_exists(EST as *u8) & lc_file_has(EST as *u8, "history" as *u8, buf, cap)
72 let e_sov: i64 = (1 - lc_file_has(DOCX as *u8, "nx_socket" as *u8, buf, cap)) & (1 - lc_file_has(DOCX as *u8, "nx_tls" as *u8, buf, cap))
73 let e_open: i64 = lc_exists(DOCX as *u8) & lc_exists(ODT as *u8)
74 // ---- EXCEEDS evidence (a capability even LibreOffice lacks) ----
75 let x_ver: i64 = lc_file_has(VDOC as *u8, "VIZSLA-DOC-VERSION" as *u8, buf, cap)
76
77 // ---- gap evidence: 1 = the feature is genuinely ABSENT (proven by absence of the emit/impl symbol) ----
78 let gap_fmt: i64 = 1 - lc_file_has(DOCX as *u8, "w:rPr" as *u8, buf, cap) // run-properties = formatting
79 let gap_tbl: i64 = 1 - lc_file_has(DOCX as *u8, "w:tblPr" as *u8, buf, cap) // table properties (emit-only)
80 let gap_img: i64 = 1 - lc_file_has(DOCX as *u8, "w:drawing" as *u8, buf, cap)
81 let gap_layout: i64 = 1 - lc_file_has(DOCX as *u8, "sectPr" as *u8, buf, cap) // sections/headers/footers
82 let gap_track: i64 = 1 - lc_file_has(DOCX as *u8, "w:ins" as *u8, buf, cap) // tracked insertions
83 let gap_comment: i64 = 1 - lc_file_has(DOCX as *u8, "commentReference" as *u8, buf, cap)
84 let gap_ref: i64 = 1 - lc_file_has(DOCX as *u8, "footnoteReference" as *u8, buf, cap)
85 let gap_spell: i64 = 1 - lc_file_has(DOCX as *u8, "spellcheck" as *u8, buf, cap)
86 let gap_formula: i64 = 1 - lc_file_has(XLSX as *u8, "<f>" as *u8, buf, cap) // SpreadsheetML formula cell
87 let gap_chart: i64 = 1 - lc_file_has(XLSX as *u8, "xl_chart_html" as *u8, buf, cap) // TIGHTENED 07-09: real render fn, not the word "chart"
88 let gap_pivot: i64 = 1 - lc_file_has(XLSX as *u8, "xl_pivot" as *u8, buf, cap) // TIGHTENED 07-09: real group-by fn, not the word
89 let gap_cond: i64 = 1 - lc_file_has(XLSX as *u8, "conditionalFormatting" as *u8, buf, cap)
90 let gap_macro: i64 = 1 - lc_file_has(XLSX as *u8, "macro" as *u8, buf, cap)
91 let gap_pptx: i64 = (1 - lc_exists(PPTX as *u8)) & (1 - lc_exists(IMPR as *u8))
92 // TIGHTENED 07-09 (no-wave): the CRDT KERNEL alone (nx_coedit merge engine) is NOT "real-time co-editing" --
93 // the axis flips only when the LIVE SYNC half exists. Needle = the function DEFINITION ("func cd_live_sync"),
94 // not the bare name: a comment MENTIONING the symbol flipped this once and the liar-kill went RED -- proof
95 // the defenses work, and why presence-needles must match definitions.
96 let gap_rt: i64 = 1 - lc_file_has(COEDIT as *u8, "func cd_live_sync" as *u8, buf, cap)
97 let gap_cshare: i64 = 1 - lc_file_has(VDOC as *u8, "acl" as *u8, buf, cap) // no ACL wired into docs
98 let gap_ai1: i64 = (1 - lc_file_has(DOCX as *u8, "llm" as *u8, buf, cap)) & (1 - lc_file_has(DGEN as *u8, "llm" as *u8, buf, cap))
99 let gap_ai2: i64 = 1 - lc_file_has(XLSX as *u8, "llm" as *u8, buf, cap)
100 let gap_ai3: i64 = 1 - lc_exists(AISLIDE as *u8)
101 let gap_ai4: i64 = 1 - lc_file_has(DGEN as *u8, "agent_mode" as *u8, buf, cap)
102 let gap_sync: i64 = 1 - lc_file_has(VDOC as *u8, "oauth" as *u8, buf, cap)
103
104 let corpus: i64 = lc_exists(CORPUS as *u8)
105 lc_w(" -- SOTA bar grounded in corpus="); lc_n(corpus); lc_w(" (knowledge/library/office-sota-bar-2026-07-08.txt, web-fetched 2025/2026 sources)\n" as *u8)
106
107 var present: i64 = 0; var exceeds: i64 = 0; var absent: i64 = 0
108
109 lc_w(" --- WORD PROCESSOR (vs Word / Docs / Writer) ---\n" as *u8)
110 if e_docx == 1 { lc_cell("PRESENT" as *u8, "OF-W1 " as *u8, ".docx (OOXML) read/write -- nx_docx (minimal OPC package, real CRC-32, Word-openable)" as *u8); present = present + 1 } else { lc_cell("ABSENT " as *u8, "OF-W1 " as *u8, ".docx read/write" as *u8); absent = absent + 1 }
111 if e_odt == 1 { lc_cell("PRESENT" as *u8, "OF-W2 " as *u8, ".odt (ODF) read/write -- nx_odt (mimetype-first ODF package)" as *u8); present = present + 1 } else { lc_cell("ABSENT " as *u8, "OF-W2 " as *u8, ".odt read/write" as *u8); absent = absent + 1 }
112 if gap_fmt == 1 { lc_cell("ABSENT " as *u8, "OF-W3 " as *u8, "rich text FORMATTING (styles/bold/italic/fonts/colors) -- our .docx is plain paragraphs, no run-properties. Word/Docs/Writer ALL have it" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-W3 " as *u8, "rich text formatting" as *u8); present = present + 1 }
113 if gap_tbl == 1 { lc_cell("ABSENT " as *u8, "OF-W4 " as *u8, "TABLES -- not emitted (reader excludes them). A basic word-processor feature we lack" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-W4 " as *u8, "tables" as *u8); present = present + 1 }
114 if gap_img == 1 { lc_cell("ABSENT " as *u8, "OF-W5 " as *u8, "IMAGES / media embed -- no <w:drawing>" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-W5 " as *u8, "images" as *u8); present = present + 1 }
115 if gap_layout == 1 { lc_cell("ABSENT " as *u8, "OF-W6 " as *u8, "PAGE LAYOUT (headers/footers/sections/columns) -- no sectPr" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-W6 " as *u8, "page layout" as *u8); present = present + 1 }
116 if gap_track == 1 { lc_cell("ABSENT " as *u8, "OF-W7 " as *u8, "TRACK CHANGES / revisions -- no <w:ins>/<w:del> (NB: we DO have doc-level tamper-evident versioning, see OF-C4 -- different thing)" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-W7 " as *u8, "track changes" as *u8); present = present + 1 }
117 if gap_comment == 1 { lc_cell("ABSENT " as *u8, "OF-W8 " as *u8, "COMMENTS / annotations -- no commentReference" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-W8 " as *u8, "comments" as *u8); present = present + 1 }
118 if gap_ref == 1 { lc_cell("ABSENT " as *u8, "OF-W9 " as *u8, "TOC / footnotes / citations -- no footnoteReference" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-W9 " as *u8, "TOC/footnotes" as *u8); present = present + 1 }
119 if gap_spell == 1 { lc_cell("ABSENT " as *u8, "OF-W10" as *u8, "SPELL / grammar check -- no organ" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-W10" as *u8, "spell/grammar" as *u8); present = present + 1 }
120 if e_merge == 1 { lc_cell("PRESENT" as *u8, "OF-W11" as *u8, "MAIL MERGE -- nx_mailmerge ({{field}} template + data -> per-record .docx)" as *u8); present = present + 1 } else { lc_cell("ABSENT " as *u8, "OF-W11" as *u8, "mail merge" as *u8); absent = absent + 1 }
121
122 lc_w(" --- SPREADSHEET (vs Excel / Sheets / Calc) ---\n" as *u8)
123 if e_xlsx == 1 { lc_cell("PRESENT" as *u8, "OF-S1 " as *u8, ".xlsx read/write -- nx_xlsx (TSV grid -> valid SpreadsheetML, Excel-openable)" as *u8); present = present + 1 } else { lc_cell("ABSENT " as *u8, "OF-S1 " as *u8, ".xlsx read/write" as *u8); absent = absent + 1 }
124 if e_celltype == 1 { lc_cell("PRESENT" as *u8, "OF-S2 " as *u8, "cell TYPING (numeric <v> vs inlineStr text)" as *u8); present = present + 1 } else { lc_cell("ABSENT " as *u8, "OF-S2 " as *u8, "cell typing" as *u8); absent = absent + 1 }
125 if gap_formula == 1 { lc_cell("ABSENT " as *u8, "OF-S3 " as *u8, "FORMULAS / functions (SOTA=400+) -- no <f> formula cells. THE core spreadsheet feature; we store values only" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-S3 " as *u8, "formulas" as *u8); present = present + 1 }
126 if gap_chart == 1 { lc_cell("ABSENT " as *u8, "OF-S4 " as *u8, "CHARTS -- none" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-S4 " as *u8, "charts v1: NATIVE bar-chart render from sheet data incl computed formulas (in-FILE DrawingML c:chart = named follow-up)" as *u8); present = present + 1 }
127 if gap_pivot == 1 { lc_cell("ABSENT " as *u8, "OF-S5 " as *u8, "PIVOT TABLES -- none" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-S5 " as *u8, "pivot v1: NATIVE group-by SUM/COUNT/AVG+TOTAL over resolved sheet + pivothtml w/ chart (in-FILE pivotTable parts + drag-drop UI = named follow-ups)" as *u8); present = present + 1 }
128 if gap_cond == 1 { lc_cell("ABSENT " as *u8, "OF-S6 " as *u8, "conditional formatting / data validation -- none" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-S6 " as *u8, "conditional formatting" as *u8); present = present + 1 }
129 if gap_macro == 1 { lc_cell("ABSENT " as *u8, "OF-S7 " as *u8, "MACROS / scripting -- none" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-S7 " as *u8, "macros" as *u8); present = present + 1 }
130
131 lc_w(" --- PRESENTATION (vs PowerPoint / Slides / Impress) ---\n" as *u8)
132 if gap_pptx == 1 { lc_cell("ABSENT " as *u8, "OF-P1 " as *u8, "PRESENTATION app (.pptx/.odp author) -- NO organ exists. A suite without slides is not a full office suite" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-P1 " as *u8, "presentations" as *u8); present = present + 1 }
133 if gap_pptx == 1 { lc_cell("ABSENT " as *u8, "OF-P2 " as *u8, "slide RENDER / export -- none (no presentation engine)" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-P2 " as *u8, "slide render" as *u8); present = present + 1 }
134
135 lc_w(" --- COLLABORATION (the DEFINING 2020s feature; favors Workspace / M365) ---\n" as *u8)
136 if gap_rt == 1 { lc_cell("ABSENT " as *u8, "OF-C1 " as *u8, "REAL-TIME co-editing (multi-editor OT/CRDT) -- none. The single biggest gap vs the cloud leaders" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-C1 " as *u8, "real-time co-editing" as *u8); present = present + 1 }
137 if gap_cshare == 1 { lc_cell("ABSENT " as *u8, "OF-C2 " as *u8, "shared comments / @mentions / doc sharing+permissions -- not wired into docs (nx_vault ACL primitive exists but unwired)" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-C2 " as *u8, "sharing/comments" as *u8); present = present + 1 }
138 if x_ver == 1 { lc_cell("EXCEEDS" as *u8, "OF-C3 " as *u8, "VERSION HISTORY -- tamper-evident, content-addressed, ADDITIVE never-lose (old versions NEVER destroyed) -- NO mainstream suite incl LibreOffice has content-addressed tamper-evident history (cloud version history is mutable/deletable). nx_vizsla_doc + docgen" as *u8); exceeds = exceeds + 1 } else { lc_cell("ABSENT " as *u8, "OF-C3 " as *u8, "version history" as *u8); absent = absent + 1 }
139
140 lc_w(" --- IN-APP AI (the 2025/2026 HEADLINE differentiator: Copilot Agent Mode GA / Gemini) ---\n" as *u8)
141 if gap_ai1 == 1 { lc_cell("ABSENT " as *u8, "OF-A1 " as *u8, "in-doc AI DRAFT/REWRITE/SUMMARIZE (Copilot in Word, Gemini in Docs) -- none; bottlenecks on the LLM gap (trained-no-float-model)" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-A1 " as *u8, "in-doc AI" as *u8); present = present + 1 }
142 if gap_ai2 == 1 { lc_cell("ABSENT " as *u8, "OF-A2 " as *u8, "AI DATA ANALYSIS in sheets (Copilot in Excel, Fill with Gemini) -- none" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-A2 " as *u8, "AI data analysis" as *u8); present = present + 1 }
143 if gap_ai3 == 1 { lc_cell("ABSENT " as *u8, "OF-A3 " as *u8, "AI PRESENTATION generation (Copilot in PowerPoint, Gemini in Slides) -- none" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-A3 " as *u8, "AI presentations" as *u8); present = present + 1 }
144 if gap_ai4 == 1 { lc_cell("ABSENT " as *u8, "OF-A4 " as *u8, "AGENTIC multi-step (Copilot Agent Mode GA 2026-04 / Cowork) -- none. THE current frontier the leaders just shipped" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-A4 " as *u8, "agentic AI" as *u8); present = present + 1 }
145
146 lc_w(" --- STORAGE / DOCUMENT MGMT / SOVEREIGNTY (where a young sovereign stack can hold ground) ---\n" as *u8)
147 if e_docmgmt == 1 { lc_cell("PRESENT" as *u8, "OF-D1 " as *u8, "document MANAGEMENT (versioned store/get/history/list, rel-linked) -- nx_vizsla_doc" as *u8); present = present + 1 } else { lc_cell("ABSENT " as *u8, "OF-D1 " as *u8, "document management" as *u8); absent = absent + 1 }
148 if e_docgen == 1 { lc_cell("PRESENT" as *u8, "OF-D2 " as *u8, "office-doc GENERATION from structured data (fields -> .docx -> filed) -- nx_vizsla_docgen" as *u8); present = present + 1 } else { lc_cell("ABSENT " as *u8, "OF-D2 " as *u8, "doc generation" as *u8); absent = absent + 1 }
149 if e_estate == 1 { lc_cell("PRESENT" as *u8, "OF-D3 " as *u8, "records / estate-inventory workflow (never-lose, executor-conflict-reducer) -- nx_estate_inventory" as *u8); present = present + 1 } else { lc_cell("ABSENT " as *u8, "OF-D3 " as *u8, "records workflow" as *u8); absent = absent + 1 }
150 if gap_sync == 1 { lc_cell("ABSENT " as *u8, "OF-D4 " as *u8, "cloud / offsite SYNC (Drive/OneDrive) -- local seg_store only; oauth2 is roadmap" as *u8); absent = absent + 1 } else { lc_cell("PRESENT" as *u8, "OF-D4 " as *u8, "cloud sync" as *u8); present = present + 1 }
151 if e_sov == 1 { lc_cell("PRESENT" as *u8, "OF-D5 " as *u8, "SOVEREIGN: on-device, no cloud, NO telemetry / NO data-harvest -- PARITY with the open-source SOTA (LibreOffice); BETTER than the cloud leaders (M365/Workspace send data up). PRESENT (not EXCEEDS -- LibreOffice matches privacy)" as *u8); present = present + 1 } else { lc_cell("ABSENT " as *u8, "OF-D5 " as *u8, "sovereign/no-harvest" as *u8); absent = absent + 1 }
152 if e_open == 1 { lc_cell("PRESENT" as *u8, "OF-D6 " as *u8, "OPEN FORMAT / no lock-in (both OOXML .docx/.xlsx AND ODF .odt) -- PARITY with LibreOffice" as *u8); present = present + 1 } else { lc_cell("ABSENT " as *u8, "OF-D6 " as *u8, "open format" as *u8); absent = absent + 1 }
153
154 // ===== UI / PRODUCT AXES (U1-U4) -- the doctrine block ([[feedback-census-must-capture-ui-product-axes]]):
155 // the office suite has a USER-FACING SURFACE (nishifamily.com/office, :8030) so it MUST be scored on PRODUCT
156 // quality, not just format capability. Scored 0..2 vs a NAMED+DATED bar. 07-10: NEEDLE-DRIVEN -- every point
157 // above the standing baseline requires the implementing symbols to EXIST in the served surface (same
158 // definitions-law as the feature axes) AND nx_office_gate T12a-T12i executes the behavior (34/34). STRICT
159 // CAPS keep it honest: three of four axes are capped at 1 because the bar-level remainder is real and named
160 // below. The score moves only when the product actually moves. =====
161 lc_w(" --- UI/PRODUCT AXES (U1-U4) vs REAL product bar: LibreOffice 25.x + OnlyOffice + Google Docs\n" as *u8)
162 lc_w(" (bars BANKED 2026-07-09 via nx_swcompare_research: pb_libreoffice_layers 145KB repo tree + pb_onlyoffice_webapps + pb_collabora) ---\n" as *u8)
163 // needles = markup/symbols the pages actually serve; a comment cannot fake these, and the gate RUNS them
164 let u_shell: i64 = lc_file_has(SERVE as *u8, "func of_shell_top" as *u8, buf, cap)
165 let u_thumb: i64 = lc_file_has(SERVE as *u8, "func of_thumb" as *u8, buf, cap)
166 let u_vars: i64 = lc_file_has(SERVE as *u8, "--acc:" as *u8, buf, cap)
167 let u_favi: i64 = lc_file_has(SERVE as *u8, "data:image/svg" as *u8, buf, cap)
168 let u_sort: i64 = lc_file_has(SERVE as *u8, "sort=name" as *u8, buf, cap)
169 let u_chip: i64 = lc_file_has(SERVE as *u8, "func of_chip" as *u8, buf, cap)
170 let u_empty: i64 = lc_file_has(SERVE as *u8, "No files match" as *u8, buf, cap)
171 let u_onbrd: i64 = lc_file_has(SERVE as *u8, "Create your first document" as *u8, buf, cap)
172 let u_find: i64 = lc_file_has(SERVE as *u8, "data-act='find'" as *u8, buf, cap)
173 let u_undo: i64 = lc_file_has(SERVE as *u8, "data-act='u'" as *u8, buf, cap)
174 let u_stamp: i64 = lc_file_has(SERVE as *u8, "id='savest'" as *u8, buf, cap)
175 let u_dark: i64 = lc_file_has(SERVE as *u8, ":root.dark" as *u8, buf, cap)
176 let u_resp: i64 = lc_file_has(SERVE as *u8, "@media(max-width:640px)" as *u8, buf, cap)
177 let u_trans: i64 = lc_file_has(SERVE as *u8, "transition:" as *u8, buf, cap)
178 let u_keys: i64 = lc_file_has(APPJS as *u8, "ctrlKey" as *u8, buf, cap)
179 let u_markj: i64 = lc_file_has(APPJS as *u8, "createTreeWalker" as *u8, buf, cap)
180 let u_theme: i64 = lc_file_has(APPJS as *u8, "localStorage" as *u8, buf, cap)
181 var u_got: i64 = 0
182 // U1 visual fidelity: 1 = coherent page (standing since 07-09); +1 needled = app shell + REAL content
183 // thumbnails + design-token system + brand mark, gate-executed (T12e). Editor-canvas gap stays under U2.
184 var u1: i64 = 1
185 u1 = u1 + (u_shell & u_thumb & u_vars & u_favi)
186 u_got = u_got + u1
187 lc_w(" [U1 "); lc_n(u1); lc_w("/2] visual fidelity -- sticky app shell (brand+search) + card grid w/ REAL content thumbnails (doc\n" as *u8)
188 lc_w(" headings, sheet cells, deck slides -- gate T12e) + light/dark design tokens + favicon. NEEDLED:\n" as *u8)
189 lc_w(" of_shell_top+of_thumb+tokens+brand all present. Bar: Docs-grade library visuals -- reached for the\n" as *u8)
190 lc_w(" LIBRARY; the EDITOR canvas (pagination/ruler/menus) stays a named gap under U2.\n" as *u8)
191 // U2 interaction depth: CAPPED at 1 -- undo/redo + find-with-highlights + shortcuts + sheet Enter-nav are
192 // now needled+gated (T12h/T12i), but the editing MODEL is line-based: NO inline rich runs (bold mid-
193 // sentence), NO images, NO comments, NO style panel, NO suggesting mode. That is what 2/2 requires.
194 var u2: i64 = 0
195 u2 = u2 + (u_find & u_undo & u_keys & u_markj)
196 u_got = u_got + u2
197 lc_w(" [U2 "); lc_n(u2); lc_w("/2] interaction depth -- undo/redo + find-in-file w/ cycling highlights + Ctrl+S/B/I/F shortcuts +\n" as *u8)
198 lc_w(" sheet Enter-nav + saving-state feel (needled: find/undo controls, ctrlKey, TreeWalker; gate T12h/i).\n" as *u8)
199 lc_w(" CAPPED 1/2: editing model is LINE-based -- no inline rich runs, images, comments, style panel,\n" as *u8)
200 lc_w(" suggesting mode. Bar: full Docs/OnlyOffice editing. That remainder = OF-W5/W7/W8 + rich runs.\n" as *u8)
201 // U3 information design: CAPPED at 1 -- search + type chips + recency/name sort + thumbnails + both empty
202 // states are needled+gated (T12a-T12g), but folders/starred/templates-gallery/shared-with-me are ABSENT.
203 var u3: i64 = 0
204 u3 = u3 + (u_shell & u_thumb & u_sort & u_chip & u_empty & u_onbrd)
205 u_got = u_got + u3
206 lc_w(" [U3 "); lc_n(u3); lc_w("/2] information design -- library is now a REAL app surface: search (?q=), type chips, recency+name\n" as *u8)
207 lc_w(" sort, content thumbnails, onboarding + no-match empty states (all server-rendered, zero-JS; gate\n" as *u8)
208 lc_w(" T12a-T12g executes each). CAPPED 1/2: NO folders, NO starred, NO templates gallery, NO sharing\n" as *u8)
209 lc_w(" views -- the Google Docs home has all four; those absents keep the second point out of reach.\n" as *u8)
210 // U4 product polish/feel: CAPPED at 1 -- transitions + persisted dark/light + responsive + save-feel +
211 // TRUE AUTOSAVE (07-10: debounced changed-only ajax=1 -> OK v<N>, versions tagged auto; gate T13a-d) are
212 // needled, but offline/PWA, loading skeletons and an a11y audit are still ABSENT = the 2/2 remainder.
213 let u_asave: i64 = lc_file_has(APPJS as *u8, "Autosaved v" as *u8, buf, cap)
214 var u4: i64 = 0
215 u4 = u4 + (u_trans & u_dark & u_resp & u_stamp & u_theme & u_asave)
216 u_got = u_got + u4
217 lc_w(" [U4 "); lc_n(u4); lc_w("/2] product polish/feel -- card hover motion + transitions, persisted light/dark toggle (tokens +\n" as *u8)
218 lc_w(" localStorage), responsive shell, saved-vN stamp + TRUE AUTOSAVE (debounced, changed-only, ajax\n" as *u8)
219 lc_w(" OK-v<N> contract, versions tagged auto -- gate T13a-d), favicon. CAPPED 1/2: NO offline/PWA,\n" as *u8)
220 lc_w(" NO loading skeletons, NO a11y audit. Bar: polished web-app feel (Docs/OnlyOffice).\n" as *u8)
221 let u_max: i64 = 8
222 lc_w(" U-AXES SUBSCORE: "); lc_n(u_got); lc_w("/"); lc_n(u_max); lc_w(" (product/UI quality vs the named bar -- NOT format capability)\n")
223
224 // BLENDED coverage: each of the (present+exceeds+absent) format axes is worth 2 (binary 0|2); the 4 U-axes
225 // are 0..2 each. This folds true PRODUCT quality into the headline number so it can no longer read as SOTA.
226 let total: i64 = present + exceeds + absent
227 let base_pts: i64 = (exceeds + present) * 2
228 let coverage: i64 = (base_pts + u_got) * 1000 / (total * 2 + u_max)
229 lc_w(" TALLY: EXCEEDS="); lc_n(exceeds); lc_w(" PRESENT="); lc_n(present); lc_w(" ABSENT="); lc_n(absent); lc_w(" (of "); lc_n(total); lc_w(" feature axes) + U-axes "); lc_n(u_got); lc_w("/"); lc_n(u_max); lc_w(" BLENDED coverage="); lc_n(coverage); lc_w("/1000\n")
230 lc_w(" FINDING: NOT a state-of-the-art office suite. We are a SOVEREIGN FOUNDATION -- correct .docx/.xlsx/.odt interop,\n" as *u8)
231 lc_w(" mail-merge, never-lose versioned document management + generation -- with ONE genuine measured EXCEEDS\n" as *u8)
232 lc_w(" (tamper-evident content-addressed never-lose version history, which even LibreOffice lacks) and PARITY\n" as *u8)
233 lc_w(" with the open-source SOTA on privacy/open-format. The LEADERS' 2025/2026 differentiators are ALL ABSENT:\n" as *u8)
234 lc_w(" agentic in-app AI (Copilot Agent Mode / Gemini), rich-doc extras (images/track-changes/comments).\n" as *u8)
235 lc_w(" CLOSED SINCE 07-08: .docx FORMATTING+TABLES; FORMULAS (real <f> + Q4 evaluator; 5 fns vs SOTA 400+ --\n" as *u8)
236 lc_w(" a START); PRESENTATIONS v1 (.pptx title+bullet author/read/render); CHARTS + PIVOTS v1 (native render);\n" as *u8)
237 lc_w(" REAL-TIME CO-EDITING (RGA text CRDT + live multi-client HTTP sync -- kernel gate 7/7 + live gate 5/5,\n" as *u8)
238 lc_w(" two client processes CONVERGE over loopback; NO rich-text/cursors/presence UI yet); 07-10 the PRODUCT\n" as *u8)
239 lc_w(" SHELL (search/sort/chips/REAL thumbnails/empty-states/persisted dark/find/undo/shortcuts + version\n" as *u8)
240 lc_w(" DIFF -- nx_office_gate 34/34). Coverage is a CAPABILITY fraction, not a rank.\n" as *u8)
241 lc_w(" UI GRADE (SEPARATE instrument, per feedback-ui-quality-is-not-presence -- NOT folded into coverage):\n" as *u8)
242 lc_w(" nx_ui_judge 07-10 fleet-bar retrofit: /office home 341->888 permil, editor 376->888 permil\n" as *u8)
243 lc_w(" (DE/US/AX/CO all 1000; CR 634 = content-tier taste, no aurora); nx_ui_ship_gate REQUIRED 9/9\n" as *u8)
244 lc_w(" incl office AFTER rows (regression now BLOCKS). Snapshots: web_assets/office_*_{before,after}.html.\n" as *u8)
245
246 // ===== LIAR-KILL: the marquee gaps must be REAL + the one exceed proven + coverage honestly LOW + corpus grounded =====
247 let liar_exceed: i64 = ((exceeds == 1) as i64) & x_ver
248 let liar_gaps: i64 = gap_ai1 & gap_ai4 // marquee gap STILL open: AGENTIC IN-APP AI (fmt+tbl+formulas+pptx+charts+
249 // pivots CLOSED 07-08/09; REAL-TIME CO-EDIT CLOSED 07-09 = CRDT + live HTTP
250 // sync gate 5/5). The one remaining leader-differentiator we cannot fake.
251 let liar_present: i64 = e_docx & e_odt & e_xlsx & e_docmgmt & e_docgen
252 let liar_low: i64 = (coverage < 700) as i64 // honesty guard, tracks reality DATED: 500->600 (07-09 presentations)
253 // ->700 (07-09 real-time co-edit genuinely closed the biggest marquee
254 // gap). NOT-SOTA verdict stays enforced by the agentic-AI marquee row.
255 let liar_corpus: i64 = (corpus == 1) as i64
256 lc_w(" LIAR-KILL: exceed==1-proven="); lc_n(liar_exceed); lc_w(" marquee-gaps-real="); lc_n(liar_gaps); lc_w(" core-present-proven="); lc_n(liar_present); lc_w(" coverage-honestly-low(<700)="); lc_n(liar_low); lc_w(" corpus-grounded="); lc_n(liar_corpus); lc_w("\n")
257
258 let ok: i64 = liar_exceed & liar_gaps & liar_present & liar_low & liar_corpus
259 lc_w("NX-OFFICE-CENSUS coverage="); lc_n(coverage); lc_w("/1000 EXCEEDS="); lc_n(exceeds); lc_w(" ABSENT="); lc_n(absent); lc_w(" verdict=")
260 if ok == 1 { lc_w("MEASURED-HONEST (liar-killed) -- NOT SOTA: sovereign foundation w/ 1 real exceed (never-lose versioning); the 2025/2026 leaders' agentic in-app AI + images/track-changes are the named gaps (real-time co-edit now CLOSED: CRDT + live HTTP sync)\n" as *u8); sys_exit(0); return 0 }
261 lc_w("RED (a marquee gap was faked closed, the exceed unproven, coverage implausibly high, or corpus missing)\n" as *u8); sys_exit(1); return 1
262}