Skip to content

DRAFT: integrate R349 protected replay + R093 IPC + R091 Unicode shortcuts - #10

Draft
mohammadmohammadzadeh19960-code wants to merge 41 commits into
sync/personal-main-9960a06d-reviewfrom
qa/r349-r093-r091-integration-20261019
Draft

mohammadmohammadzadeh19960-code wants to merge 41 commits into
sync/personal-main-9960a06d-reviewfrom
qa/r349-r093-r091-integration-20261019

Conversation

@mohammadmohammadzadeh19960-code

@mohammadmohammadzadeh19960-code mohammadmohammadzadeh19960-code commented Oct 19, 2026 •

Copy link
Copy Markdown

CURRENT — R357 owned legacy Repair shortcut migration and hosted acceptance (2026-10-20)

Current immutable review source: Draft PR #10 head 8d475d833e052077f4d2c3b04419b3095dc089e6, tree 48b850eb83cb1c6425c0d9efba48f3189031e07c, parent bc846086423b25047ef076beeddb90101dc1b1ef, R349 base 46c896f123a98aa7fa234bd4b266c8003ebb621e. Protected organization main=03e70785529354f741d75449a19d7e2538c2b81d and official v1.7.8 remain untouched. DRAFT/OPEN/UNMERGED, reviewer GOD13emad requested, no submitted human review.

R356/R357 accepted boundary: Newly installed Start-menu "Repair Hardware Sensors" shortcut launches normal-user Main --repair-sensors, not mutable AppData Uninstall.exe /repair-sensors; Main accepts exactly that single argument before entering its ordinary monitor mutex, obtains affirmative user choice, downloads the same-version immutable official GitHub release and re-verifies SHA before seeking native UAC for the Setup's fixed /repair-sensors command. Setup uninstall recognizes both its old owned link tuple and its new owned Main tuple, refusing foreign same-name shortcuts. During a SHA-verified supported in-place upgrade, R357 migrates only an exactly owned legacy link by staging the new Unicode ShellLink and atomically replacing the old one with a same-volume original backup, checking source digest and tuple both before/after; current/missing/foreign links remain unchanged. Optional migration runs after committed binary upgrade so a failed/foreign shortcut cannot trigger binary rollback. As documented in source, these same-user checks do not prove resistance to a concurrent ancestor-directory rename, and already installed v1.7.8 users have not been silently updated by this draft.

Exact-head hosted proof: Build/Verification #39322954614 3/3 jobs SUCCESS including genuine PowerShell 5.1 R356/R357 21/21 native checks: malformed args fail-closed, real generated ShellLink readback, direct owner-specific uninstall on both formats, owned-old-to-new File.Replace migration, idempotent new and missing links, preservation of foreign/unrelated canaries and no staging residue. R323 owned-shortcut checks 13/13, R353/R354/R355 pinned update/repair 14/14, R355 immutable metadata 19/19 also passed. Native protected leaf R349 #39322954475 2/2 Windows A/B SUCCESS and real embedded PE-Helper cold recovery R350 #39322954370 2/2 Windows A/B SUCCESS. All four latest workflows/nine jobs SUCCESS; the R356/R357 fixture is scoped to disposable GitHub Windows, not a real installation/UAC acceptance.

Exact-head compiled C# CodeQL: read-only comparison #39322954523 2/2 jobs SUCCESS with zero compiler errors and Setup/Main/Broker source coverage. Parent R349 46c896f yielded 9 findings (1 command injection + 8 path injection); current candidate 8d475d833 yielded 4 findings (4 command injection + 0 path injection), no SARIF uploaded. These are separate unresolved source-to-sink leads. Different run totals cannot be equated to changes in vulnerabilities.

Remaining independent gates: disposition/verification for the four remaining command-injection findings, true user UAC and installed-product acceptance, partner human review, explicit decision on test-only QA workflows/actor retention before protected merge and eventual release/signing. Passing CI cannot authorize automatic GitHub Approve, dismissal or release. No branch-protection bypass, force push, merged source, user desktop modification or published release. Portfolio and product FINAL remain OPEN.


Historical — R355 immutable-release repair acceptance (2026-10-19)

Exact acceptance scope: Draft PR #10 head efac81fdb5f262f982acbc63a5de4a6a9fa6bd0f, tree ddfa73256e9ec84a0b9a28be190e1e3036b3ab58, parent bf08d5ae68792b6c5ced35c57c2d986495981e50, target R349 review branch 46c896f123a98aa7fa234bd4b266c8003ebb621e. Organization main=03e70785529354f741d75449a19d7e2538c2b81d remained unchanged on latest read. Draft/UNMERGED, no submitted human approval; review request to GOD13emad is active.

