From be049217a9ecf7d71123169dca9a8422d26ed95e Mon Sep 17 00:00:00 2001 From: Torben Nehmer Date: Fri, 9 Oct 2026 16:07:38 +0200 Subject: [PATCH] testfiles: real documents get short names and a source table, personal data is replaced by same-length filler (#203) Adds the nineteen real documents under testfiles/ (mail, Office, PDF, ZIP) with short ASCII names. Recipient addresses, names, host names, mailbox identifiers and recipient-bound tokens are replaced by filler of the same length, and the archive is rebuilt from the sanitized members. test_raw_derive_testfiles.py now compares the sheet TSVs too (with a direct test on _texts()), and a real workbook carries a formula needle that only a .formulas.tsv holds. testfiles/README.md gains the provenance table and the two new rules. Files changed: - CHANGES.md - VERSION - testfiles/README.md - testfiles/mail/github-outlook.msg - testfiles/mail/github-roundcube.eml - testfiles/mail/gog-outlook.msg - testfiles/mail/gog-roundcube.eml - testfiles/mail/tldr-outlook.msg - testfiles/mail/tldr-roundcube.eml - testfiles/office/excel-artificial.xlsx - testfiles/office/excel-business.xlsx - testfiles/office/excel-business.xlsx.expect - testfiles/office/excel-science.xlsx - testfiles/office/pptx-baseline.pptx - testfiles/office/pptx-master.pptx - testfiles/office/pptx-objects.pptx - testfiles/office/word-complex.docx - testfiles/office/word-simple.docx - testfiles/pdf/einstein-dissertation.pdf - testfiles/pdf/ifg.pdf - testfiles/pdf/nist-ai-rmf.pdf - testfiles/pdf/nist-ssdf-genai.pdf - testfiles/zip/archive.zip - tools/chemenu/tests/test_raw_derive_testfiles.py Co-Authored-By: Claude Code Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2 --- CHANGES.md | 3 +- VERSION | 2 +- testfiles/README.md | 25 +- testfiles/mail/github-outlook.msg | Bin 0 -> 124928 bytes testfiles/mail/github-roundcube.eml | 279 ++++ testfiles/mail/gog-outlook.msg | Bin 0 -> 128512 bytes testfiles/mail/gog-roundcube.eml | 637 ++++++++ testfiles/mail/tldr-outlook.msg | Bin 0 -> 159232 bytes testfiles/mail/tldr-roundcube.eml | 1400 +++++++++++++++++ testfiles/office/excel-artificial.xlsx | Bin 0 -> 28742 bytes testfiles/office/excel-business.xlsx | Bin 0 -> 36820 bytes testfiles/office/excel-business.xlsx.expect | 2 + testfiles/office/excel-science.xlsx | Bin 0 -> 670267 bytes testfiles/office/pptx-baseline.pptx | Bin 0 -> 27646 bytes testfiles/office/pptx-master.pptx | Bin 0 -> 49815 bytes testfiles/office/pptx-objects.pptx | Bin 0 -> 30822 bytes testfiles/office/word-complex.docx | Bin 0 -> 518339 bytes testfiles/office/word-simple.docx | Bin 0 -> 22344 bytes testfiles/pdf/einstein-dissertation.pdf | Bin 0 -> 593056 bytes testfiles/pdf/ifg.pdf | Bin 0 -> 56516 bytes testfiles/pdf/nist-ai-rmf.pdf | Bin 0 -> 1174643 bytes testfiles/pdf/nist-ssdf-genai.pdf | Bin 0 -> 650661 bytes testfiles/zip/archive.zip | Bin 0 -> 180915 bytes .../tests/test_raw_derive_testfiles.py | 16 + 24 files changed, 2359 insertions(+), 5 deletions(-) create mode 100644 testfiles/mail/github-outlook.msg create mode 100644 testfiles/mail/github-roundcube.eml create mode 100644 testfiles/mail/gog-outlook.msg create mode 100644 testfiles/mail/gog-roundcube.eml create mode 100644 testfiles/mail/tldr-outlook.msg create mode 100644 testfiles/mail/tldr-roundcube.eml create mode 100644 testfiles/office/excel-artificial.xlsx create mode 100644 testfiles/office/excel-business.xlsx create mode 100644 testfiles/office/excel-business.xlsx.expect create mode 100644 testfiles/office/excel-science.xlsx create mode 100644 testfiles/office/pptx-baseline.pptx create mode 100644 testfiles/office/pptx-master.pptx create mode 100644 testfiles/office/pptx-objects.pptx create mode 100644 testfiles/office/word-complex.docx create mode 100644 testfiles/office/word-simple.docx create mode 100644 testfiles/pdf/einstein-dissertation.pdf create mode 100644 testfiles/pdf/ifg.pdf create mode 100644 testfiles/pdf/nist-ai-rmf.pdf create mode 100644 testfiles/pdf/nist-ssdf-genai.pdf create mode 100644 testfiles/zip/archive.zip diff --git a/CHANGES.md b/CHANGES.md index 4a9791f..18c0c75 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -14,7 +14,7 @@ place only: `instructions/dev/version-parts.md` § The candidate model. --- -## 9.0.0-beta.18 - 2026-10-09 - raw derive writes an Excel file's sheets as tab-separated files with a formula list; derived.md becomes the overview (#202) +## 9.0.0-beta.19 - 2026-10-09 - testfiles: real documents get short names and a source table, personal data is replaced by same-length filler, and the derive test now compares the sheet TSVs (#203) **Author:** Torben Nehmer @@ -48,6 +48,7 @@ place only: `instructions/dev/version-parts.md` § The candidate model. - Gitea-Wiki als generierter Spiegel von docs/: Konverter, Push-Skript, Workflows - raw pending names only the raw fetch pair as a bundle; a derived document is a folder - raw derive writes an Excel file's sheets as tab-separated files with a formula list; derived.md becomes the overview (#202) +- testfiles: real documents get short names and a source table, personal data is replaced by same-length filler, and the derive test now compares the sheet TSVs (#203) ### Tutorials: installation in English, and a first source to a first answer (#191) diff --git a/VERSION b/VERSION index f6c3260..44f00a6 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -9.0.0-beta.18 +9.0.0-beta.19 diff --git a/testfiles/README.md b/testfiles/README.md index d475d37..10d73c0 100644 --- a/testfiles/README.md +++ b/testfiles/README.md @@ -15,8 +15,24 @@ public: metadata (PDF author and producer, Office author and company, mail headers, ZIP entry names); - nothing that was received in confidence. +The author names of a published work (a NIST publication, a statute) are part of the work, not a +real person in the sense of the second item. Links that address an account - unsubscribe, +settings, tracking - count as personal data even when no name is in them: they let anyone holding +the file reach the recipient's account at the sender. Replace such text with filler of the same +length, so a mail keeps its structure. + Removing a file later does not remove it from the history. +## Where the files come from + +| Files | Origin and basis for publishing them | +|-------|--------------------------------------| +| `pdf/nist-ai-rmf.pdf`, `pdf/nist-ssdf-genai.pdf` | NIST AI 600-1 and NIST SP 800-218A: works of the US federal government, public domain. The author in the PDF metadata is the author of the published work. | +| `pdf/ifg.pdf` | Informationsfreiheitsgesetz as published on gesetze-im-internet.de: an official work (§ 5 UrhG), free of copyright. | +| `pdf/einstein-dissertation.pdf` | Einstein's dissertation (1905), a public-domain work. The file is a scan from a web download; the digitizer's terms of use were not checked. Kept deliberately by the maintainer for the scanned pages (OCR coverage). | +| `mail/*` (GitHub, GOG and TLDR newsletters, each as `.eml` and `.msg`) | Mails received by the maintainer; promotional and informational content of the senders, released by the maintainer as test fixtures. Recipient address, names, host names and recipient-bound tokens are replaced by filler of the same length. | +| `office/*`, `zip/archive.zip` | Written by the maintainer for this purpose, with fictitious data; release confirmed by the maintainer. Author fields in the Office metadata are empty. The archive holds copies of six files of this directory (among them two mails) and is rebuilt from the sanitized copies. | + ## Layout | Folder | For | @@ -34,11 +50,14 @@ the right reason, but it is a nuisance to find. For each file, in a throwaway instance: `raw derive` succeeds; the original comes back byte for byte (a ZIP is unpacked and gets a `.md` beside its documents instead); a second run over the same -bytes gives the same text apart from `derived:`; and `raw accept` takes the folder. +bytes gives the same text apart from `derived:`; and `raw accept` takes the folder. The text +compared is every `.md` of the result plus the sheet files of a workbook (`.sheets/*.tsv`, +cells and formula lists). A file may carry a sidecar `.expect` (`offer.pdf.expect` for `offer.pdf`): one line per -piece of text that must appear in the derived text, empty lines and lines starting with `#` -ignored. Without one the file only has to derive, be stable and be accepted. A document that is +piece of text that must appear in the derived text - in any `.md` or sheet TSV of the result - +empty lines and lines starting with `#` ignored. A formula is named by its bare text, such as +`SUM(Sales!L6:L29)`, not by a tab-separated line. Without one the file only has to derive, be stable and be accepted. A document that is meant to be refused (encrypted, damaged) does not belong here; the synthetic tests cover refusals. ## Trying a file by hand diff --git a/testfiles/mail/github-outlook.msg b/testfiles/mail/github-outlook.msg new file mode 100644 index 0000000000000000000000000000000000000000..f4c9c49b9ce787581345244c5a0d6fb135dc9eac GIT binary patch literal 124928 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

T6yJYx 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%0AaOu8x)mI$4JHFkJ({^TCmg`>6 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 OZD(};QKtTfzy1s71hS9- literal 0 HcmV?d00001 diff --git a/testfiles/mail/github-roundcube.eml b/testfiles/mail/github-roundcube.eml new file mode 100644 index 0000000..a24abd2 --- /dev/null +++ b/testfiles/mail/github-roundcube.eml @@ -0,0 +1,279 @@ +Return-Path: +Delivered-To: tester@mail.local +Received: from localhost (localhost [127.0.0.1]) + by relay1.mail.local (Postfix) with ESMTP id 1FBDF3C79 + for ; Fri, 9 Oct 2026 11:33:17 +0200 (CEST) +Authentication-Results: relay1.mail.local (amavis); dkim=pass (2048-bit key) + header.d=github.com +Received: from relay1.mail.local ([127.0.0.1]) + by localhost (relay1.mail.local [127.0.0.1]) (amavis, port 10026) with LMTP + id qUuEj-q26P2w for ; + Fri, 9 Oct 2026 11:33:15 +0200 (CEST) +Received: from gw1.mail.local (gw1.mail.local [192.0.2.12]) + by relay1.mail.local (Postfix) with ESMTPS id EDEF21322 + for ; Fri, 9 Oct 2026 11:33:15 +0200 (CEST) +Received: from gw1.mail.local (localhost [127.0.0.1]) + by gw1.mail.local (Proxmox) with ESMTP id D3AC64175D + for ; Fri, 09 Oct 2026 09:33:15 +0000 (UTC) +Received-SPF: pass (github.com: 192.30.252.200 is authorized to use 'noreply@github.com' in 'mfrom' identity (mechanism 'ip4:192.30.252.0/22' matched)) receiver=gw1.mail.local; identity=mailfrom; envelope-from="noreply@github.com"; helo=out-17.smtp.github.com; client-ip=192.30.252.200 +Received: from out-17.smtp.github.com (out-17.smtp.github.com [192.30.252.200]) + (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) + key-exchange x25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) + (No client certificate requested) + by gw1.mail.local (Proxmox) with ESMTPS + for ; Fri, 09 Oct 2026 09:33:12 +0000 (UTC) +DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=github.com; + s=pf2026; t=1791538385; + bh=PUBUAPrF+j4smoQFdA2YzmimF06eina+b1lMnXVkNSk=; + h=Date:From:Reply-To:To:Cc:Subject:List-ID:List-Archive:List-Post: + From; + b=Glbp4FV+ONO7KVD75/XQI32S6nNkgMDQFHE88AhWhiFTBqjvc7Nw0brNmPpI7QiBH + 1XUObBokb3bzlcyCfF6GjccclB4rMdaJQN5sPHlhI5XgNdf1y/u1E+3TMBbegldNVi + fcyAbLCfs5YBofGXvZZRIka2l4OPLhmKTIHhhfnCFBmwfWJQ8DrxdXprVpsWTlss2A + e2D10Cntxq5yeMZM6/ogKBUBlkRcWM3tyqmBxoNYZxYwlQhCrGb851oM8mg5VWGOuW + SzD44XgjIoNFbYIGD1FalbbNNaPM9DD02b4sEiKf7KTxIgfIqCiUdCFmE/rmJbp8V7 + Z4W0FfTcgnejg== +Received: from github.com (hubbernetes-node-b6fc28b.va3-iad.github.net [10.48.68.62]) + by smtp.github.com (Postfix) with ESMTPA id 6DC44501B32 + for ; Fri, 9 Oct 2026 02:33:05 -0700 (PDT) +Date: Fri, 09 Oct 2026 02:33:05 -0700 +From: Boliang Zhang +Reply-To: microsoft/PowerToys +To: microsoft/PowerToys +Cc: Subscribed +Message-ID: +Subject: [microsoft/PowerToys] Pre-release v0.102.2814.0 - Preview + v0.102.2814.0 +Mime-Version: 1.0 +Content-Type: multipart/alternative; + boundary="--==_mimepart_6ac8b4d169f87_11712283000d9"; + charset=UTF-8 +Content-Transfer-Encoding: 7bit +Precedence: list +X-GitHub-Sender: LegendaryBlair +X-GitHub-Recipient: testermuster +X-GitHub-Reason: subscribed +List-ID: microsoft/PowerToys +List-Archive: https://github.com/microsoft/PowerToys +List-Post: +X-GitHub-Notify-Platform: newsies +X-Auto-Response-Suppress: All +destinations: tester@mail.local +X-GitHub-Recipient-Address: tester@mail.local + + +----==_mimepart_6ac8b4d169f87_11712283000d9 +Content-Type: text/plain; + charset=UTF-8 +Content-Transfer-Encoding: 7bit + + +# PowerToys Preview v0.102.2814.0 + +This is a preview-channel build for the **PowerToys 0.102 release train**, produced from the `stable` branch. It follows [v0.102.2803.0](https://github.com/microsoft/PowerToys/releases/tag/v0.102.2803.0); the notes below describe changes since that preview, not the complete 0.102 versus 0.101 changelog. This is not the final stable release. + +## Installer Hashes + +| Description | Filename | sha256 hash | +| --- | --- | --- | +| Per user - x64 | [PowerToysUserSetup-0.102.2814.0-x64.exe][ptUserX64] | 0E0BC3040FAFA85373410BB9221F869DCD6B355B1D95E1B56A11E94FC757D170 | +| Per user - ARM64 | [PowerToysUserSetup-0.102.2814.0-arm64.exe][ptUserArm64] | ECA42FE6646ACD8BE81E8BD3C03B46D6AD8CA8F8D04A080280A01209CD4E07A8 | +| Machine wide - x64 | [PowerToysSetup-0.102.2814.0-x64.exe][ptMachineX64] | 1AB750116360130C7A5B9B7DF1BD6795FD4BB3BF9538DADD64892F40D9DCDAD4 | +| Machine wide - ARM64 | [PowerToysSetup-0.102.2814.0-arm64.exe][ptMachineArm64] | DD37E0895EE43F306883F08B9ADB5367AFF5087C2A90E67C84D24FF345B72C2E | + +[ptUserX64]: https://github.com/microsoft/PowerToys/releases/download/v0.102.2814.0/PowerToysUserSetup-0.102.2814.0-x64.exe +[ptUserArm64]: https://github.com/microsoft/PowerToys/releases/download/v0.102.2814.0/PowerToysUserSetup-0.102.2814.0-arm64.exe +[ptMachineX64]: https://github.com/microsoft/PowerToys/releases/download/v0.102.2814.0/PowerToysSetup-0.102.2814.0-x64.exe +[ptMachineArm64]: https://github.com/microsoft/PowerToys/releases/download/v0.102.2814.0/PowerToysSetup-0.102.2814.0-arm64.exe + +## Highlights + +- **Mouse Button Lock**: Added opt-in left, right, and middle button locking so dragging and selection can continue without holding a button down. +- **Light Switch**: Added a CLI for status, theme switching, and schedule control, with JSON output for automation. +- **Settings**: Added a CLI to inspect module states and save enable/disable changes while PowerToys is closed. +- **Command Palette**: Fixed dragging packaged apps onto the dock and displaying their loaded icons. +- **Quick Accent**: Restored the horizontal scrollbar for overflowing character lists. +- **Shortcut Guide**: Improved startup and indexing, including fixes for rapid-reopen crashes and first-activation flicker. +- **Settings**: Replaced animated welcome-page GIFs with muted, looping H.264 videos and a fallback image. +- **ZoomIt**: Fixed DSC configuration to use actual registry-backed settings and notify the running utility of changes. + +## Command Palette + +- Fixed dragging packaged apps onto the dock so pinned entries launch correctly and their icons appear when loaded in [#51018](https://github.com/microsoft/PowerToys/pull/51018) by [@jiripolasek](https://github.com/jiripolasek) + +## Light Switch + +- Added a CLI to query status, set or toggle configured theme targets, and enable or disable schedules on the running Light Switch service, with JSON output for automation in [#50459](https://github.com/microsoft/PowerToys/pull/50459) + +## Mouse Button Lock + +- Added opt-in Mouse Button Lock for left, right, and middle buttons so dragging and selection can continue after a long press without continuously holding a button in [#49279](https://github.com/microsoft/PowerToys/pull/49279) by [@MuyuanMS](https://github.com/MuyuanMS) and [@owenpkent](https://github.com/owenpkent) + +## Quick Accent + +- Restored the horizontal scrollbar for overflowing character lists so Quick Accent shows the current position without clipping the scrollbar in [#50924](https://github.com/microsoft/PowerToys/pull/50924) by [@daverayment](https://github.com/daverayment) + +## Settings + +- Added a Settings CLI to inspect module states in text or JSON and save enable/disable changes while PowerToys is closed in [#50507](https://github.com/microsoft/PowerToys/pull/50507) by [@Copilot](https://github.com/Copilot) and [@MuyuanMS](https://github.com/MuyuanMS) +- Replaced animated welcome-page GIFs with muted, looping H.264 videos, with a PowerToys logo fallback when playback is unavailable in [#51057](https://github.com/microsoft/PowerToys/pull/51057) by [@Copilot](https://github.com/Copilot) + +## Shortcut Guide + +- Improved startup and shortcut indexing, preventing rapid-reopen crashes and initial overlay flicker while picking up PowerToys shortcut changes on the next launch in [#50609](https://github.com/microsoft/PowerToys/pull/50609) by [@daverayment](https://github.com/daverayment) + +## ZoomIt + +- Fixed the ZoomIt DSC resource to read and update actual registry-backed settings, detect configuration drift, and notify a running ZoomIt instance to reload changes in [#50551](https://github.com/microsoft/PowerToys/pull/50551) by [@Gijsreyn](https://github.com/Gijsreyn) + +## Development + +- Removed unused central package entries and documented retained dependency pins without changing the versions resolved by existing projects in [#50880](https://github.com/microsoft/PowerToys/pull/50880) by [@Copilot](https://github.com/Copilot) +- Moved local build logs into artifacts\logs so context-menu packaging no longer fails when trying to include open MSBuild log files in [#51056](https://github.com/microsoft/PowerToys/pull/51056) by [@Copilot](https://github.com/Copilot) +- Removed obsolete analyzer suppressions for retired template code to keep shared build diagnostics easier to maintain in [#51061](https://github.com/microsoft/PowerToys/pull/51061) by [@Copilot](https://github.com/Copilot) +- Promoted IL2081 trimming diagnostics to build errors in the shared AOT configuration while retaining explicit project-level exceptions in [#51073](https://github.com/microsoft/PowerToys/pull/51073) by [@Copilot](https://github.com/Copilot) +- Aligned main's checked-in release train with stable's existing 0.102 setting; the previous preview already used this release train in [#51111](https://github.com/microsoft/PowerToys/pull/51111) by [@Copilot](https://github.com/Copilot) and [@LegendaryBlair](https://github.com/LegendaryBlair) +- Enabled nullable reference checking across File Explorer preview and thumbnail projects and their unit tests, with annotations and guards that preserve existing preview behavior in [#51099](https://github.com/microsoft/PowerToys/pull/51099) by [@Copilot](https://github.com/Copilot) +- Updated PowerToys Run architecture documentation to point contributors to the current plugin-management and query-processing code in [#50519](https://github.com/microsoft/PowerToys/pull/50519) by [@ElenaGe216](https://github.com/ElenaGe216) and [@Gavin-Yau](https://github.com/Gavin-Yau) +- Enabled warnings-as-errors for the shared UI-test framework after resolving its analyzer warnings and documenting narrowly scoped exceptions in [#51085](https://github.com/microsoft/PowerToys/pull/51085) by [@Copilot](https://github.com/Copilot) +- Corrected developer documentation links so readers can reach the referenced Settings, PowerToys Run, and Group Policy files in [#51108](https://github.com/microsoft/PowerToys/pull/51108) by [@xThreeh](https://github.com/xThreeh) +- Updated Image Resizer observable models for WinRT and AOT compatibility and made the corresponding MVVM generator diagnostic fail the build while preserving settings serialization in [#51067](https://github.com/microsoft/PowerToys/pull/51067) by [@Copilot](https://github.com/Copilot) +- Corrected native build configuration warnings, removed an unused COM reference, and separated intermediate output folders without changing shipped filenames or output locations in [#51090](https://github.com/microsoft/PowerToys/pull/51090) by [@Copilot](https://github.com/Copilot) + +## Changes needing final review + +Two direct integration commits merged the reviewed main changes into stable without separate PRs: [2646ff0204b8](https://github.com/microsoft/PowerToys/commit/2646ff0204b82fb0ddcaf9810f1ef2841ec5009c) and [1fca166ef506](https://github.com/microsoft/PowerToys/commit/1fca166ef506f0f7391615879c13fa3769bdaafa). Both preserve the existing stable-only PowerDisplay diagnostics omission; no new branch-transition removals were identified. + + + + +-- +View it on GitHub: +https://github.com/microsoft/PowerToys/releases/tag/v0.102.2814.0 +You are receiving this because you are subscribed to this thread. + +Message ID: +----==_mimepart_6ac8b4d169f87_11712283000d9 +Content-Type: text/html; + charset=UTF-8 +Content-Transfer-Encoding: 7bit + +

+

Preview v0.102.2814.0

Repository: microsoft/PowerToys · Tag: v0.102.2814.0 · Commit: 1fca166 · Released by: LegendaryBlair

+ + +

PowerToys Preview v0.102.2814.0

+

This is a preview-channel build for the PowerToys 0.102 release train, produced from the stable branch. It follows v0.102.2803.0; the notes below describe changes since that preview, not the complete 0.102 versus 0.101 changelog. This is not the final stable release.

+

Installer Hashes

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
DescriptionFilenamesha256 hash
Per user - x64PowerToysUserSetup-0.102.2814.0-x64.exe0E0BC3040FAFA85373410BB9221F869DCD6B355B1D95E1B56A11E94FC757D170
Per user - ARM64PowerToysUserSetup-0.102.2814.0-arm64.exeECA42FE6646ACD8BE81E8BD3C03B46D6AD8CA8F8D04A080280A01209CD4E07A8
Machine wide - x64PowerToysSetup-0.102.2814.0-x64.exe1AB750116360130C7A5B9B7DF1BD6795FD4BB3BF9538DADD64892F40D9DCDAD4
Machine wide - ARM64PowerToysSetup-0.102.2814.0-arm64.exeDD37E0895EE43F306883F08B9ADB5367AFF5087C2A90E67C84D24FF345B72C2E
+

Highlights

+
    +
  • Mouse Button Lock: Added opt-in left, right, and middle button locking so dragging and selection can continue without holding a button down.
  • +
  • Light Switch: Added a CLI for status, theme switching, and schedule control, with JSON output for automation.
  • +
  • Settings: Added a CLI to inspect module states and save enable/disable changes while PowerToys is closed.
  • +
  • Command Palette: Fixed dragging packaged apps onto the dock and displaying their loaded icons.
  • +
  • Quick Accent: Restored the horizontal scrollbar for overflowing character lists.
  • +
  • Shortcut Guide: Improved startup and indexing, including fixes for rapid-reopen crashes and first-activation flicker.
  • +
  • Settings: Replaced animated welcome-page GIFs with muted, looping H.264 videos and a fallback image.
  • +
  • ZoomIt: Fixed DSC configuration to use actual registry-backed settings and notify the running utility of changes.
  • +
+

Command Palette

+
    +
  • Fixed dragging packaged apps onto the dock so pinned entries launch correctly and their icons appear when loaded in #51018 by @jiripolasek
  • +
+

Light Switch

+
    +
  • Added a CLI to query status, set or toggle configured theme targets, and enable or disable schedules on the running Light Switch service, with JSON output for automation in #50459
  • +
+

Mouse Button Lock

+
    +
  • Added opt-in Mouse Button Lock for left, right, and middle buttons so dragging and selection can continue after a long press without continuously holding a button in #49279 by @MuyuanMS and @owenpkent
  • +
+

Quick Accent

+
    +
  • Restored the horizontal scrollbar for overflowing character lists so Quick Accent shows the current position without clipping the scrollbar in #50924 by @daverayment
  • +
+

Settings

+
    +
  • Added a Settings CLI to inspect module states in text or JSON and save enable/disable changes while PowerToys is closed in #50507 by @Copilot and @MuyuanMS
  • +
  • Replaced animated welcome-page GIFs with muted, looping H.264 videos, with a PowerToys logo fallback when playback is unavailable in #51057 by @Copilot
  • +
+

Shortcut Guide

+
    +
  • Improved startup and shortcut indexing, preventing rapid-reopen crashes and initial overlay flicker while picking up PowerToys shortcut changes on the next launch in #50609 by @daverayment
  • +
+

ZoomIt

+
    +
  • Fixed the ZoomIt DSC resource to read and update actual registry-backed settings, detect configuration drift, and notify a running ZoomIt instance to reload changes in #50551 by @Gijsreyn
  • +
+

Development

+
    +
  • Removed unused central package entries and documented retained dependency pins without changing the versions resolved by existing projects in #50880 by @Copilot
  • +
  • Moved local build logs into artifacts\logs so context-menu packaging no longer fails when trying to include open MSBuild log files in #51056 by @Copilot
  • +
  • Removed obsolete analyzer suppressions for retired template code to keep shared build diagnostics easier to maintain in #51061 by @Copilot
  • +
  • Promoted IL2081 trimming diagnostics to build errors in the shared AOT configuration while retaining explicit project-level exceptions in #51073 by @Copilot
  • +
  • Aligned main's checked-in release train with stable's existing 0.102 setting; the previous preview already used this release train in #51111 by @Copilot and @LegendaryBlair
  • +
  • Enabled nullable reference checking across File Explorer preview and thumbnail projects and their unit tests, with annotations and guards that preserve existing preview behavior in #51099 by @Copilot
  • +
  • Updated PowerToys Run architecture documentation to point contributors to the current plugin-management and query-processing code in #50519 by @ElenaGe216 and @Gavin-Yau
  • +
  • Enabled warnings-as-errors for the shared UI-test framework after resolving its analyzer warnings and documenting narrowly scoped exceptions in #51085 by @Copilot
  • +
  • Corrected developer documentation links so readers can reach the referenced Settings, PowerToys Run, and Group Policy files in #51108 by @xThreeh
  • +
  • Updated Image Resizer observable models for WinRT and AOT compatibility and made the corresponding MVVM generator diagnostic fail the build while preserving settings serialization in #51067 by @Copilot
  • +
  • Corrected native build configuration warnings, removed an unused COM reference, and separated intermediate output folders without changing shipped filenames or output locations in #51090 by @Copilot
  • +
+

Changes needing final review

+

Two direct integration commits merged the reviewed main changes into stable without separate PRs: 2646ff0204b8 and 1fca166ef506. Both preserve the existing stable-only PowerDisplay diagnostics omission; no new branch-transition removals were identified.

+ + +—

This release has 9 assets:

  • GroupPolicyObjectFiles-0.102.2814.0.zip
  • PowerToysSetup-0.102.2814.0-arm64.exe
  • PowerToysSetup-0.102.2814.0-x64.exe
  • PowerToysUserSetup-0.102.2814.0-arm64.exe
  • PowerToysUserSetup-0.102.2814.0-x64.exe
  • symbols-arm64.zip
  • symbols-x64.zip
  • Source code (zip)
  • Source code (tar.gz)

Visit the release page to download them.

+ +

—
You are receiving this because you are watching this repository.
View it on GitHub or unsubscribe from all notifications for this repository.

+ +----==_mimepart_6ac8b4d169f87_11712283000d9-- + diff --git a/testfiles/mail/gog-outlook.msg b/testfiles/mail/gog-outlook.msg new file mode 100644 index 0000000000000000000000000000000000000000..29db105a56a8d6f5d883f6a9541a47c4be9341c1 GIT binary patch literal 128512 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

)bFhY7i{6rYcG#POj#pM4*2bWe=L^lq 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 M`wv3>Z$G!d2cGy9BLDyZ literal 0 HcmV?d00001 diff --git a/testfiles/mail/gog-roundcube.eml b/testfiles/mail/gog-roundcube.eml new file mode 100644 index 0000000..141f87a --- /dev/null +++ b/testfiles/mail/gog-roundcube.eml @@ -0,0 +1,637 @@ +Return-Path: +Delivered-To: tester@mail.local +Received: from localhost (localhost [127.0.0.1]) + by relay1.mail.local (Postfix) with ESMTP id E7A713D1B + for ; Fri, 9 Oct 2026 12:10:57 +0200 (CEST) +Authentication-Results: relay1.mail.local (amavis); dkim=pass (2048-bit key) + header.d=smgrid.eu header.b="GW2zRKwt"; dkim=pass (2048-bit key) + header.d=email3.gog.com header.b="eFv0TUK7" +Received: from relay1.mail.local ([127.0.0.1]) + by localhost (relay1.mail.local [127.0.0.1]) (amavis, port 10026) with LMTP + id WujfPgrqimYD for ; + Fri, 9 Oct 2026 12:10:57 +0200 (CEST) +Received: from gw1.mail.local (gw1.mail.local [192.0.2.12]) + by relay1.mail.local (Postfix) with ESMTPS id 719511322 + for ; Fri, 9 Oct 2026 12:10:57 +0200 (CEST) +Received: from gw1.mail.local (localhost [127.0.0.1]) + by gw1.mail.local (Proxmox) with ESMTP id 5876C41760 + for ; Fri, 09 Oct 2026 10:10:57 +0000 (UTC) +Received-SPF: pass (emsgrid.com: Sender is authorized to use 'sm.#.3f5ada29ba85a3ae55-newsletter=email3.gog.com@emsgrid.com' in 'mfrom' identity (mechanism 'include:_spf.jupiter.salesmanago.pl' matched)) receiver=gw1.mail.local; identity=mailfrom; envelope-from="sm.#.3f5ada29ba85a3ae55-newsletter=email3.gog.com@emsgrid.com"; helo=amalthea.emgrid.pl; client-ip=89.25.191.77 +Received: from amalthea.emgrid.pl (amalthea.emgrid.pl [89.25.191.77]) + (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) + key-exchange x25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) + (No client certificate requested) + by gw1.mail.local (Proxmox) with ESMTPS + for ; Fri, 09 Oct 2026 10:10:56 +0000 (UTC) +Received: from s12 (_local_) + by smgrid.pl (mta04) with ESMTP id 4j1N0n4lGxzJtb5T + for ; Fri, 09 Oct 2026 10:10:49 +0000 (UTC) +DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=smgrid.eu; + s=sm-trackid; t=1791540649; x=1791585649; + bh=gpu7ZaQ1XIQKWRN0rsfuWvDWyeFeTBF+wOJbmRwqrPE=; + h=Date:From:To:Subject:List-Unsubscribe:List-Unsubscribe-Post:Date: + From:To:Subject:List-Id:List-Unsubscribe:List-Unsubscribe-Post:CC; + b=GW2zRKwtIA4UQOhiuIUky5HB0uL1Psi4DZ2ftjurUdK8bOACUxDwYj8819gVPKbHi + SzVltCunE1hRyUfXil3qqFVuzO8SaKigpIfXECPuxzFSJJAQ+RGQeMwPVRNB43MCqd + oA7C094/1Q0sX5a+KAYAEtoaRXJ7HUK1plKyQrl2gAYlIdhC5/Hqb338nLePYf79iZ + DXw1XciZns9ZEjQXQhhTYSFNUxu1Gp2C9frzs1vDe6a8pyW61WfsMOw0TVuhLFGOpx + kovUlNK7QCg283mQ+ZpNCLpAM1vb8SadJs0SwbC7vzIOGPVmaqyusBefaSDqbIK9R7 + EFY0488QZRhDg== +DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=email3.gog.com; + s=salesmanago; t=1791540649; x=1791585649; + bh=gpu7ZaQ1XIQKWRN0rsfuWvDWyeFeTBF+wOJbmRwqrPE=; + h=Date:From:To:Subject:List-Unsubscribe:List-Unsubscribe-Post:Date: + From:To:Subject:List-Id:List-Unsubscribe:List-Unsubscribe-Post:CC; + b=eFv0TUK7rrzF5OMLnsbYs0/Llxja3xiP57DsvZfbbh0e+fDY14eLLGaf6021fm+cP + wc5w//FRTjPV5Q4912AWJjNlLK1WdXibM6aLKQc6o13HipWX+DP5MsWPsmoxcDtxQc + ro5P+sPVEvkn06+xKj+NF03DCqPrH1ae5QZ0cWm3McLyb4L9YVsJZe+/LzoJXJicFY + GrXyk7GdIcGSr9t37r8f6N9vZf7qt/60Y7Wtth/EU0yDiUfWn3eI/aYGE96Ac/CURC + V8CHnicop8uUHBGj9GMuDo+FDk9FGy87+dSx4+0O1ms+Xs+mvT2b9+zr6Csfr96Vwd + l/nxTSL6BvW7w== +Date: Fri, 9 Oct 2026 12:10:49 +0200 (CEST) +From: "GOG.COM" +To: testermuster +Message-Id: <5404404998.40649541@emsgrid.com5404404998> +Subject: =?UTF-8?Q?Der_Albtraum_beginnt:_SILENT_HIL?= + =?UTF-8?Q?L:_Townfall_ist_jetzt_erh=C3=A4ltlich!?= +X-Abuse: Please report abuse here: abuse@manago.ai +X-Campaign: 000xx0x0-0x0x-0000-00xx-xx0xxxx00x0x +Feedback-ID: 000xx0x0-0x0x-0000-00xx-xx0xxxx00x0x:3f5ada29ba85a3ae:ManagoAI +List-Unsubscribe: , + +List-Unsubscribe-Post: List-Unsubscribe=One-Click +Precedence: bulk +X-Entity-Ref-ID: none +MIME-Version: 1.0 +Content-Type: multipart/alternative; + boundary="----=_Part_4135371_1142483364.1791540649541" + +------=_Part_4135371_1142483364.1791540649541 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 7bit + +Plain text version not available +------=_Part_4135371_1142483364.1791540649541 +Content-Type: text/html; charset=UTF-8 +Content-Transfer-Encoding: quoted-printable + +Der Albtraum beginnt: SILENT HILL: = +Townfall ist jetzt erh=C3=A4ltlich!= +

= +
Betritt St. Amelia,&n= +bsp;stelle dich dem, was geblieben ist, und&n= +bsp;finde heraus, warum alle verschwunden sind. &n= +bsp;‌ ‌ ‌ ‌ ‌ ‌ = +;‌ ‌ ‌ ‌ ‌ ‌  &= +nbsp;‌ ‌ ‌ ‌ ‌ ‌&nbs= +p;‌ ‌ ‌ ‌ ‌ ‌ &= +zwnj;   ‌ ‌ ‌ ‌ ‌&nb= +sp;‌ ‌ ‌ ‌ ‌ ‌ = +‌ ‌   ‌ ‌ ‌ ‌&n= +bsp;‌ ‌ ‌ ‌ ‌ ‌ = +;‌ ‌ ‌   ‌ ‌ ‌&= +nbsp;‌ ‌ ‌ ‌ ‌ ‌&nbs= +p;‌ ‌ ‌ ‌   ‌ ‌= + ‌ ‌ ‌ ‌ ‌ ‌&nb= +sp;‌ ‌ ‌ ‌ ‌   &zwnj= +; ‌ ‌ ‌ ‌ ‌ ‌&n= +bsp;‌ ‌ ‌ ‌ ‌ ‌ = +;  ‌ ‌ ‌ ‌ ‌ ‌&= +nbsp;‌ ‌ ‌ ‌ ‌ ‌&nbs= +p;‌   ‌ ‌ ‌ ‌ ‌= + ‌ ‌ ‌ ‌ ‌ ‌&nb= +sp;‌ ‌   ‌ ‌ ‌ &zwnj= +; ‌ ‌ ‌ ‌ ‌ ‌&n= +bsp;‌ ‌ ‌   ‌ ‌ &zwn= +j; ‌ ‌ ‌ ‌ ‌ ‌&= +nbsp;‌ ‌ ‌ ‌   ‌ &zw= +nj; ‌ ‌ ‌ ‌ ‌ ‌= + ‌ ‌ ‌ ‌ ‌   &z= +wnj; ‌ ‌ ‌ ‌ ‌ &zwnj= +; ‌ ‌ ‌ ‌ ‌ ‌&n= +bsp;  ‌ ‌ ‌ ‌ ‌ &zwn= +j; ‌ ‌ ‌ ‌ ‌ ‌&= +nbsp;‌   ‌ ‌ ‌ ‌ &zw= +nj; ‌ ‌ ‌ ‌ ‌ ‌= + ‌ ‌   ‌ ‌ ‌ &z= +wnj; ‌ ‌ ‌ ‌ ‌ &zwnj= +; ‌ ‌ ‌ 
<= +tbody>
= +
3D"GOG.com
= +
3D"Silent

ist jetzt = +erh=C3=A4ltlich. Und es ruft nach dir.

= +

WILLKOMMEN au= +f ST.  AMELIA, 1996

<= +table role=3Dpresentation border=3D0 cellpadding=3D0 cellspacing=3D0 width= +=3D"100%" style=3D"width:100%;">
3D"Tiled

=E2=80=8BEs ist 1996, du kommst in der abgelege= +nen, vom Nebel verschlungenen Inselstadt vor der K=C3=BCste Schottlands an.= + Erkunde die leeren Stra=C3=9Fen, verlassenen H=C3=A4user und verfallenden = +Wahrzeichen, w=C3=A4hrend Simon Ordell an einen Ort zur=C3=BCckkehrt, der u= +nheimlich vertraut wirkt.

<= +a target=3D_blank style=3D"display:block;width:100%;max-width:566px;" id=3D= +smlid_309 href=3D"https://gog.salesmanago.com/smrd.htm?url=3Dhttps%3A%2F%2F= +www.gog.com%2Fen%2Fgame%2Fsilent_hill_townfall%3Futm_source%3Dsalesmanago%2= +6utm_medium%3Demail%26utm_campaign%3D20261009_nl_SILENT_HILL_TOWNFALL_exclu= +sive_DE&track=3DXxxXXX00XXxxXxXXXXxxXXXXXXxxXXXXXXXXXxXxXXxXXXX0XXxXXx0= +XXX0XXXX0XXXxXXXxXXxXXXXXXXxXXxXXXXXxXXXxXXXXXXXXXXXxXXXXXXxxXx0xXXxxXX00XX= +XxXxXxXXxxxXXXXXxxxXXXXXXxXXX0XXXxxXXXXXxxXxXxXXxxXX0XXXXxx0XXXXxxXXXXXXXxX= +XXXXXXXXXXxXXxxXXXXXXxXXX00XXxxXxX0XXxxXXXXXXx">3D"Collage

D= +ie Stadt mag verlassen wirken, aber du bist alles andere als allein. Mit be= +grenzten Waffen und Werkzeugen bedeutet =C3=9Cberleben zu wissen, wann du d= +ich versteckst, wann du rennst und wann du k=C3=A4mpfst, wenn Schrecken aus= + der Stille auftauchen.

+=3D"Repeated
<= +tr>

Das gr=C3=B6=C3=9Fte R= +=C3=A4tsel der Stadt ist, was mit den Menschen passiert ist, die einst dort= + lebten. Folge den Spuren, die sie hinterlassen haben, l=C3=B6se storygetri= +ebene R=C3=A4tsel und finde heraus, warum du zur=C3=BCckgerufen wurdest.

= +

=E2= +=80=8BHole dir die De= +luxe Edition=E2=80=8B mit dem digitalen Artbook= +, dem Soundtrack und einem alternativen Outfit f=C3=BCr Simon und tauche no= +ch tiefer in die Welt des Spiels ein.

3D"Silent
= +
= +
<= +tr>
3D"Was

P= +robleme bei der Darstellung dieser Email? Klick bitte hier.<= +/p>

=E2=80=8B

Du erh=C3=A4ltst diese Email= +, weil sich deine Email-Adresse auf unserer Empf=C3=A4ngerliste befindet.&n= +bsp;Wenn du keine Emails mehr von uns erhalten m=C3=B6chtest, kannst du dic= +h = +hier abmelden.&nbs= +p;

=E2=80=8B

Diese Email dient ledi= +glich der Information und unterbreitet nicht das Angebot. Preise und Angebo= +te k=C3=B6nnen sich =C3=A4ndern. Weitere Informationen zu den einzelne= +n Angeboten finden sich auf GOG.COM. 

 = +

GOG.COM = +=C2=A9 GOG sp. z o.o., ul. Jagiello=C5=84ska 74, 03-301 Warschau, Polen. Alle anderen Marken si= +nd Eigentum ihrer jeweiligen Inhaber.

= + +------=_Part_4135371_1142483364.1791540649541-- + diff --git a/testfiles/mail/tldr-outlook.msg b/testfiles/mail/tldr-outlook.msg new file mode 100644 index 0000000000000000000000000000000000000000..d6334d79280cc6c03b71f88e4e9c1c3c1d55a6c0 GIT binary patch literal 159232 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%0AK;g%GtBp3_&zk-_j($mpwM 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 z +Delivered-To: tester@mail.local +Received: from localhost (localhost [127.0.0.1]) + by relay1.mail.local (Postfix) with ESMTP id 4B3A33D1B + for ; Fri, 9 Oct 2026 12:12:50 +0200 (CEST) +Authentication-Results: relay1.mail.local (amavis); dkim=pass (1024-bit key) + header.d=tldrnewsletter.com header.b="iNeJEoFI"; dkim=pass (1024-bit key) + header.d=amazonses.com header.b="hatOc5VA" +Received: from relay1.mail.local ([127.0.0.1]) + by localhost (relay1.mail.local [127.0.0.1]) (amavis, port 10026) with LMTP + id WaXwor7Xq29b for ; + Fri, 9 Oct 2026 12:12:48 +0200 (CEST) +Received: from gw1.mail.local (gw1.mail.local [192.0.2.12]) + by relay1.mail.local (Postfix) with ESMTPS id C4FB91322 + for ; Fri, 9 Oct 2026 12:12:48 +0200 (CEST) +Received: from gw1.mail.local (localhost [127.0.0.1]) + by gw1.mail.local (Proxmox) with ESMTP id A9F2041760 + for ; Fri, 09 Oct 2026 10:12:48 +0000 (UTC) +Received-SPF: pass (dailyupdate.tldrnewsletter.com: 54.240.77.27 is authorized to use '010001a12026838a-8b2742b8-#-#-#-914b29c02105-#@dailyupdate.tldrnewsletter.com' in 'mfrom' identity (mechanism 'ip4:54.240.77.27' matched)) receiver=gw1.mail.local; identity=mailfrom; envelope-from="010001a12026838a-8b2742b8-#-#-#-914b29c02105-#@dailyupdate.tldrnewsletter.com"; helo=a77-27.smtp-out.amazonses.com; client-ip=54.240.77.27 +Received: from a77-27.smtp-out.amazonses.com (a77-27.smtp-out.amazonses.com [54.240.77.27]) + (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) + key-exchange x25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) + (No client certificate requested) + by gw1.mail.local (Proxmox) with ESMTPS + for ; Fri, 09 Oct 2026 10:12:45 +0000 (UTC) +DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; + s=4fjbpw2ycutwr4bnoiraulemncpkibbj; d=tldrnewsletter.com; + t=1791540757; + h=From:To:Subject:List-Unsubscribe:List-Unsubscribe-Post:MIME-Version:Date:Message-ID:Content-Type; + bh=reKuGdDr29RCDLzjsTvTTpwTXbg7WzxPwkIUtr1KaQQ=; + b=iNeJEoFINA+s30i47q+t2Lb91YwI+XMFovIYeiEFz6AzBpdB6T+FIZA3qfc5ywHG + Ecf7O95lP9iZQS1EFszSyxUvNWyEX84JRvCB/+QD5HaH2if8ONXCNaVc6szVuHzU/IH + R9LDqkKOloBg+PmqbwrUFUPLrJBb67rNKOdLUmHQ= +DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/simple; + s=224i4yxa5dv7c2xz3womw6peuasteono; d=amazonses.com; t=1791540757; + h=From:To:Subject:List-Unsubscribe:List-Unsubscribe-Post:MIME-Version:Date:Message-ID:Content-Type:Feedback-ID; + bh=reKuGdDr29RCDLzjsTvTTpwTXbg7WzxPwkIUtr1KaQQ=; + b=hatOc5VATYl5hTEzu5Aktu1AsjQiJwBw+kDPoMxD+sehOzigqPZ3m4O92TA+dL5x + Z469pt/pHmRQ5SoCFxuC9g231UdWeqCTvruczaksSsGUDiV/ptIgQXVnZF9Zy8g7Jss + OxA9QuPol/Yl3/c5OLCs7u5FRT74eqQM5vaZm6Ng= +From: TLDR Product +To: tester@mail.local +Subject: Will agents have network effects? =?utf-8?Q?=F0=9F=8C=90=2C?= your + moat is dead =?utf-8?Q?=F0=9F=8F=B0=2C?= when AI agents shop for us + =?utf-8?Q?=F0=9F=9B=92?= +X-Entity-Ref-Id: 0x0000x0-xx00-000x-0000-x0000x00000x +X-EmailOctopus-Parent-Id: 0x000xx0-x0xx-00x0-00xx-x0x0xx0000x0 +X-EmailOctopus-Parent-Type-Id: campaign +X-EmailOctopus-List-Id: x0x00x00-0x00-00xx-0x00-0000x0000000 +X-EmailOctopus-List-Contact-Id: 00000xx0-0xxx-00x0-x00x-00xxx0x00x00 +X-EmailOctopus-Started-Preparing-At: 2026-10-09T10:00:49+00:00 +X-EmailOctopus-Sent-At: 2026-10-09T10:12:37+00:00 +X-EmailOctopus-Team-Id: 66987ef2-4f4c-11e9-a3c9-06b79b628af2 +X-EmailOctopus-Version: 5 +List-Unsubscribe: +List-Unsubscribe-Post: List-Unsubscribe=One-Click +X-EmailOctopus-Ses-Configuration-Set-Name: emailoctopus-a9f7b12f74f3c968d9408897fb35539c +MIME-Version: 1.0 +Date: Fri, 9 Oct 2026 10:12:37 +0000 +Message-ID: <000000x00000000x-0x0000x0-0000-0000-0000-000x00x00000-000000@email.amazonses.com> +Content-Type: multipart/alternative; boundary=LB8Q1ZSP +Feedback-ID: ::1.us-east-1.Dj5/7DYmgk+n1sSGGXSQSLIthSjNQ0MGtV5Dro1Tr8U=:AmazonSES +X-SES-Outgoing: 2026.10.09-54.240.77.27 + +--LB8Q1ZSP +Content-Type: text/plain; charset=utf-8 +Content-Transfer-Encoding: quoted-printable + +While current AI agents act as standalone tools, future agents can +develo= +p network effects through acquisition and engagement +loops.=C2=A0= +=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2= +=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C= +=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80= +=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0= +=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2= +=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0= +=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2= +=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C= +=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80= +=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0= +=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2=A0=E2=80=8C=C2= +=A0 + + + Sign Up [1] |Advertise [2]|View Online [3]=20 + +=09=09TLDR = + + +=09=09TOGETHER WITH [Plaid] [4] + +TLDR PRODUCT MANAGEMENT 2026-10-= +09 + + FINANCIAL UNDERSTANDING CAN'T BE PROMPTED. IT HAS TO BE BUILT +(S= +PONSOR) [4]=20 + + The wheel needed roads. Electricity needed the grid. Eve= +ry leap +forward has needed infrastructure underneath it. AI in finance is= + no +different. + +Plaid [4] is the infrastructure that makes permission= +ed financial data +not just accessible, but understood. A paycheck read as= + income, or an +irregular pattern read as potential fraud.=C2=A0 + +That= + understanding can't be prompted. It has to be built. Plaid's +proprietary= + models are built to specifically understand financial +behavior at scale.= + + +Meet the infrastructure for AI innovation in finance. [4] + += +=F0=9F=93=B1=20 + +NEWS & TRENDS + + WILL AGENTS HAVE NETWORK EFFECTS? (1= +1 MINUTE READ) [5]=20 + + While current AI agents act as standalone tools, = +future agents can +develop network effects through acquisition and engagem= +ent loops. By +turning artifacts into viral objects and building centraliz= +ed identity +layers, agent platforms could create winner-take-all dynamics= +.=20 + + YOUR MOAT IS DEAD. ANYONE CAN REBUILD YOUR PRODUCT (13 MINUTE READ= +) +[6]=20 + + Falling code generation costs and AI agent reimplementations= + have +eliminated traditional software feature and UI moats. Defensibility= + +has shifted toward accountability, proprietary data, regulatory trust,= + +hardware coupling, and customer outcomes, forcing companies to focus +o= +n operational moats and server-side APIs.=20 + +=F0=9F=9A=80=20 + +OPINIONS= + & TUTORIALS + + WHY AGENT-WRITTEN CODE NEEDS PRODUCT VERIFICATION (6 MIN= +UTE READ) [7] + + + When AI agents write both code and tests, they encod= +e identical +misunderstandings, producing green builds that fail real user= + needs. +Teams must establish independent verification based on user +req= +uirements. Lower maintenance costs and faster repair cycles make +comprehe= +nsive end-to-end product verification feasible.=20 + + TESLER'S LAW: COMPLE= +XITY MOVED TO A DIFFERENT PART OF THE JOURNEY (10 +MINUTE READ) [8]=20 + += + Generative AI interfaces do not eliminate software complexity - they +shi= +ft it to users, developers, and reviewers. While AI automates +routine tas= +ks, it adds hidden burdens in prompt specification and +verification. Desi= +gners must address this by creating clear +constraints and verification wo= +rkflows.=20 + +=F0=9F=A7=91=E2=80=8D=F0=9F=92=BB=20 + +RESOURCES & TOOLS += + + 4 FREE DATADOG RESOURCES TO HELP YOU UNDERSTAND YOUR USERS (SPONSOR) += +[9]=20 + + Juggling tools to try and get a sense of your UX? This PM Toolki= +t [9] +by Datadog shows you how to extract real meaning from product data = +and +build stronger pre-launch hypotheses. Learn how to visually replay += +user sessions to uncover friction and prioritize updates that move the +ne= +edle. Get the toolkit [9]=20 + + PRODUCT DEFINITION (8 MINUTE READ) [10] = + + + Product thinking and "Product Definition" are essential in the AI += +era, where agents execute code rapidly given clear direction. Formerly +kn= +own as feature specification, Product Definition shapes requirements +and = +context into actionable artifacts like prototypes and PRDs. This +competen= +cy evolves from tactical execution to building systems that +align teams a= +nd AI agents.=20 + + WHEN DOES ONBOARDING BECOME A PRODUCT PROBLEM? (8 MINU= +TE READ) [11]=20 + + Customer onboarding friction often signals a hidden pr= +oduct issue. +Product managers should address this by creating a repeatabl= +e "Golden +Path," mapping user tasks from purchase to production to replac= +e +manual steps with automated features. Tracking time to first value and= + +completion rates reduces delays and builds long-term product value.=20 += + +=F0=9F=8E=81=20 + +MISCELLANEOUS + + PRODUCT MANAGER, APPLIED AI AT TL= +DR ($225K BASE + $60K BONUS, FULLY +REMOTE) [12]=20 + + TLDR is hiring its= + first PM to help build the agent-first operating +layer used across the c= +ompany. We're looking for a builder who has +shipped real products/systems= + with LLMs. Click here to learn more +[12].=20 + + INTRODUCING: SPOTIFY TE= +CHNOLOGY. PROVEN AT SPOTIFY, NOW YOURS (6 +MINUTE READ) [13]=20 + + Spotif= +y Technology is a unified suite of developer and media tools +including Po= +rtal, Confidence, Xirp, and Spotify for Backstage. Tested +across Spotify'= +s internal engineering teams to cover the entire +development lifecycle, t= +he offering aims to help external R&D +organizations balance team autonomy= + with architectural alignment.=20 + + HOW SNYK TURNED AN INTERNAL SUPPORT A= +GENT INTO A CUSTOMER FEATURE (8 +MINUTE READ) [14]=20 + + Snyk turned its = +internal AI support agent, Snyk Assist, into a +customer-facing feature. T= +he agent answers user queries within +permission boundaries, utilizing off= +line and online evaluations. Since +launch, it has resolved over 85% of su= +pport sessions without needing a +ticket.=20 + +=E2=9A=A1=20 + +QUICK LINK= +S + + EARN YOUR MBA 100% ONLINE FROM THE OHIO STATE UNIVERSITY (SPONSOR)= + +[15]=20 + + Advance your career with Ohio State's online MBA for Working= + +Professionals-our nationally ranked part-time MBA with the flexibility= + +of an online program that can be completed from anywhere. + +EXPLORE T= +HE PROGRAM [15] + + THE MOST COMMON REASONS WHY AI PILOTS FAIL, EVEN AT T= +HE 'BEST' +COMPANIES (1 MINUTE READ) [16]=20 + + This thread outlines thir= +teen common pitfalls that cause enterprise +AI pilots to fail, such as aut= +omating isolated steps instead of full +workflows, lacking baseline metric= +s, ignoring edge cases, and failing +to engage legal and security teams ea= +rly.=20 + + WHAT HAPPENS WHEN AI AGENTS SHOP FOR US (3 MINUTE READ) [17] = + + + As AI shopping agents use wallets to browse catalogs and complete += +checkouts automatically, online merchants risk losing direct customer +con= +tact, while users must retain final purchase approval to prevent +accident= +al transactions.=20 + +Love TLDR? Tell your friends and get rewards! + + = +Share your referral link below with friends to get free TLDR swag!=20 + + h= +ttps://refer.tldr.tech/x00000x0/9 [18]=20 + +=09=09 Track your referrals he= +re. [19]=20 + +Want to advertise in TLDR? =F0=9F=93=B0 + + If your compan= +y is interested in reaching an audience of product +management professiona= +ls and decision makers, you may want to +ADVERTISE WITH US [20].=20 + +Wan= +t to work at TLDR? =F0=9F=92=BC + + APPLY HERE [21], CREATE YOUR OWN ROLE= + [22] or send a friend's resume +to jobs@tldr.tech and get $1k if we hire = +them! TLDR is one of INC.'S +BEST BOOTSTRAPPED BUSINESSES [23] of 2025. = + + + If you have any comments or feedback, just respond to this email! = + + +Thanks for reading,=20 +Ellen Le [24]=20 + + Manage your subscriptions= + [25] to our other newsletters on tech, +startups, and programming. Or if = +TLDR Product Management isn't for +you, please unsubscribe [26].=20 + + = + + +Links: +------ +[1] https://tldr.tech/product?utm_source=3Dtldrprod= +uct +[2] https://advertise.tldr.tech/?utm_source=3Dtldrproduct&utm_medium= +=3Dnewsletter&utm_campaign=3Dadvertisetopnav +[3] https://a.tldrnewsletter= +.com/web-version?ep=3D1&lc=3D00000xx0-0xxx-00x0-x00x-00xxx0x00x00&p=3D0x000= +xx0-x0xx-00x0-00xx-x0x0xx0000x0&pt=3Dcampaign&t=3D1791540757&s=3Dx0xxx000x0= +0x000x0000000xx0000x0000x0x0x0000x0x0x000xx0xxx000xx00 +[4] https://plaid.= +com/intelligent-finance?utm_source=3DTLDRProduct&utm_medium=3DPaidNewslette= +r&utm_campaign=3DTLDRProduct_Paid_Newsletter_Ad_Buy&utm_content=3DIntellige= +ntFinanceLP +[5] https://andrewchen.substack.com/p/will-agents-have-networ= +k-effects?utm_source=3Dtldrproduct +[6] https://www.techfounderstack.com/p= +/your-moat-is-dead-anyone-can-rebuild?utm_source=3Dtldrproduct +[7] https:= +//stack72.dev/why-agent-written-code-needs-product-verification/?utm_source= +=3Dtldrproduct +[8] https://links.tldrnewsletter.com/j1OCPG +[9] https://= +www.datadoghq.com/resources/product-manager-toolkit/?utm_source=3Dtldrnewsl= +etter&utm_medium=3Dnewsletter&utm_campaign=3Ddg-content-toolkit-2026product= +manager-dem-productanalytics-ww-en-701vy00000meylhyak-tldrpm-secondary-1009= +26 +[10] https://blog.ravi-mehta.com/p/product-definition?utm_source=3Dtld= +rproduct +[11] https://amycmitchell.substack.com/p/product-management-deve= +loper-experience?utm_source=3Dtldrproduct +[12] https://jobs.ashbyhq.com/t= +ldr.tech/897f4391-66ab-44ca-a8eb-65dd9809200d?utm_source=3Dtldr&sp=3Dxxx0x0= +XX00xxxxXxXXXXXXXx +[13] https://engineering.atspotify.com/2026/10/introdu= +cing-spotify-technology-proven-at-spotify-now-yours?utm_source=3Dtldrproduc= +t +[14] https://www.langchain.com/blog/how-snyk-turned-an-internal-support= +-agent-into-a-customer-feature?utm_source=3Dtldrproduct +[15] https://onli= +ne.osu.edu/masters-degree/master-business-administration-working-profession= +als/?lead_source=3DResponse-Solutions&utm_campaign=3Doaa_oso_wpmba-student-= +recruitment_fy27_tldr_product&channel=3DOther-Paid&utm_source=3D3rd-Party-D= +isplay&utm_medium=3DENewsletter +[16] https://threadreaderapp.com/thread/2= +107530654741348354.html?utm_source=3Dtldrproduct +[17] https://flaviocopes= +.com/agent-checkout/?utm_source=3Dtldrproduct +[18] https://refer.tldr.tec= +h/x00000x0/9 +[19] https://hub.sparklp.co/xxx_xxx00x00xxxx/9 +[20] https:= +//advertise.tldr.tech/?utm_source=3Dtldrproduct&utm_medium=3Dnewsletter&utm= +_campaign=3Dadvertisecta +[21] https://jobs.ashbyhq.com/tldr.tech +[22] h= +ttps://jobs.ashbyhq.com/tldr.tech/c227b917-a6a4-40ce-8950-d3e165357871 +[2= +3] https://www.linkedin.com/feed/update/urn:li:activity:7401699691039830016= +/ +[24] https://www.linkedin.com/in/ellenle/ +[25] https://tldr.tech/prod= +uct/manage?email=3Dtester%40mail.local +[26] https://a.tldrnewsletter.com/= +unsubscribe?ep=3D1&l=3Dx0x00x00-0x00-00xx-0x00-0000x0000000&lc=3D00000xx0-0= +xxx-00x0-x00x-00xxx0x00x00&p=3D0x000xx0-x0xx-00x0-00xx-x0x0xx0000x0&pt=3Dca= +mpaign&pv=3D5&spa=3D1791540049&t=3D1791540757&s=3Dxx000000000000x000000x000= +x0xxx00x000x000000xx0x0000000x00x00xx0x +--LB8Q1ZSP +Content-Type: text/html; charset=utf-8 +Content-Transfer-Encoding: quoted-printable + +TLDR Product + + + +
While curr= +ent AI agents act as standalone tools, future agents can develop network ef= +fects through acquisition and engagement loops. =E2=80=8C =E2=80= +=8C =E2=80=8C =E2=80=8C =E2=80=8C =E2=80=8C =E2=80= +=8C =E2=80=8C =E2=80=8C =E2=80=8C =E2=80=8C =E2=80= +=8C =E2=80=8C =E2=80=8C =E2=80=8C =E2=80=8C =E2=80= +=8C =E2=80=8C =E2=80=8C =E2=80=8C =E2=80=8C =E2=80= +=8C =E2=80=8C =E2=80=8C =E2=80=8C =E2=80=8C  = +=E2=80=8C =E2=80=8C =E2=80=8C =E2=80=8C =E2=80=8C = +=E2=80=8C =E2=80=8C =E2=80=8C =E2=80=8C =E2=80=8C = +=E2=80=8C =E2=80=8C =E2=80=8C =E2=80=8C =E2=80=8C = +=E2=80=8C =E2=80=8C =E2=80=8C =E2=80=8C =E2=80=8C = +=E2=80=8C =E2=80=8C =E2=80=8C =E2=80=8C =E2=80=8C = +=E2=80=8C 
+ +
+
+
+ +
+ +
+ + +
+ +
+ + + +
+ +
+ +
+ +
TLDR +
+
+ +
+ + + + +
Together With +3D"Plaid"
+
+ +

TLDR Product Management 2026-10-09

+
+
+ +
+
+ + + + Financial understanding can= +'t be prompted. It has to be built (Sponsor) + + +
+
+ + The wheel needed roads. Electricity nee= +ded the grid. Every leap forward has needed infrastructure underneath it. A= +I in finance is no different.

<= +span>Plaid is the infrastructure that makes permissioned financi= +al data not just accessible, but understood. A paycheck read as income, or = +an irregular pattern read as potential fraud. 

+ +

That understanding can't be prompted. It has to be built. Plaid's propri= +etary models are built to specifically understand financial behavior at sca= +le.

+ +

Meet the infrastructure for AI = +innovation in finance. + + +

+
+
+
+
+
+ +
+ +
+
+
=F0=9F= +=93=B1
+
+ +
+
+
+ +

News & Trends

+
+
+
+ +
+ +
+
+ + + + Will agents have network ef= +fects? (11 minute read) + + +
+
+ + While current AI agents act as standalo= +ne tools, future agents can develop network effects through acquisition and= + engagement loops. By turning artifacts into viral objects and building cen= +tralized identity layers, agent platforms could create winner-take-all dyna= +mics. + +
+
+
+ +
+
+ + + + Your Moat Is Dead. Anyone C= +an Rebuild Your Product (13 minute read) + + +
+
+ + Falling code generation costs and AI ag= +ent reimplementations have eliminated traditional software feature and UI m= +oats. Defensibility has shifted toward accountability, proprietary data, re= +gulatory trust, hardware coupling, and customer outcomes, forcing companies= + to focus on operational moats and server-side APIs. + +
+
+
+ +
+ +
+
+
=F0=9F= +=9A=80
+
+
+ +
+
+
+ +

Opinions & Tutorials

+
+
+
+ + +
+ +
+
+ + + + Why Agent-Written Code Need= +s Product Verification (6 minute read) + + +
+
+ + When AI agents write both code and test= +s, they encode identical misunderstandings, producing green builds that fai= +l real user needs. Teams must establish independent verification based on u= +ser requirements. Lower maintenance costs and faster repair cycles make com= +prehensive end-to-end product verification feasible. + +
+
+
+ +
+
+ + + + Tesler's Law: complexity mo= +ved to a different part of the journey (10 minute read) + + +
+
+ + Generative AI interfaces do not elimina= +te software complexity - they shift it to users, developers, and reviewers.= + While AI automates routine tasks, it adds hidden burdens in prompt specifi= +cation and verification. Designers must address this by creating clear cons= +traints and verification workflows. + +
+
+
+ +
+ +
+
+
=F0=9F= +=A7=91=E2=80=8D=F0=9F=92=BB
+
+
+ +
+
+
+ +

Resources & Tools

+
+
+
+ +
+ +
+
+ + + + 4 free Datadog resources to= + help you understand your users (Sponsor) + + +
+
+ + Juggling tools to try and get a sense o= +f your UX? This PM Toolkit by Datado= +g shows you how to extract real meaning from product data and build stronge= +r pre-launch hypotheses. Learn how to visually replay user sessions to unco= +ver friction and prioritize updates that move the needle. Get the toolkit + +
+
+
+ +
+
+ + + + Product definition (8 minut= +e read) + + +
+
+ + Product thinking and "Product Definitio= +n" are essential in the AI era, where agents execute code rapidly given cle= +ar direction. Formerly known as feature specification, Product Definition s= +hapes requirements and context into actionable artifacts like prototypes an= +d PRDs. This competency evolves from tactical execution to building systems= + that align teams and AI agents. + +
+
+
+ +
+
+ + + + When Does Onboarding Become= + a Product Problem? (8 minute read) + + +
+
+ + Customer onboarding friction often sign= +als a hidden product issue. Product managers should address this by creatin= +g a repeatable "Golden Path," mapping user tasks from purchase to productio= +n to replace manual steps with automated features. Tracking time to first v= +alue and completion rates reduces delays and builds long-term product value= +. + +
+
+
+ +
+ +
+
+
=F0=9F= +=8E=81
+
+ +
+
+

Miscellaneous

<= +/div> +
+
+ +
+ +
+
+ + + + Product Manager, Applied AI= + at TLDR ($225k base + $60k bonus, Fully Remote) + + +
+
+ + TLDR is hiring its first PM to help bui= +ld the agent-first operating layer used across the company. We're looking f= +or a builder who has shipped real products/systems with LLMs. Click here to learn more. + +
+
+
+ +
+
+ + + + Introducing: Spotify Techno= +logy. Proven at Spotify, now yours (6 minute read) + + +
+
+ + Spotify Technology is a unified suite o= +f developer and media tools including Portal, Confidence, Xirp, and Spotify= + for Backstage. Tested across Spotify's internal engineering teams to cover= + the entire development lifecycle, the offering aims to help external R&= +;D organizations balance team autonomy with architectural alignment. + +
+
+
+ +
+
+ + + + How Snyk turned an internal= + support agent into a customer feature (8 minute read) + + +
+
+ + Snyk turned its internal AI support age= +nt, Snyk Assist, into a customer-facing feature. The agent answers user que= +ries within permission boundaries, utilizing offline and online evaluations= +. Since launch, it has resolved over 85% of support sessions without needin= +g a ticket. + +
+
+
+ +
+ + + +
+
+
=E2=9A= +=A1
+
+ +
+
+
+ +

Quick Links

+
+
+
+ +
+ +
+
+ + + + Earn your MBA 100% online f= +rom The Ohio State University (Sponsor) + + +
+
+ + Advance your career with Ohio State's o= +nline MBA for Working Professionals-our nationally ranked part-time MBA wit= +h the flexibility of an online program that can be completed from anywhere.= +

= +Explore the program + + +

+
+
+ +
+
+ + + + The most common reasons why= + AI pilots fail, even at the 'best' companies (1 minute read) + + +
+
+ + This thread outlines thirteen common pi= +tfalls that cause enterprise AI pilots to fail, such as automating isolated= + steps instead of full workflows, lacking baseline metrics, ignoring edge c= +ases, and failing to engage legal and security teams early. + +
+
+
+ +
+
+ + + + What happens when AI agents= + shop for us (3 minute read) + + +
+
+ + As AI shopping agents use wallets to br= +owse catalogs and complete checkouts automatically, online merchants risk l= +osing direct customer contact, while users must retain final purchase appro= +val to prevent accidental transactions. + +
+
+
+ +
+ + + + + + + + +
+ +

+Love TLDR? Tell your friends and get rewards! +

+
+
+Share your referral link below with friends to get free TLDR swag! +
+
+ +
+Track your referrals here. +
+ + + + +
+ +

+Want to advertise in TLDR? =F0=9F=93=B0 +

+
+If your company is interested in reaching an audience of product management= + professionals and decision makers, you may want to advertise with us. +
+
+ + + +

+Want to work at TLDR? =F0=9F=92=BC +

+
+Apply here, +create your own role or send a friend's resume to jobs@tldr.tech an= +d get $1k if we hire them! TLDR is one of Inc.'s Best Bootstrapped businesses = +of 2025. +
+
+ +
+If you have any comments or feedback, just respond to this email! +
+
Thanks for reading, +
+Ellen L= +e +
+
+
+
+
+ +
+
+Manage your subscriptions to our other newsletters on tech= +, startups, and programming. Or if TLDR Product Management isn't for you, p= +lease unsubscribe. +
+ +
+
+
+
+
+
+ + +3D"" + +--LB8Q1ZSP-- + diff --git a/testfiles/office/excel-artificial.xlsx b/testfiles/office/excel-artificial.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..1a0467a0d522e575c6610991401cd8bd3efab634 GIT binary patch literal 28742 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