{
  "generatedAt": "2026-10-02T17:04:05Z",
  "entries": [
    {
      "sha": "d6e7ce3",
      "date": "2026-10-02",
      "ts": 1790959810,
      "parts": [
        {
          "stream": "app",
          "streamLabel": "App",
          "version": "2.5.9",
          "build": "37",
          "display": "2.5.9 (build 37)",
          "date": "2026-10-02",
          "ts": 1790959810,
          "sha": "d6e7ce3",
          "groups": {
            "NEW": [],
            "IMPROVED": [
              "Upload the frame while it is still being saved",
              "Make the capture's final JPEG in Kotlin, skip the Dart re-encode"
            ],
            "FIXED": [
              "Answer a capture on a still screen with the newest frame"
            ]
          },
          "count": 3
        }
      ],
      "count": 3,
      "id": "app-2.5.9",
      "title": "App 2.5.9 (build 37)"
    },
    {
      "sha": "d138f16",
      "date": "2026-10-01",
      "ts": 1790893468,
      "parts": [
        {
          "stream": "app",
          "streamLabel": "App",
          "version": "2.5.8",
          "build": "36",
          "display": "2.5.8 (build 36)",
          "date": "2026-10-01",
          "ts": 1790893468,
          "sha": "d138f16",
          "groups": {
            "NEW": [
              "Add an on-device diagnostics log and a share diagnostics action"
            ],
            "IMPROVED": [],
            "FIXED": [
              "Stop the \"not linked\" prompt from popping up over a working hub link",
              "Show the real phone link and a live last-frame age in Hub device status",
              "Make Pause captures stick, with or without a capture session",
              "Show the pairing link in the MCP tab QR, not the whole Connect Kit",
              "Share gallery frames through a cache-path FileProvider root"
            ]
          },
          "count": 6
        }
      ],
      "count": 6,
      "id": "app-2.5.8",
      "title": "App 2.5.8 (build 36)"
    },
    {
      "sha": "2b14553",
      "date": "2026-10-01",
      "ts": 1790839335,
      "parts": [
        {
          "stream": "app",
          "streamLabel": "App",
          "version": "2.5.7",
          "build": "35",
          "display": "2.5.7 (build 35)",
          "date": "2026-10-01",
          "ts": 1790839335,
          "sha": "2b14553",
          "groups": {
            "NEW": [],
            "IMPROVED": [],
            "FIXED": [
              "Open the privacy policy and hub download on www.screensyncmcp.tech"
            ]
          },
          "count": 1
        }
      ],
      "count": 1,
      "id": "app-2.5.7",
      "title": "App 2.5.7 (build 35)"
    },
    {
      "sha": "26544ae",
      "date": "2026-10-01",
      "ts": 1790839334,
      "parts": [
        {
          "stream": "extension",
          "streamLabel": "Extension",
          "version": "1.14.4",
          "build": "",
          "display": "1.14.4",
          "date": "2026-10-01",
          "ts": 1790839334,
          "sha": "26544ae",
          "groups": {
            "NEW": [],
            "IMPROVED": [],
            "FIXED": [
              "Load the setup guide and site links from www.screensyncmcp.tech",
              "Keep the popup device box visible while the phone has frames but paused"
            ]
          },
          "count": 2
        }
      ],
      "count": 2,
      "id": "ext-1.14.4",
      "title": "Extension 1.14.4"
    },
    {
      "sha": "d5dd510",
      "date": "2026-10-01",
      "ts": 1790797527,
      "parts": [
        {
          "stream": "app",
          "streamLabel": "App",
          "version": "2.5.6",
          "build": "34",
          "display": "2.5.6 (build 34)",
          "date": "2026-10-01",
          "ts": 1790797527,
          "sha": "d5dd510",
          "groups": {
            "NEW": [
              "A modern update dialog that follows the app theme, and a global UI template"
            ],
            "IMPROVED": [],
            "FIXED": []
          },
          "count": 1
        }
      ],
      "count": 1,
      "id": "app-2.5.6",
      "title": "App 2.5.6 (build 34)"
    },
    {
      "sha": "87ff657",
      "date": "2026-09-30",
      "ts": 1790788103,
      "parts": [
        {
          "stream": "app",
          "streamLabel": "App",
          "version": "2.5.5",
          "build": "33",
          "display": "2.5.5 (build 33)",
          "date": "2026-09-30",
          "ts": 1790788103,
          "sha": "87ff657",
          "groups": {
            "NEW": [],
            "IMPROVED": [],
            "FIXED": [
              "Ask for screen-capture consent and stop showing \"connected\" when nothing is streaming",
              "Show the update dialog, verify the download and add an auto-update switch",
              "Split sideload and play flavors so the hub installer keeps its permission"
            ]
          },
          "count": 3
        }
      ],
      "count": 3,
      "id": "app-2.5.5",
      "title": "App 2.5.5 (build 33)"
    },
    {
      "sha": "a75ec0a",
      "date": "2026-09-29",
      "ts": 1790682199,
      "parts": [
        {
          "stream": "extension",
          "streamLabel": "Extension",
          "version": "1.14.3",
          "build": "",
          "display": "1.14.3",
          "date": "2026-09-29",
          "ts": 1790682199,
          "sha": "a75ec0a",
          "groups": {
            "NEW": [],
            "IMPROVED": [],
            "FIXED": [
              "Report what a screenshot really captured"
            ]
          },
          "count": 1
        }
      ],
      "count": 1,
      "id": "ext-1.14.3",
      "title": "Extension 1.14.3"
    },
    {
      "sha": "b94d315",
      "date": "2026-09-26",
      "ts": 1790369310,
      "parts": [
        {
          "stream": "extension",
          "streamLabel": "Extension",
          "version": "1.14.2",
          "build": "",
          "display": "1.14.2",
          "date": "2026-09-26",
          "ts": 1790369310,
          "sha": "b94d315",
          "groups": {
            "NEW": [],
            "IMPROVED": [],
            "FIXED": [
              "Reconnect the live stream within seconds after a hub restart"
            ]
          },
          "count": 1
        }
      ],
      "count": 1,
      "id": "ext-1.14.2",
      "title": "Extension 1.14.2"
    },
    {
      "sha": "112e9f9",
      "date": "2026-09-26",
      "ts": 1790367618,
      "parts": [
        {
          "stream": "extension",
          "streamLabel": "Extension",
          "version": "1.14.1",
          "build": "",
          "display": "1.14.1",
          "date": "2026-09-26",
          "ts": 1790367618,
          "sha": "112e9f9",
          "groups": {
            "NEW": [
              "Shared service-worker state registry and hub url helpers"
            ],
            "IMPROVED": [
              "Diagnostics driven by the real payload (stream B)"
            ],
            "FIXED": [
              "Treat a 200 that is not text/event-stream as an sse error",
              "Confirm a web_request with the hub when it may have outlived its wait",
              "Judge onboarding and the web access tab on this browser's hub entry",
              "Judge web_request expiry on the hub's relative remainingMs",
              "Use isLoopbackHub for the onboarding host-permission check",
              "Mint one browser instance id when callers race at first boot",
              "Keep the popup status live and verify a real stream in onboarding",
              "Never run a replayed or expired web request",
              "Make the sse stream state truthful and stop the reconnect storm",
              "Drive the diagnostics tab from the real payload",
              "Report real sse, uptime and grant counts in diagnostics"
            ]
          },
          "count": 13
        }
      ],
      "count": 13,
      "id": "ext-1.14.1",
      "title": "Extension 1.14.1"
    },
    {
      "sha": "d69e1c4",
      "date": "2026-09-23",
      "ts": 1790358271,
      "parts": [
        {
          "stream": "extension",
          "streamLabel": "Extension",
          "version": "1.14.0",
          "build": "",
          "display": "1.14.0",
          "date": "2026-09-23",
          "ts": 1790358271,
          "sha": "d69e1c4",
          "groups": {
            "NEW": [
              "Page through a long aria snapshot with offset",
              "Web_screenshot background option that never takes focus"
            ],
            "IMPROVED": [],
            "FIXED": [
              "Read tables inside a closed details and flag visible columns",
              "Web_expect answers on a background tab",
              "Bound the paint wait before a capture, skip hidden pages",
              "Wait for paint before web_element_screenshot capture"
            ]
          },
          "count": 6
        }
      ],
      "count": 6,
      "id": "ext-1.14.0",
      "title": "Extension 1.14.0"
    },
    {
      "sha": "06c2a7e",
      "date": "2026-09-23",
      "ts": 1790181593,
      "parts": [
        {
          "stream": "extension",
          "streamLabel": "Extension",
          "version": "1.13.1",
          "build": "",
          "display": "1.13.1",
          "date": "2026-09-23",
          "ts": 1790181593,
          "sha": "06c2a7e",
          "groups": {
            "NEW": [],
            "IMPROVED": [],
            "FIXED": [
              "Open new tabs in the agent window and keep it across worker restarts"
            ]
          },
          "count": 1
        }
      ],
      "count": 1,
      "id": "ext-1.13.1",
      "title": "Extension 1.13.1"
    },
    {
      "sha": "cfe3162",
      "date": "2026-09-23",
      "ts": 1790178342,
      "parts": [
        {
          "stream": "extension",
          "streamLabel": "Extension",
          "version": "1.13.0",
          "build": "",
          "display": "1.13.0",
          "date": "2026-09-23",
          "ts": 1790178342,
          "sha": "cfe3162",
          "groups": {
            "NEW": [
              "In-page + os notification for pending approvals",
              "Add 1-click AI fix prompt and troubleshooting guide to onboarding error card"
            ],
            "IMPROVED": [],
            "FIXED": [
              "Look-alike exclusions must be whole words",
              "Match destructive stems at word starts, keep compounds flagged",
              "Word-boundary destructive keyword matching",
              "Drop untargeted web requests when other profiles are online",
              "Wait for paint before web_screenshot capture",
              "Verify web_scroll_to actually moved the viewport",
              "Capture the requested tab for web_screenshot, not whatever's visible",
              "Make web_eval await promises and support top-level await",
              "Derive web_window's target from tabId, stop silent fallback",
              "Route tabId/windowId to the owning browser instance",
              "Audit and fix hub & extension distribution for macOS and Windows",
              "Validate service identity on probe and clarify macOS hub startup"
            ]
          },
          "count": 14
        }
      ],
      "count": 14,
      "id": "ext-1.13.0",
      "title": "Extension 1.13.0"
    },
    {
      "sha": "1dfb6a3",
      "date": "2026-09-22",
      "ts": 1790068309,
      "parts": [
        {
          "stream": "extension",
          "streamLabel": "Extension",
          "version": "1.12.0",
          "build": "",
          "display": "1.12.0",
          "date": "2026-09-22",
          "ts": 1790068309,
          "sha": "1dfb6a3",
          "groups": {
            "NEW": [
              "An agent asks for a site's access, a person decides"
            ],
            "IMPROVED": [],
            "FIXED": [
              "Keep the access window and its test inside the lint globals"
            ]
          },
          "count": 2
        }
      ],
      "count": 2,
      "id": "ext-1.12.0",
      "title": "Extension 1.12.0"
    },
    {
      "sha": "a196bda",
      "date": "2026-09-21",
      "ts": 1789978887,
      "parts": [
        {
          "stream": "extension",
          "streamLabel": "Extension",
          "version": "1.11.0",
          "build": "",
          "display": "1.11.0",
          "date": "2026-09-21",
          "ts": 1789978887,
          "sha": "a196bda",
          "groups": {
            "NEW": [
              "A person approves what looks destructive, not the agent"
            ],
            "IMPROVED": [],
            "FIXED": []
          },
          "count": 1
        }
      ],
      "count": 1,
      "id": "ext-1.11.0",
      "title": "Extension 1.11.0"
    },
    {
      "sha": "ed55a93",
      "date": "2026-09-19",
      "ts": 1789825168,
      "parts": [
        {
          "stream": "extension",
          "streamLabel": "Extension",
          "version": "1.10.1",
          "build": "",
          "display": "1.10.1",
          "date": "2026-09-19",
          "ts": 1789825168,
          "sha": "ed55a93",
          "groups": {
            "NEW": [],
            "IMPROVED": [],
            "FIXED": [
              "Read the threat breaker from the hub, which owns it",
              "Let the bridge name guard accept digits in a tool name"
            ]
          },
          "count": 2
        }
      ],
      "count": 2,
      "id": "ext-1.10.1",
      "title": "Extension 1.10.1"
    },
    {
      "sha": "6308327",
      "date": "2026-09-19",
      "ts": 1789810725,
      "parts": [
        {
          "stream": "extension",
          "streamLabel": "Extension",
          "version": "1.10.0",
          "build": "",
          "display": "1.10.0",
          "date": "2026-09-19",
          "ts": 1789810725,
          "sha": "6308327",
          "groups": {
            "NEW": [
              "Ship architecture 12.0 transcendental executive cognition and sleep-consolidation",
              "Architectures 10.0 and 11.0 with a decomposed handler layer",
              "Enforce mandatory instant inline learning rules and automated telemetry tracking",
              "Architecture 9.0 lifespan cognitive ontogeny, GQL graph pattern matching, motor babbling & analogical transfer",
              "Architecture 7.0 & 8.0 developmental epistemology, RPD prototypes, ontogenetic cognitive stages & property graph lineage",
              "Architecture 6.0 hippocampal SWR offline replay, autobiographical episodic recall & data autocleaning hygiene",
              "Architecture 5.0 neuro-developmental memory stages (ND-MS) with dynamic scaffolding & stress regression",
              "Advance ScreenSync to Architecture 4.0 (CR-FLI)",
              "Advance ScreenSync Cognitive Memory to Architecture 3.0 (SC-WA)"
            ],
            "IMPROVED": [],
            "FIXED": [
              "Enable native CDP file uploads and relax validation",
              "Prevent duplicate paste in rich-text and add window create support"
            ]
          },
          "count": 11
        }
      ],
      "count": 11,
      "id": "ext-1.10.0",
      "title": "Extension 1.10.0"
    },
    {
      "sha": "c1756ee",
      "date": "2026-09-18",
      "ts": 1789738446,
      "parts": [
        {
          "stream": "extension",
          "streamLabel": "Extension",
          "version": "1.9.0",
          "build": "",
          "display": "1.9.0",
          "date": "2026-09-18",
          "ts": 1789738446,
          "sha": "c1756ee",
          "groups": {
            "NEW": [
              "Release v1.9.0 with BrowserSkill gems and Cognitive Memory AP-CE 2.0",
              "Gate OS-level control behind an explicit host opt-in",
              "Expose extension control as MCP tools and keep the gate read-only",
              "Ship agent web access ON for fresh installs"
            ],
            "IMPROVED": [],
            "FIXED": [
              "Answer a native beforeunload prompt before navigating, and clear an already-open dialog",
              "Escape untrusted text at every dashboard sink",
              "Remove the anti-bot evasion and cross-account discovery tools",
              "Revive the popup Side Panel button and secure the first-run seed"
            ]
          },
          "count": 8
        }
      ],
      "count": 8,
      "id": "ext-1.9.0",
      "title": "Extension 1.9.0"
    },
    {
      "sha": "7ffa95f",
      "date": "2026-09-15",
      "ts": 1789490047,
      "parts": [
        {
          "stream": "app",
          "streamLabel": "App",
          "version": "2.5.4",
          "build": "32",
          "display": "2.5.4 (build 32)",
          "date": "2026-09-15",
          "ts": 1789490047,
          "sha": "7ffa95f",
          "groups": {
            "NEW": [
              "Modernise the connect prompt - top-right skip, live status, one-tap reconnect",
              "Connect prompt with a scan shortcut, and a real version in the app bar",
              "Keep the live stream card hidden until the first frame arrives",
              "Show Finish setup first and let the hero step aside until it is done",
              "Show the app version and update channel in Settings and on the hub screen"
            ],
            "IMPROVED": [],
            "FIXED": []
          },
          "count": 5
        }
      ],
      "count": 5,
      "id": "app-2.5.4",
      "title": "App 2.5.4 (build 32)"
    },
    {
      "sha": "9489bb0",
      "date": "2026-09-15",
      "ts": 1789465902,
      "parts": [
        {
          "stream": "app",
          "streamLabel": "App",
          "version": "2.5.4",
          "build": "31",
          "display": "2.5.4 (build 31)",
          "date": "2026-09-15",
          "ts": 1789465902,
          "sha": "9489bb0",
          "groups": {
            "NEW": [
              "Play In-App Updates (Immediate) + a periodic Play update check"
            ],
            "IMPROVED": [],
            "FIXED": [
              "Apply the independent review of the Play update integration"
            ]
          },
          "count": 2
        }
      ],
      "count": 2,
      "id": "app-2.5.4-b31",
      "title": "App 2.5.4 (build 31)"
    },
    {
      "sha": "3b1ffc5",
      "date": "2026-09-14",
      "ts": 1789399219,
      "parts": [
        {
          "stream": "app",
          "streamLabel": "App",
          "version": "2.5.4",
          "build": "29",
          "display": "2.5.4 (build 29)",
          "date": "2026-09-14",
          "ts": 1789399219,
          "sha": "3b1ffc5",
          "groups": {
            "NEW": [
              "Blocking update gate, Play-aware, plus a Play release workflow"
            ],
            "IMPROVED": [],
            "FIXED": []
          },
          "count": 1
        }
      ],
      "count": 1,
      "id": "app-2.5.4-b29",
      "title": "App 2.5.4 (build 29)"
    },
    {
      "sha": "ac3ba2d",
      "date": "2026-09-14",
      "ts": 1789397516,
      "parts": [
        {
          "stream": "app",
          "streamLabel": "App",
          "version": "2.5.2",
          "build": "27",
          "display": "2.5.2 (build 27)",
          "date": "2026-09-14",
          "ts": 1789397516,
          "sha": "ac3ba2d",
          "groups": {
            "NEW": [
              "In-app update channel - hub publishes the build, phones install it"
            ],
            "IMPROVED": [],
            "FIXED": []
          },
          "count": 1
        }
      ],
      "count": 1,
      "id": "app-2.5.2",
      "title": "App 2.5.2 (build 27)"
    },
    {
      "sha": "c36cc9b",
      "date": "2026-09-14",
      "ts": 1789396087,
      "parts": [
        {
          "stream": "app",
          "streamLabel": "App",
          "version": "2.5.1",
          "build": "26",
          "display": "2.5.1 (build 26)",
          "date": "2026-09-14",
          "ts": 1789396087,
          "sha": "c36cc9b",
          "groups": {
            "NEW": [
              "Opt-in live mirror so the hub can see the phone screen",
              "Live connect-kit endpoint, global install, address beside the QR",
              "Rebuild the pairing screen with motion and real fallbacks",
              "Make the OS-control opt-in a host setting the desktop app can drive",
              "Restore broken declared tools, clean catalogue to 165 tools, and add consistency guard",
              "Agent catalog, sequenced SSE replay, pairing window, os_* hardening",
              "Repo-free setup guide v2 + guide cache revalidation",
              "First-run privacy gate with Settings re-read entry",
              "Add E3 live-bridge theme picker and advanced UX features"
            ],
            "IMPROVED": [],
            "FIXED": [
              "The pairing QR could never be decoded - drop the scanWindow",
              "Re-arm hub maintenance timer so auto-sync survives a disconnect",
              "Migrate deprecated Radio groupValue/onChanged to RadioGroup",
              "Ship true-PNG splash/icon assets and branded pre-31 splash",
              "Align Live Bridge cable through phone/orb centers"
            ]
          },
          "count": 14
        }
      ],
      "count": 14,
      "id": "app-2.5.1",
      "title": "App 2.5.1 (build 26)"
    },
    {
      "sha": "7d07946",
      "date": "2026-09-14",
      "ts": 1789379562,
      "parts": [
        {
          "stream": "extension",
          "streamLabel": "Extension",
          "version": "1.8.0",
          "build": "",
          "display": "1.8.0",
          "date": "2026-09-14",
          "ts": 1789379562,
          "sha": "7d07946",
          "groups": {
            "NEW": [
              "Implement items P7-P12 (trace viewer, test runner, codegen, handles, semantics, service workers)",
              "Playwright parity gaps (P1-P6) and ai-browser loop (D1-D9)",
              "Approval gate for destructive actions, origin consent enforcement, and boundary fixes",
              "Restore broken declared tools, clean catalogue to 165 tools, and add consistency guard",
              "Remove cdpStealthCloak and navigator webdriver patching",
              "Delete vault, session-sync, harvest, and social modules",
              "Implement improvement plan rev 3 (D10-D13, L1-L11, C1-C9, H1-H8)"
            ],
            "IMPROVED": [
              "Remove excised tool handlers and schemas",
              "Split mixed agent files to separate sensitive tools"
            ],
            "FIXED": [
              "Import leaf units directly in web-frames and web-tools to eliminate duplicate declarations",
              "Route all raw Network.enable/disable through ref-counted helpers",
              "Complete Rev 3 remaining fixes (H6 schedules, H1 browser binding, C5 network ref-count, D4 validation, V0 static gate)",
              "Enforce safe defaults (OFF by default, empty token, onboarding false per §0)"
            ]
          },
          "count": 13
        }
      ],
      "count": 13,
      "id": "ext-1.8.0",
      "title": "Extension 1.8.0"
    },
    {
      "sha": "67a0a07",
      "date": "2026-09-13",
      "ts": 1789322580,
      "parts": [
        {
          "stream": "extension",
          "streamLabel": "Extension",
          "version": "1.7.1",
          "build": "",
          "display": "1.7.1",
          "date": "2026-09-13",
          "ts": 1789322580,
          "sha": "67a0a07",
          "groups": {
            "NEW": [
              "Implement Playwright and operator parity, modular units, and safe defaults",
              "Round-10 complete playwright & social operator parity (181 tools)",
              "Round-9 playwright parity - visual baselines, media emulation, mhtml, cache control, flow chaining",
              "Flow schedules — hub runs flows on autopilot; api multipart — v1.6.1 / v3.2.0 (163 tools)",
              "Operator data layer — api-fetch, flows library, SSE zombie fix — v1.5.0 / v3.1.0 (160 tools)",
              "Clock/pdf/download parity, tab fanout, teach-once-replay — v1.4.0 / v3.0.0 (152 tools)",
              "Multi-browser data sync + frame/auth parity — v1.3.0 / v2.9.0 (146 tools)",
              "HAR 1.2 pages metadata + refresh website download zips",
              "Playwright-parity agent layer, evidence tools, ambient SSE events",
              "One-paste AI setup prompt button on onboarding guide step",
              "Repo-free setup guide v2 + guide cache revalidation",
              "Advanced toolkit — 13 new web tools, realtime watch + 4 skills",
              "Add AI-agent web access bridge (hub + extension)",
              "MV3 browser extension + website extension page & setup guide"
            ],
            "IMPROVED": [
              "Split web-adv.js monolith into 9 focused CDP modules"
            ],
            "FIXED": [
              "Guard web-access pill refresh against toggle race + fresh zips"
            ]
          },
          "count": 16
        }
      ],
      "count": 16,
      "id": "ext-1.7.1",
      "title": "Extension 1.7.1"
    },
    {
      "sha": "0805557",
      "date": "2026-08-28",
      "ts": 1787943375,
      "parts": [
        {
          "stream": "app",
          "streamLabel": "App",
          "version": "2.5.0",
          "build": "25",
          "display": "2.5.0 (build 25)",
          "date": "2026-08-28",
          "ts": 1787943375,
          "sha": "0805557",
          "groups": {
            "NEW": [
              "Ship violet UX overhaul with QR pairing and live AI push"
            ],
            "IMPROVED": [],
            "FIXED": []
          },
          "count": 1
        }
      ],
      "count": 1,
      "id": "app-2.5.0",
      "title": "App 2.5.0 (build 25)"
    }
  ],
  "stats": {
    "releases": 25,
    "appReleases": 11,
    "extensionReleases": 14,
    "changes": 129
  }
}