Security remediation R355: The Main application's Repair protected sensors button formerly started user-writable AppData/TaskbarMonitorEnhanced/Uninstall.exe via runas, relying only on file existence. Its revised asynchronous flow accepts only the exact current-version immutable official GOD13emad/TaskbarMonitorEnhanced GitHub release, the canonical tag/URLs, a unique versioned Setup asset, numeric bounded size and valid GitHub SHA-256; it downloads and rechecks the official Setup using the existing SHA-pinned FileShare.Read handle and an exact /repair-sensors descriptor until Process.Start returns. No mutable local Uninstall.exe receives elevation from this button. Fallback failure remains fail-closed and directs the user to the official release. Live GitHub release v1.7.8 was observed immutable=true, draft=false, prerelease=false, with canonical Setup SHA-256 4db3c03ac7ab70b3d3123a365c156e71370f0338991b399b99169a4b5b5f8b75. This is an observed upstream SHA, not a locally installed package verification.

Current immutable-head hosted evidence: Build #39314965530 3/3 jobs SUCCESS. Real Windows PowerShell 5.1 R355_IMMUTABLE_OFFICIAL_REPAIR_METADATA_NATIVE_PASS=19/19 covers accepted current immutable release and 18 negative metadata/wrong-version cases. R353/R354/R355 pinned file/repair command 14/14 covers trusted SHA through an inert ShellExecute and the fixed runas descriptor without launching actual UAC or production Setup. R349 native A/B #39314964712 2/2 SUCCESS, R350 actual PE Helper cold recovery A/B #39314964883 2/2 SUCCESS. Two current R350 raw parent+child receipts independently downloaded and verified as 9/9 each, actor PID/digest and restored Broker SHA identical, parent receipt A SHA-256 B0AB5E9FD787764F56EB6FB417F0BAAEF6F9A2625171756CE9664462651F33C2, B 088E180093635944AE4DBED466CBADFC5746E1CDE3C592BFCC98ACA3BC677A73.

CodeQL remains OPEN: Compiled C# comparator #39314964866 2/2 jobs SUCCESS, using the actual four .NET Framework projects and upload:never, 0 compiler errors, R349 parent 9 findings (1 command, 8 path), current candidate 4 findings (4 command, 0 path). Findings are independent risk leads; changes in counts across reports do not mean the remaining command flows are resolved. The alternative local Windows CodeQL query found additional context-dependent flows and was not uploaded as alerts.

Separate unresolved gate: The installed Start-menu Repair Hardware Sensors shortcut in Setup still points to the user-writable Uninstall.exe /repair-sensors (different entry point from the newly hardened in-app button). Do not claim this separate shortcut or the user-controlled uninstaller elevation boundary remediated by R355. Source-to-sink security review, UAC on the genuine installed system, independent human reviewer, QA-fixture retention/retirement, signing and release acceptance remain separate. No current main, release, code-scanning alert state, private repository visibility or owner-installed binary changed.


Historical — R354 SHA-pinned update launch and hosted native security acceptance (prior head bf08d5a; 2026-10-19)

Current immutable review head: Draft PR #10 at bf08d5ae68792b6c5ced35c57c2d986495981e50, Git tree 33a51494492dc1f8bb68f7f8accdf1ac7b302ec3, target R349 draft parent 46c896f123a98aa7fa234bd4b266c8003ebb621e. Organization protected main=03e70785529354f741d75449a19d7e2538c2b81d remains unchanged. Human GOD13emad review is requested but not submitted, so this is DRAFT / UNMERGED. No real installed product, UAC decision, release, signing, alert dismissal or human approval has been changed.

Runtime security changes (R351–R353): (1) Scheduler self-heal now pins schtasks.exe to a prechecked, non-reparse system executable rather than resolving an absent file from user-controlled PATH; (2) task manager and Explorer menu actions pin system executables and pass canonical quoted folder paths rather than bare names; (3) a genuine update installer is SHA-256 checked while a FileStream(FileShare.Read) handle stays open through Process.Start on the canonical versioned file under the update cache, blocking post-verify same-user write/delete attempts on the leaf. Historical VerifyInstallerBeforeLaunch preserves its selftest contract, but StartInstaller now uses the pinned method. Reparse/UNC/foreign-directory and malformed-digest checks fail closed. Leaf-handle hardening does not prove atomic protection against a concurrent rename of an ancestor directory.

Native Windows evidence on the exact current head: Build and Verification #39309381616 3/3 jobs SUCCESS, R351 Windows fixed-system schtasks.exe 7/7, R352 native Task Manager/Explorer PATH-shadow 7/7, and R353/R354 pinned update installer 13/13. R353 rejected a second writer and a DELETE attempt on the SHA-pinned fixture, rejected malformed SHA, bad filename, foreign path and stale digest. R354 compiled an entirely inert, self-exiting .NET Framework EXE only in disposable GitHub Windows, proved that the exact ShellExecute descriptor launched that SHA-pinned file (expected exit code 27), then cleaned the test fixture. No real update installer or interactive UAC was launched.

