changedOutput schema / (root)
Previous value: -nullNew value: +{
+ "properties": {
+ "api": {
+ "description": "API version (1.0).",
+ "type": "string"
+ },
+ "doc": {
+ "description": "The document read or written: path, sha256 and paragraph count.",
+ "properties": {
+ "characters": {
+ "description": "text.normalize of a text string: its length.",
+ "type": "integer"
+ },
+ "paragraphs": {
+ "description": "Body paragraphs.",
+ "type": "integer"
+ },
+ "path": {
+ "description": "Path of the document.",
+ "type": "string"
+ },
+ "sha256": {
+ "description": "sha256 of the file (pass as expect.sha256 to a write).",
+ "type": "string"
+ },
+ "source": {
+ "description": "A .txt/.md/.odt source's format, encoding and split mode; \"text\" for a text string (text.normalize).",
+ "type": [
+ "object",
+ "string"
+ ]
+ }
+ },
+ "type": "object"
+ },
+ "next": {
+ "description": "Cursor for the next page (pass as cursor), or null.",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "ok": {
+ "description": "Always true on success.",
+ "type": "boolean"
+ },
+ "op": {
+ "description": "The operation that ran.",
+ "type": "string"
+ },
+ "result": {
+ "description": "What the operation returns.",
+ "properties": {
+ "apps": {
+ "description": "Every live app, running or not.",
+ "items": {
+ "description": "A live app.",
+ "properties": {
+ "app": {
+ "description": "word, libreoffice (or a test adapter).",
+ "type": "string"
+ },
+ "available": {
+ "description": "Installed on this machine.",
+ "type": "boolean"
+ },
+ "listening": {
+ "description": "LibreOffice: its UNO listener is up.",
+ "type": "boolean"
+ },
+ "reachable": {
+ "description": "Can be driven now.",
+ "type": "boolean"
+ },
+ "reason": {
+ "description": "Why it is not available or reachable.",
+ "type": "string"
+ },
+ "version": {
+ "description": "App version, when known.",
+ "type": [
+ "string",
+ "null"
+ ]
+ }
+ },
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "dirty": {
+ "description": "With doc: it has unsaved changes.",
+ "type": "boolean"
+ },
+ "documents": {
+ "description": "Without doc: the documents the apps have open.",
+ "items": {
+ "description": "An open document.",
+ "properties": {
+ "app": {
+ "description": "App.",
+ "type": "string"
+ },
+ "name": {
+ "description": "File name.",
+ "type": "string"
+ },
+ "path": {
+ "description": "Full path.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "open_in": {
+ "description": "With doc: the app holding it {app, controlled, stale}; controlled false means only a lock file says so. Null when no app has it open.",
+ "type": [
+ "object",
+ "null"
+ ]
+ },
+ "path": {
+ "description": "With doc: its full path.",
+ "type": "string"
+ },
+ "update": {
+ "description": "Opt-in update notice (DOC_CONTROL_UPDATE_CHECK): the newest release.",
+ "properties": {
+ "checked_at": {
+ "description": "When it was checked (UTC).",
+ "type": "string"
+ },
+ "current": {
+ "description": "This version.",
+ "type": "string"
+ },
+ "error": {
+ "description": "Why the check failed.",
+ "type": "string"
+ },
+ "latest": {
+ "description": "Newest release.",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "mcpb_url": {
+ "description": "Download of the newest .mcpb bundle.",
+ "type": [
+ "string",
+ "null"
+ ]
+ }
+ },
+ "type": "object"
+ }
+ },
+ "required": [
+ "apps",
+ "open_in",
+ "dirty"
+ ],
+ "type": "object"
+ },
+ "warnings": {
+ "description": "Things to know about the result.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "api",
+ "ok",
+ "op",
+ "result",
+ "warnings",
+ "next"
+ ],
+ "type": "object"
+}