Skip to content
SumOfficeSumOfficeSumOffice

Glossary

Platform terms in plain words: core, session contract, operations contract, capability profile, explicit refusal, preservation of the unsupported, white-label delivery.

Terms that appear throughout the documentation.

Term Meaning
SumDoc core, the Rust core The part of SumDoc that owns the document: it reads the DOCX file, computes the page layout and writes changes back to the file.
SumSheet core, the Rust core The part of SumSheet that owns the workbook: formulas, cell storage, edit history and writing the file; there is no second owner—the screen only shows and asks.
Editor surface, Web Surface The editor page shown in a browser or in a web view inside an application; for SumDoc this is a trial surface—it shows and edits the first paragraph and sends the application five events, while the full editor comes as the web host or the desktop app.
Surface Host, the surface service A small program on the same machine where the document is open: it serves the surface page and holds one session, and cannot be reached from outside.
fastdoc, fastsheet in names The internal names of SumDoc and SumSheet before they were renamed: they remain in code, events and settings so as not to break existing embeddings.
Your application, the host application The application the editor is embedded into; it owns the brand, user sign-in, storage and workflows.
Application adapter Your code between the application and the editor: it starts the core, passes commands and parses responses, and never touches the file itself.
Evaluation Kit A ready-made set for a first trial—examples, sample documents and the expected result of each step—so that your engineer opens their own document in 30–60 minutes.
Mashup, query set A set of Power Query queries inside a workbook; a “foreign” one was built in Excel or another program: SumSheet reads it, refreshes it and writes it back without losing what it doesn’t understand.
DTO, data transfer object A description of the shape of a request or response: which fields exist, what type they are and which are required.
OEM, white-label embedding A delivery where the user sees your interface and your name, not ours; an “OEM profile” is the set of events and settings for such a delivery.
Smoke run A short automated check that the program starts and opens a document; such routes are not needed in embedding and are marked separately in the reference.
LTS, long-term support A version for which fixes and security updates are released for an agreed period, not just until the next release.
Single sign-on, SSO The user signs in to the editor with the same account as your product: your system verifies them, and the editor receives only the name, role and permissions.
Session contract, Rust Session Protocol The list of what your application can say to the SumDoc editor and what it will hear back; it has a version and never changes silently—all commands.
JSONL session The simplest way to talk to the core: your program sends a line with a task and receives a line with a response, one complete JSON message per line.
Standard input and output, stdin and stdout The two streams through which a running program receives tasks and responds; a JSONL session works over them and needs no network port of its own.
Token A random string the core creates at startup, without which its port cannot be connected to; on the next start it will be different unless you set it yourself—for developers.
Local address, 127.0.0.1 The address of the machine itself: a port on it cannot be reached from outside, even from your own network.
Policy enforcement point A known-in-advance moment when the editor asks your application whether it may continue—before a command, before saving, before sending data out; the rules remain yours.
Agent A program that works with the document in place of a person, by the same path as the interface, so its actions are visible, verifiable and undoable; it cannot edit the file behind the editor’s back.
Operations contract, Compute Contract The only path to an SumSheet workbook for the interface, automation and adapters; all operations are in the reference, 206 of them are accepted by the core of the latest release, and acceptance is measured against it.
Capability profile A named list of what is included in your delivery: features, platforms, formats, operations and limits; the promise is defined by it, not by general words.
Capability matrix A table where each capability is verified by format, environment, action and markup preservation: the profile says what is in the delivery, the matrix says what of it has been verified and on what.
Explicit refusal A response with a code and a reason that arrives before the document changes: an operation won’t fail silently and won’t half-corrupt the file—how to read a response.
Preservation of the unsupported Parts of the file the editor doesn’t understand end up in the saved file unchanged or are honestly flagged—this is what sets an editor apart from a converter, which loses everything unfamiliar.
White-label delivery The editor ships under your name and in your interface; what is customized is the shell, not the meaning of the document.
Within the described boundaries Exactly what has been done and verified is listed; beyond the boundary a capability refuses predictably, with a clear reason, rather than breaking.
Bounded About SumSheet operations with bounded in their name: they work only with the part of the workbook you requested; not to be confused with the row above—that one is about a capability’s readiness, this one is about a piece of the workbook.
Workbook session, workbook subset, subset, subsetId A workbook open in SumSheet and its number, passed to all subsequent operations on it: the session lives only inside the running process, and a macro in the workbook itself may prevent closing it—how a session works, what happens on close.
Viewport, visible area A rectangular area of the sheet the core sends to the screen; moving it is not an edit and doesn’t enter the history. Both names appear on the pages and mean the same thing—for developers.
Revision, revision, expectedRevision The workbook state number that grows with every edit: if you pass the last number you saw in a request and the workbook has changed since, the request is rejected before the change—protection against editing from two places at once. In SumSheet the field is optional: without it the edit is applied unconditionally—How the API session works.
Power Query, M expression A mechanism for fetching and transforming data from external sources step by step, compatible with the mechanism of the same name in Microsoft Excel.
Writeback Transferring changes from the document model back into the DOCX or XLSX file; parts the edit didn’t touch are carried over unchanged, and the core does this, not the interface.
Projection A slice of state the core sends to the interface: exactly what the current screen needs, not the whole document or workbook.
Sparse workbook state Only filled cells and explicitly set formats are kept in memory, so a sheet with a million rows takes no memory for empty rows; on open, the active sheet is loaded first.
Headless, working without an interface A mode where the core works without a screen: it receives commands and returns data or a finished file—this is how it’s used on a server and in batch processing.
Dirty, unsaved changes The state where the document has edits that are not yet in the saved file; the application usually shows this and asks for confirmation before closing the window.
Cold reopen Opening a saved file again, in a new process, to verify that everything the editor showed made it into the file: the edit, the history, the formatting and the unsupported parts.
Acceptance A pre-agreed set of documents and actions on which the integration is verified: not “we support DOCX” but “on these files these operations give this result”.
Privacy level The privacy level of a data source in Power Query: it prevents mixing a private source with an external one in the same query, so that data doesn’t leak.

Documentation assistant

Answers are assembled from the documentation and may be inaccurate — check the sources.