Other independent hosted gates on the same SHA: R349 protected leaf A/B #39309381536 2/2 Windows jobs SUCCESS; R350 real embedded PE Helper cold recovery #39309381617 2/2 jobs SUCCESS, covering verified PREPARED persistence under the separate already-Administrator DELETE holder, byte-identical protected Broker restoration after release, task XML restoration and final test-only uninstall. The four workflows / nine current-head jobs all finished SUCCESS. This is technical acceptance on these executable test scopes only, not a personal-device installation test.

Exact-head CodeQL comparator: compiled C# CodeQL #39309381673 2/2 jobs SUCCESS and manual analysis of the actual four .NET Framework projects completed without compiler errors; baseline R349 46c896f: 7 findings (1 command injection + 6 path injection); candidate bf08d5ae6: 4 findings (4 command injection + 0 path injection) with Setup/Main/Broker coverage; upload: never. Counts across separate CodeQL versions/runs are not directly comparable. A separate local, official CodeQL 2.27.2 manual Windows analysis at previous 39abf937 reported additional potential command flows; its local SARIF was never uploaded. These reports are security triage leads, not evidence that all sources are safe or that the candidate is fully remediated.

Still OPEN before any ordinary merge or release: independently adjudicate applicable CodeQL source-to-sink findings and native trust boundaries; receive actual non-author GOD13emad human review and review original PR #2/#6/#9 stacked conflicts; decide QA-only workflows and actor fixtures retirement/retention; complete real user UAC, installed-product, signing/release approval. Do not bypass branch rules, auto-approve via account credentials or represent this technical CI as user/partner consent. Portfolio status OPEN / NOT FINAL.


Historical — R351 exact-head security and recovery acceptance (prior head 035c82f; 2026-10-19)

Exact tested Git scope: Open Draft / NOT merged PR #10 head 035c82fd64f5808af83073893ff1f3f747a7507a, Git tree 19283d607f4cd72114b31da5836894826e374d08, R349 parent/base 46c896f123a98aa7fa234bd4b266c8003ebb621e, protected org main=03e70785529354f741d75449a19d7e2538c2b81d unchanged. Reviewer GOD13emad is requested; no human approval, release or installed owner device acceptance exists.

R351 trust-boundary fix: The original SensorSupervisorSelfHeal.TryRunExistingTask fell back to a bare schtasks.exe resolved through the user environment's PATH whenever the system path was unavailable. Review-only candidate 8d0713c made the Scheduler executable absolute and required the non-reparse, existing Windows system file, failing closed rather than starting the PATH-resolved alternative. A separate test-only correction 035c82fd properly classified the intended InvalidDataException refusal without changing runtime logic. Current exact-head Build #39302870643 3/3 jobs SUCCESS; actual Windows PowerShell 5.1 reflection test R351_SCHTASKS_EXACT_SYSTEM_HOST_NO_PATH_FALLBACK=7/7 proves canonical schtasks.exe, fixed args, no shell, a hostile PATH fake ignored and three fail-closed negative paths without launching the task. The earlier Build #39302544260 failed only the test's exception-classifier, not the first three runtime guard checks; the failure remains in history.

Current-head security QA: native R349 #39302870630 2/2 hosted Windows jobs SUCCESS; full actual PE Helper R350 #39302870622 2/2 SUCCESS, 9/9 typed checks on both Windows A/B. Original PREPARED journal remained after authenticated IPC Helper refused recovery under another Administrator's DELETE handle; after release, exact prior Broker bytes and task XML were restored, then the fixture-owned installation was removed. Both typed actor/parent JSON receipts for exact 035c82fd64f5808af83073893ff1f3f747a7507a were downloaded, parsed and verified with independent actor PID/hash matching, identical original/restored Broker SHA and false RealInteractiveUacConsentTested, ConcurrentWriterDuringActualSuccessfulLeafCopyTested, NativeUserDeviceTouched, FinalSecurityAcceptance. Parent R350 receipt SHA-256: A F4DECF6C54293836DC038083E352D5BC1442BDA186C4402EBEEA7AFC3170E88B; B C882E81A7BE19D703A070E1790462D22150C02B6E0B934D0BFD9974563DFE7DC.

Comparative CodeQL, source-specific NOT security approval: compiled C# comparison #39302870634 2/2 jobs SUCCESS; this exact rerun reported R349 parent 46c896f: 3 findings (2 command injection, 1 path injection), integrated candidate 035c82fd6: 1 finding (1 command injection, 0 path injection), with zero compiler error notifications, Setup/Main/Broker source coverage and upload: never. Earlier exact-head runs reported different aggregate baseline counts; do not conflate runs, assert that this single remaining result is innocuous, or close/dismiss alerts without source-to-sink adjudication.

Acceptance boundary / next: Technical Windows R351, R349 and R350 plus exact-head Build/CodeQL execution are PASS only in their specified environments. A remaining command-injection CodeQL flow still needs source-level triage/remediation; QA-only workflow retention/removal, physical user UAC, signing/release and actual second-human Owner review are separate. Keep Draft and original parent PRs intact. No main, official v1.7.8 release, user-PC installation, branch protection or security alert was changed.


Historical — R350 exact-head 924ec5a Windows A/B acceptance (2026-10-19)

Review state: DRAFT / UNMERGED; no human approval or release authorization. PR #10, immutable current head 924ec5a42084b7bf88de51eecda9d62f480e15fb, Git tree 2a374d9b64428fb6a0053c360858d02a74c81678, parent 6887803a4f55d37b367e6b7b90adb02abdbb100c. Target is the unchanged security R349 review branch at 46c896f123a98aa7fa234bd4b266c8003ebb621e (Draft PR #2). Organization main remains 03e70785529354f741d75449a19d7e2538c2b81d as last read.

R350 actual full-Helper native acceptance PASS, exact head only: GitHub Actions run #39287090514 completed SUCCESS, Windows Server 2025 A and Windows Server 2022 B, 9/9 typed checks per host. Using a truly compiled original PE-embedded PowerShell Helper, authenticated asInvoker IPC, a real production-generated SHA-pinned PREPARED journal and a separate already-Administrator actor, the Helper (1) refused recovery while the actor held DELETE access and retained PREPARED, returning DEGRADED_ROLLBACK_RECOVERY_REQUIRED; (2) after the actor released the handle, cold-restored prior bytes, owner marker, the disabled task and its exact XML, returning DEGRADED_PREVIOUS_LAYER_RESTORED; (3) on a final identical invocation uninstalled the test-owned protected layer and returned UNINSTALLED. The outside canary remained untouched and owned test fixtures were cleaned. This is not an actual interactive UAC approval test or a writer racing during a successful restore copy.

Independent receipt verification: Downloaded artifacts A 12203851259 and B 12205090681 from the exact run. Each has schema R350, nine unique accepted checks, matched SourceCommit, zero Failure, true AlreadyAdminGuest, true real Helper/IPC execution, true PREPARED retention/after-release recovery, and SHA of restored Broker byte-equal to the original. Both independent actor receipt SHA-256 digests match their parent receipt's ActorReceiptSHA256 and recorded actor PID. Parent receipt digests: A 0BD44B92077F2FE3463EEA3669AEFFFEFBAF1F632BB40F7783E967C2D849E2E4; B 6C46ECE373DF5D513A1D5CE9D30CE58C728481622AFFABE768B177A748F06B2C. Explicit receipt flags: RealInteractiveUacConsentTested=false, ConcurrentWriterDuringActualSuccessfulLeafCopyTested=false, NativeUserDeviceTouched=false, FinalSecurityAcceptance=false.

Failure analysis preserved, without converting failures into PASS: First run #39280389822 stopped at precondition because Build.ps1 creates test-only AppData. QA-only commits a0ed5099 and 6887803a added reversible same-volume AppData isolation and reparse/process/foreign-content checks. Two run #39284673065 and run #39284675204 then demonstrated the correct negative Helper status and PREPARED retention in all four hosted cases, but the test harness attempted a fresh Get-FileHash open while another Administrator held DELETE access, leading to an expected Windows sharing violation. Exact child commit 924ec5a4 removed only this premature read and retained the byte-exact hash after the actor exited, before test-owned file removal. No product or production trust boundary changed in the last three QA-only commits.

Other scoped qualification and remaining security concerns: On parent R350 product commit 9dcaf975, hosted Windows Build #39279029125 PASS (three jobs), R090 statuses 6 positive / 38 negative, compiled CodeQL #39279029119 PASS (two jobs), and R349 native A/B #39279029295 PASS. A single cs/command-line-injection candidate finding remains unresolved; unchanged aggregate counts do not prove identical flows or exploitability. All four latest exact-head workflows independently completed SUCCESS: Build #39287090391 3/3 jobs, compiled CodeQL comparison #39287090545 2/2 jobs, native R349 A/B #39287090533 2/2 jobs, and full R350 A/B #39287090514 2/2 jobs. Exact-head Windows native R328 12/12, R334 24/24, current R335 14/14, R090 6 valid/38 rejected and R091 Unicode tests all passed. Compiled CodeQL analyzed both exact refs with 0 compiler notifications, and reports R349 parent 1 command / 0 path, integrated candidate 1 command / 0 path; aggregate parity is not a security resolution. This closes only the listed exact-commit CI/CodeQL/native acceptance gates, not second-human/lineage/UAC/release acceptance.

Open gates / no automatic promotion: Actual human independent Owner review requested from GOD13emad but not submitted; line-level CodeQL finding triage; product QA-only workflow retirement/retention decision; any physical user UAC/installation, signing and release checks; normal protected PR acceptance. No force push, release, main merge, alert dismissal, or user PC mutation. Whole security and product publication status: OPEN, not FINAL.


Historical — Exact-head R349 + R093 + R091 QA (prior head 95f641c; 2026-10-19)

Status: DRAFT / review required — no merge, release, production deployment, or CodeQL alert dismissal. This evidence refers only to the immutable QA head 95f641c4d2a8b1840b760c1c206150a89d9ba240, exact Git tree 0e7e10adf1378f0988b881d519f840896fde0acd, with unchanged parent R349 branch 46c896f123a98aa7fa234bd4b266c8003ebb621e.

Completed current-head hosted evidence:

  • Build and Verification, run 39276288313: 3/3 Jobs SUCCESS, including build, source/security checks, and genuine fresh Windows shortcut negative tests on disposable hosts A/B. Exact candidate head matches.
  • Read-only compiled CSharp CodeQL comparison, run 39276288425: 2/2 SUCCESS, same manual compiled-source analyzer and local threat model on R349 parent and candidate, upload: never. R349: 1 total / 1 command / 0 path; candidate: 1 / 1 / 0, compiler error notifications 0/0, verified Setup/Main/Broker coverage. This is an unchanged count, not a proof of identical flows, complete vulnerability remediation, or safe production code; default-branch CodeQL backlog remains OPEN.
  • R349 combined native protected leaf sharing run 39276288493: 2/2 Windows Jobs SUCCESS, host A (Windows 2025) and B (Windows 2022), 8/8 typed native checks per host. Tested real pinned Program Files leaf, a distinct process already holding an Administrator token, refused concurrent overwrite while pinned, refused preopened DELETE-access handle, unchanged original file readback, allowed test write after release, untouched foreign canary and cleanup of test-created protected fixture. Original R349 scripts preserved; the QA-port scripts require GitHub-hosted Windows, PR DRAFT: integrate R349 protected replay + R093 IPC + R091 Unicode shortcuts #10 refs and exact head SHA, without affecting owner computers or bypassing UAC.

Receipt integrity independently checked: downloaded public Action artifacts 12198185221 (A) and 12196968767 (B); each parent receipt was JSON schema/status/8-check verified, and its ChildReceiptSHA256 matched the independently hashed actor receipt. A parent SHA-256 151E92F7153991CF2476F144E82C0316969A7F9AA3C784039C52A20E0BC6F11B; B C338C866B3649F16E6A12CA03F5505CD80C8E06F80D105344FECB8371AEE3723. These receipts explicitly mark ActualFullJournalReplayWithConcurrentLeafWriterTested=false, RealInteractiveUacConsentTested=false, and SecurityEntireProductAccepted=false.

Exact security change boundary: The integrated code preserves R349 authenticated protected Broker directory and leaf handling, R080/R093 asInvoker IPC status persistence and alternate-SID DACL tests, and R091 Unicode IShellLinkW while retaining original shortcut ownership/foreign-link refusal rules. The unused pre-IPC elevated user-log class was retired instead of raising command-length limits or executing an untrusted Temp script. R328 12/12, R334 24/24, R335-current-IPC 14/14 plus native IPC/Unicode tests passed on earlier exact product head; latest head only adds QA-only verification files and a pinned test action correction, and the full current-head hosted CI passed.

Open gates: actual full original Helper cold journal replay while a separate already-admin writer races a protected leaf (not covered by the scoped native lease tests); independent human review of sensitive code and changed trust boundaries; actionable disposition of the remaining CodeQL command finding and old-fork default alerts; physical user UAC/installed-product acceptance. The two qa-r349-* workflow files and two build/qa/*PR10.ps1 scripts are deliberately review-only and must have an explicit retention/retirement decision before any eventual production branch promotion. Keep original PR #2/#6/#9 ancestry and historical failed CI trials; no force push or review bypass.


Historical review-only integration snapshot — 2026-10-19 (prior head c2c84a4)

DRAFT / HOLD. No merge, release, signing waiver, installed-product or protected-main changes are authorized.

Exact provenance and parent

  • This is a child review PR targeting existing organization security PR Draft security review R356: pinned cleanup and protected Helper recovery #2 branch sync/personal-main-9960a06d-review at 46c896f123a98aa7fa234bd4b266c8003ebb621e (R349). The protected fork main=03e70785529354f741d75449a19d7e2538c2b81d is unchanged. The authoritative personal source main was c067129d0687ace6c1deb27035b7d8b28329a049 when the isolated candidate began.
  • Current QA head c2c84a410d4c314e5823a36d8d9674b25f382d84 descends from R349 and integrates distinct changes from stacked organization PR fix(security): make sensor log/result asInvoker-owned via verified IPC (R080) #6 (0012873, R080/R093 authenticated asInvoker status IPC) and PR fix(security): create Unicode shortcuts directly with Windows ShellLink COM (R091) #9 (d800442 unique R091 Unicode IShellLinkW commit; PR head ae16c84 includes shared R090 history). Original PRs remain OPEN / unmerged; their authorship and test evidence are retained.
  • Isolated integration resolved ten inherited R349↔R093 conflicts plus two R091 conflicts. It retains R349 protected Program Files Broker leaf handles, R090 schema/pipe tests, R091 direct Unicode ShellLinkW and prior R323/R324 foreign/dangling shortcut ownership restrictions. It does not reintroduce Temp PowerShell shortcut generation, user-profile writes from elevated Helper, force-push, privilege bypass or automatic promotion.

Failures retained and current qualification

  • Exact earlier Windows CI #39267484355 was FAILED, because historical R328 assumed direct elevated user log writes. On follow-up head 39caa12, the migrated R328 IPC-only negative regression PASSED on Windows, but CI #39269401572 FAILED at R334: a long synthetic user string exceeded the existing 30,000-character trusted in-memory PowerShell command cap.
  • The current head removes the unreferenced old privileged TBMEScopedUserLogLease class from the production Helper after R080 moved user log/result persistence to the unelevated receiver. R349 protected Broker native classes, exact process identity and pipe trust controls remain. R335 was explicitly rebound to current scope as 14 native PE/source/IPC-only checks; historical R335 23/23 applies only to retired direct-write-class behavior and is not inherited. The 30,000/32,000 bounds and no--File policy were not weakened.
  • Current exact-head Windows CI #39271820295 is pending; do not treat this PR as PASS until its final jobs and tests are independently inspected. Linux static workflow/YAML, no-conflict parsing and git diff --check passed on the candidate tree. Hosted Windows original-Helper R349 A/B/adversarial qualification, actual end-user UAC and release sign-off are still separate gates.

Required before any merge

Independently inspect source and retained security invariants; require exact-head native Windows CI, applicable source CodeQL on the changed code, sensitive real-Helper replay tests on the combined tree, actual human partner review and normal protected-branch acceptance. Existing 215 open CodeQL alerts on the old organization main are not resolved by a clean candidate scan. Do not close or bypass the original review threads or change the v1.7.8 release/installed version.

GOD13emad and others added 26 commits October 17, 2026 07:32
…ence

Only the public redacted current Index/Brain/Knowledge mirror: v1.7.8 seven immutable assets and host Build/native Windows CI PASS; real owner opted-in sound preview and 26 natural CPU warning sound API requests paired with 10-minute cooldown, human audio/UI not independently heard/seen. Preserve old Knowledge records. No production binary, installer, release, machinewide or physical AC modifications.
… (R080)

Nested Draft only: asInvoker Setup persists user logs/result after kernel-attested PID, session, nonce and schema. Windows PowerShell 5.1 native no-UAC regression added. High-integrity and OTS-UAC acceptance explicitly remain open.
…ixture

Fix GitHub-hosted test failure without touching existing per-user AppRoot; asInvoker source production method remains identical through internal scoped writer.
…olicy

QA nested merge, preserves original R305/R306 ancestry; restrict pipe ACL to requesting SID, retain secure in-memory long-profile fallback, and update native R304/R305 acceptance contracts. No privileged execution or production main change.
Exact workflow-only parent integration, while leaving established R080 PE/status IPC code and corresponding tests unchanged; no protected ref or release touched.
… IPC

Replace obsolete privileged user-log fixture assertions with SID-before-IPC and no-AppData elevated-write invariants; test actual six-arg in-memory factory and both bounded PowerShell modes without UAC or untrusted -File.
Both Windows security gates now preserve their exact valid/invalid transport proof and truthful fixture flags; test actual PS5.1 receipt conditions against positive, spoofed and oversize values.
…ransports

Keep all embedded SHA, corrupted-payload and exclusive-file-lock negative cases; use actual six-argument status IPC factory and both size-bounded in-memory PowerShell launch formats.
Preserve independent R307-F01 source ancestry, asInvoker R080 IPC and R291-R306 verified security constraints; QA-only merge of native workflow and ACL test.
…it (R089)

Run actual compiled R080 receiver with native Windows PowerShell 5.1, proving valid rapid exit and negative nonce/base64/truncation/oversize with no user file write on rejection. Non-elevated GitHub-hosted gated test; no product source changes.
…r writes (R090)

Enforce exact 18-field scalar schema, boolean/integer types, unique keys, bounded complete object, status/health consistency and fail-closed receipt persistence. Add 4 valid and 34 invalid native PS5.1 tests, retain R089 full protocol regression and UAC boundary.
Restore a broken CI file dependency from the R090 schema update without modifying any Setup, Helper or other security tests; gated ephemeral GitHub Windows only, no UAC.
…nW limit

Win32 alternate-credential process creation rejects an oversized 2295-char encoded test command; replace only non-elevated test source with a statically validated 530-char in-memory command, preserving SID and pipe DACL assertions.
… token

Use official LogonUser plus synchronous WindowsIdentity.Impersonate and fail-closed token cleanup on disposable hosted Windows only; avoids fragile cross-account process exit reporting. No installer code or UAC policy changed.
…PInvoke

Separate the Add-Type statement and receiver construction in Windows PS 5.1; identical token/pipe ACL security checks. Exact prelude independently executed with the compiled source.
…control

R093 hardens hosted cross-SID proof: exact CreateFileW code 5 is required, not generic IOException/timeout; follow with current-SID positive connection against the same real Setup PE pipe. No UAC or product source change.
# Conflicts:
#	.github/workflows/audit-r286-optional-audio-native-recovery.yml
#	.github/workflows/ci.yml
#	build/Test-PawnIO-External-Degrade.ps1
#	build/Test-R293-InMemorySensorHelper-Native.ps1
#	build/Test-R294-PayloadProvenance-Native.ps1
#	build/Test-R295-TrustedBackendZip-Native.ps1
#	build/Test-R298-PinnedPowerShellHost-Native.ps1
#	build/Test-R304-LongInlinePowerShell-Native.ps1
#	installer/TBME_Setup_Elevated_Helper.ps1
#	installer/TaskbarMonitorEnhanced_Setup.cs
Retain exact security ancestry from R349 source+R093 IPC merge; retain occupied/unowned shortcut fail-closed checks and pre-save recheck while replacing creator COM with Unicode ShellLinkW. Review-only, native Windows qualification and second-owner approval pending. R091 source commit d800442.
Preserve original PE source match, reparse and foreign-canary negative checks. Require Write-Log/Write-Result to reject disconnected channels and leave user files untouched; delegated positive asInvoker persistence stays covered by R080 tests. Historical CI 39267484355 failed on undefined StatusPipeClient in obsolete direct-log fixture; no runtime, installation, main or release modified.
…Helper

Observed R334 Windows CI run 39269401572 failure: exact trusted compressed inline Helper with long synthetic user exceeded 30000 safe argument chars. Remove unreachable elevated user-tree writer class, preserve native R349 Broker leaf leases and R080 PID/nonce IPC. Rebind retired R335 fixture to scoped current IPC-only PE/PowerShell/native invariants with 14 typed proofs. Preserve strict encoded/inline command caps and no Temp scripts, main or release changes.
Isolated Windows 2025 / CodeQL v4 pinned to immutable action SHA; two exact source revisions, no app secrets, no repository mutation or findings publication. Analysis execution and finding counts are not security acceptance. QA-only workflow must be reviewed/retired separately before product merge.
Bound original R349 two-Administrator NTFS leaf-sharing test to the org QA branch and GitHub-hosted Windows A/B, without touching original scripts. Require already-admin ephemeral runner, no preexisting product, immutable checked-out SHA and strict cleanup. No UAC bypass, production merge or release. Full helper cold replay with a concurrent writer is separately unverified.
New QA-only workflow uses GitHub pull_request #10 event (not unavailable default-branch dispatch); validate repository, branch, PR refs, physical hosted A/B, current head SHA, fresh product and already-admin process before native fixture. Preserve all fail-closed guards and original files; no owner host, release or main changes.
Hosted run 39275933181 failed before checkout because abbreviated action reference was refused. Apply runner-reported exact 40-character SHA. Security tests and production code unchanged.
QA R350 protocol analysis (requires independent review) added 3 commits October 19, 2026 19:04
… schema

Root cause: real PE Helper emits DEGRADED_PREVIOUS_LAYER_RESTORED / DEGRADED_ROLLBACK_RECOVERY_REQUIRED; asInvoker R090 ValidateSensorStatusJson omitted both, so valid recovery results were rejected after successful IPC peer attestation. Allow only typed, nonhealthy/non-task-installed recovery outputs; add 2 positive and 4 fail-closed negative native schema cases. No protected main, release or user PC changes.
…LETE hold

New review-only Windows 2025/2022 disposable regression creates a genuine production-hashed PREPARED journal and disabled test-owned Scheduler task, invokes actual Setup PE elevated IPC Helper while an independent already-admin process holds DELETE right, requires fail-closed PREPARED, releases handle, requires verified restored original files/task and final clean Uninstall. All evidence is scoped; interactive UAC and concurrent writer during successful copy are excluded. No owner PC, main or release change.
…xture

R350 hosted Windows A/B #39280389822 rejected the fresh-product precondition after Build.ps1 had launched app selftests. Retain pre-Build absence requirement; inspect test-generated AppRoot for reparse/installed exe/active product, move it reversibly to exact RUNNER_TEMP, restore without overwriting post-test residue. No runtime source, user device, UAC or installer changes.
QA R350 native Windows portability added 12 commits October 19, 2026 19:50
Microsoft Directory.Move refuses cross-volume directory relocation. GitHub hosted RUNNER_TEMP can be on D: while LocalApplicationData is C:. Preserve prebuild clean-host proof and reparse checks, but rename Build selftest AppRoot to a unique sibling under the same LocalApplicationData parent, and restore it safely after the fixture. Review-only YAML change; no runtime source, host installation, release or protected branch modification.
…DELETE handle release

Four R350 Windows receipts on 6887803 independently proved real authenticated IPC Helper returns DEGRADED_ROLLBACK_RECOVERY_REQUIRED while PREPARED journal stays intact. Harness then called Get-FileHash on a live DELETE-locked leaf, causing expected Windows sharing violation and false negative. Preserve fail-closed journal/task checks during lock; keep exact leaf hash after actor exit and before the fixture mutates leaf. Test-only file, no production changes.
R351 fail-closed: remove bare-name PATH fallback, reject missing/redirected system schtasks, build testable fixed-argument ProcessStartInfo. Add 7 bounded native Windows checks including hostile PATH shadow without launching scheduled tasks. Not an owner human approval or release gate.
Exact-head hosted Windows #39302544260 passed real pinned schtasks and PATH-shadow checks; missing-system negative guard threw intended System.IO.InvalidDataException. The test-only refusal classifier erroneously rejected its subclass type. Preserve all guard conditions and process-no-launch invariant, change only this exception classification.
…cutables

R352 removes four bare-name ShellExecute paths in diagnostics and context menu, permits only trusted non-reparse OS files, quotes canonical explorer folder and fails closed without PATH fallback. Native Windows reflection test verifies 7 fixed-path and hostile-shadow scenarios without starting UI or touching owner desktop. Draft security PR only; no release or human approval.
Windows CI 39304984028 failed at test reflection before first check, converting PowerShell PSObject to System.String. Use explicit System.Object[] containing System.String values for pinned factory calls; no native process executes. No runtime security code changed.
…ecute

R353 closes a leaf-level update installer verification-to-launch file replacement gap: canonical versioned cache file, strict SHA-256 on a read-only FileShare.Read handle held through Process.Start, no delete/write sharing, no untrusted command arguments. Add twelve GitHub-hosted Windows native/hostile-root negative assertions without executing installer. Ancestor-rename and actual interactive UAC remain separate acceptance.
…ndows EXE

R354 expands existing R353 hosted-only native regression from 12 to 13 checks by compiling a no-side-effect net48 self-exit fixture under fresh runner temp and launching exactly that SHA-pinned file with fixed no-argument ShellExecute descriptor, expecting exit code 27. Never launches production installer, UAC or owner PC process. No product runtime source changed.
… AppData Uninstall.exe

R355 current-version immutable GitHub release API, canonical exact tag/URL/asset/digest/size and duplicate-asset fail-closed checks. Repair downloads the verified 1.7.8 Setup, preserves existing 1.7.8 updater contract, keeps SHA-validated file handle until consent-requested launch, and never elevates mutable AppData Uninstall.exe directly. Native Windows regression verifies 19 hostile/valid metadata cases plus SHA-pinned runas descriptor without actually requesting UAC. Owner installed app untouched, no signing/release/merge.
…d Setup

R356 fresh shortcut now targets Main --repair-sensors rather than user-writable Uninstall.exe /repair-sensors. Exact argument dispatch bypasses monitor mutex and requires explicit user decision, official immutable release validation, SHA-pinned Setup and native UAC. Uninstall recognizes only exact owned modern or legacy shortcut tuples; foreign links remain untouched. Add 15 negative/COM native checks, extend R323 ownership cases and update R319 hosted fresh-install expectation. Existing installed legacy links need separately tested upgrade migration before promotion.
Hosted Windows CI 39321318643 rejected R356 PowerShell parser before execution. Parenthesize three method expressions and preserve typed string-array negative scenarios. Product security code unchanged.
…r in-place upgrade

R357 migrates only an exact product-owned historic Uninstall.exe /repair-sensors ShellLink to Main --repair-sensors after verified old-version UpgradeExisting commit. Uses unique same-directory staging, File.Replace backup and byte-hash/original-owner assertions, bounded rollback on postcondition failure, foreign/absent/idempotent links preserved; commit success message discloses conflicts instead of assuming approval. Extend disposable native R356 test to 21 COM/negative cases. Current public v1.7.8 installation remains untouched and same-version maintenance requires future owner/release acceptance.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants