0000000000000000000000000000000000000000 2d849e893859baa488ff1aef787a4c7b6bd9b990 Reavo End <decidel@gmail.com> 1775456810 -0700	branch: Created from main
2d849e893859baa488ff1aef787a4c7b6bd9b990 0dd6652f612104055228365a9ef897dbfef365c3 Reavo End <decidel@gmail.com> 1775459237 -0700	commit: docs: start milestone v3.0 Backglow Driver
0dd6652f612104055228365a9ef897dbfef365c3 4ce9b8ea6cd004ee878dbcdbc5bdf884888a8305 Reavo End <decidel@gmail.com> 1775461483 -0700	commit: docs: complete project research
4ce9b8ea6cd004ee878dbcdbc5bdf884888a8305 2d36484f970dec3bb5889fe53e3f19f56906107f Reavo End <decidel@gmail.com> 1775462824 -0700	commit: docs: define milestone v3.0 requirements
2d36484f970dec3bb5889fe53e3f19f56906107f 39cc86240d66a2499fa2b1e3f4a0bb9698d6659f Reavo End <decidel@gmail.com> 1775464772 -0700	commit: docs: create milestone v3.0 roadmap (4 phases)
39cc86240d66a2499fa2b1e3f4a0bb9698d6659f 4b1281d946345a6af0093bc399896825a8491394 Reavo End <decidel@gmail.com> 1775790041 -0700	commit: feat: auto-detect Steam install path from Windows Registry
4b1281d946345a6af0093bc399896825a8491394 46347084308d00d257279dc385dd9849f52a617f Reavo End <decidel@gmail.com> 1775790079 -0700	commit: docs(quick-260409-roi): Update installer for non-standard Steam installation locations
46347084308d00d257279dc385dd9849f52a617f 8e8711bc92d90a06c21b2040b9b3071a95ed3fe8 Reavo End <decidel@gmail.com> 1776565794 -0700	commit: docs(14): capture phase context
8e8711bc92d90a06c21b2040b9b3071a95ed3fe8 6f5a9c68bde1b18b5337b12c3362f57ce592e280 Reavo End <decidel@gmail.com> 1776565798 -0700	commit: docs(state): record phase 14 context session
6f5a9c68bde1b18b5337b12c3362f57ce592e280 fed96d0f2f73ddfb5415fff028eb34f860e39b68 Reavo End <decidel@gmail.com> 1776566993 -0700	commit: docs(14): research usb serial foundation and led control
fed96d0f2f73ddfb5415fff028eb34f860e39b68 9482e7479103216210c1b3c13be9ca1e602ee342 Reavo End <decidel@gmail.com> 1776567062 -0700	commit: docs(14): add validation strategy
9482e7479103216210c1b3c13be9ca1e602ee342 7d04a7c2757ec5d75a8bd884cbcd9b97a8b45678 Reavo End <decidel@gmail.com> 1776567910 -0700	commit: docs(14): create phase plan (spike + LED core + integration)
7d04a7c2757ec5d75a8bd884cbcd9b97a8b45678 2e96c78313630742333ead0675a7efbed70682af Reavo End <decidel@gmail.com> 1776568105 -0700	commit: docs(14): mark research open questions resolved
2e96c78313630742333ead0675a7efbed70682af 2e33aba37a7e7a280f8ee3f09e8609c733d8f179 Reavo End <decidel@gmail.com> 1776576445 -0700	merge worktree-agent-a1c3a184: Fast-forward (no commit created; -m option ignored)
2e33aba37a7e7a280f8ee3f09e8609c733d8f179 11e3d0d0c68e3a0e1fa7a24bd0c884c0e7b48912 Reavo End <decidel@gmail.com> 1776576459 -0700	commit: docs(14-01): mark plan complete in ROADMAP progress table
11e3d0d0c68e3a0e1fa7a24bd0c884c0e7b48912 1788eec2f7a57412ca6047e109cad0839a52aff2 Reavo End <decidel@gmail.com> 1776576682 -0700	commit: feat(14-02): add ILedTransport impls — WledSerialTransport + WledTpm2Transport stub
1788eec2f7a57412ca6047e109cad0839a52aff2 603f4f4f889faab8b9ec4b8b698e5cc17f0d4c81 Reavo End <decidel@gmail.com> 1776576784 -0700	commit: feat(14-02): add LedController with cv-driven writer thread and brightness ceiling
603f4f4f889faab8b9ec4b8b698e5cc17f0d4c81 a0bd86d1e2e1c72d50d6988f663b3ea60f855538 Reavo End <decidel@gmail.com> 1776576851 -0700	commit: chore(14-02): wire backglow LED subsystem under ENABLE_BACKGLOW
a0bd86d1e2e1c72d50d6988f663b3ea60f855538 d6b9f8c4c56de7fcf711807fcf037ca031d928b7 Reavo End <decidel@gmail.com> 1776576979 -0700	commit: docs(14-02): complete LED core module plan
d6b9f8c4c56de7fcf711807fcf037ca031d928b7 4b910a1d111b8c554a559611f9c75df7d2146ec9 Reavo End <decidel@gmail.com> 1776577029 -0700	commit: docs(14-02): mark plan complete in ROADMAP progress table
4b910a1d111b8c554a559611f9c75df7d2146ec9 09f8f0d196253643a6a55766097c9cf1c3d21058 Reavo End <decidel@gmail.com> 1776583425 -0700	merge worktree-agent-af54875f: Fast-forward (no commit created; -m option ignored)
09f8f0d196253643a6a55766097c9cf1c3d21058 b27c869c6a485c5e1a5df2530de860f83436be74 Reavo End <decidel@gmail.com> 1776583711 -0700	commit: docs(phase-14): complete phase execution
b27c869c6a485c5e1a5df2530de860f83436be74 454780374534ae33ee170d278f96cb2dd4e52b9a Reavo End <decidel@gmail.com> 1776583739 -0700	commit: docs(phase-14): evolve PROJECT.md after phase completion
454780374534ae33ee170d278f96cb2dd4e52b9a b9a0047f83c1100e48f5031bdd8bfec4ef97a48b Reavo End <decidel@gmail.com> 1776584258 -0700	commit: docs(phase-14): add security threat verification
b9a0047f83c1100e48f5031bdd8bfec4ef97a48b 1e92b24f2ed968eda68d362db3e7df9025dc672a Reavo End <decidel@gmail.com> 1776588114 -0700	commit: docs(15): capture phase context
1e92b24f2ed968eda68d362db3e7df9025dc672a 857ff63fb70784e8a3ccf73c0e3273daada688a7 Reavo End <decidel@gmail.com> 1776588118 -0700	commit: docs(state): record phase 15 context session
857ff63fb70784e8a3ccf73c0e3273daada688a7 88e2fdedc5738d5c6135a44713f3eac687e90b0e Reavo End <decidel@gmail.com> 1776590577 -0700	commit: docs(15): add research and validation strategy
88e2fdedc5738d5c6135a44713f3eac687e90b0e 5f50caa99b34179c983b9319b4bc77c5fd14b617 Reavo End <decidel@gmail.com> 1776591863 -0700	commit: docs(15): create phase plan (4 plans, 3 waves)
5f50caa99b34179c983b9319b4bc77c5fd14b617 d7abc4caf582c2128e3222b164073c95b14f69d3 Reavo End <decidel@gmail.com> 1776593075 -0700	cherry-pick: feat(15-01): implement SetupAPI VID/PID COM port scan helper (LHWD-04)
d7abc4caf582c2128e3222b164073c95b14f69d3 447bf67b3a7a14a01d7c574b8d5a723f81c8f443 Reavo End <decidel@gmail.com> 1776593076 -0700	cherry-pick: docs(15-01): add SUMMARY for COM port scan helper plan
447bf67b3a7a14a01d7c574b8d5a723f81c8f443 baf0e69027262083c25df6a8af73c167621aa705 Reavo End <decidel@gmail.com> 1776593076 -0700	cherry-pick: feat(15-02): add WledDdpTransport class declaration
baf0e69027262083c25df6a8af73c167621aa705 427857a18c39dc338a82a5d11386e6121fb8ad56 Reavo End <decidel@gmail.com> 1776593076 -0700	cherry-pick: feat(15-02): implement WledDdpTransport — DDP encoder + HTTP probe
427857a18c39dc338a82a5d11386e6121fb8ad56 4b7093375a163ba41d4e16fc2ef4986092ac31a5 Reavo End <decidel@gmail.com> 1776593076 -0700	cherry-pick: docs(15-02): complete WledDdpTransport plan with summary
4b7093375a163ba41d4e16fc2ef4986092ac31a5 9652c629a3a035370c6af3061dab746a61f29473 Reavo End <decidel@gmail.com> 1776593815 -0700	cherry-pick: feat(15-03): wire Wave 1 sources + ws2_32/setupapi link in CMake
9652c629a3a035370c6af3061dab746a61f29473 32e3e4c8e6ca4cf2d9b9933ea43665c6f55806d5 Reavo End <decidel@gmail.com> 1776593815 -0700	cherry-pick: feat(15-03): InitBackglow factory + WSA pairing + USB scan-fallback
32e3e4c8e6ca4cf2d9b9933ea43665c6f55806d5 8d590bf90efe9b68da54d0dbf29ae8365cc58c5a Reavo End <decidel@gmail.com> 1776593815 -0700	cherry-pick: feat(15-03): backglow status verb + hotplug rescan + 1024-byte pipe buffer
8d590bf90efe9b68da54d0dbf29ae8365cc58c5a 075474b2713ecbe2c426612882434e63577a1790 Reavo End <decidel@gmail.com> 1776593815 -0700	cherry-pick: feat(15-03): CLI accepts 'backglow status' + widens response buffer to 1024
075474b2713ecbe2c426612882434e63577a1790 af68b59b0387da85384dfee4aa8ad26514a605c5 Reavo End <decidel@gmail.com> 1776593815 -0700	cherry-pick: docs(15-03): complete driver/CLI wiring plan with summary
af68b59b0387da85384dfee4aa8ad26514a605c5 85818a5eef508648ecd81a98cffd5f90d4b3d441 Reavo End <decidel@gmail.com> 1776594244 -0700	cherry-pick: docs(15-04): scaffold 15-SMOKE.md + populate 15-VALIDATION.md per-task map
85818a5eef508648ecd81a98cffd5f90d4b3d441 f35e8a84135d19e487e435fc42fa5c6acbef978b Reavo End <decidel@gmail.com> 1776596369 -0700	commit: test(15-04): SMOKE PASS — fill 15-SMOKE.md verdicts
f35e8a84135d19e487e435fc42fa5c6acbef978b 70e6f63e966c77877e5243930340f29a499c9f32 Reavo End <decidel@gmail.com> 1776596670 -0700	cherry-pick: feat(15-04): flip 15-VALIDATION.md nyquist_compliant true + green all tasks
70e6f63e966c77877e5243930340f29a499c9f32 eaaec9159e39cdf526ca2a59fa80f08695d64fb5 Reavo End <decidel@gmail.com> 1776596670 -0700	cherry-pick: docs(15-04): complete Hardware UAT plan with SUMMARY
eaaec9159e39cdf526ca2a59fa80f08695d64fb5 8bc95f84419b5248bbb0e60f6fabe964817efb30 Reavo End <decidel@gmail.com> 1776596969 -0700	commit: docs(15): add code review report
8bc95f84419b5248bbb0e60f6fabe964817efb30 b96d3d6ea15f25ecda596ed44da4ae788e46d513 Reavo End <decidel@gmail.com> 1776597239 -0700	commit: docs(phase-15): complete phase execution
b96d3d6ea15f25ecda596ed44da4ae788e46d513 1568e0eb05da97749933f7848f47c5b03c0a55e0 Reavo End <decidel@gmail.com> 1776597293 -0700	commit: docs(phase-15): evolve PROJECT.md after phase completion
1568e0eb05da97749933f7848f47c5b03c0a55e0 f6a222cde0f165f9e2ef00772395b2502000d445 Reavo End <decidel@gmail.com> 1776599082 -0700	commit: fix(15): CR-01 synchronize backglow shared state between hotplug and RunFrame threads
f6a222cde0f165f9e2ef00772395b2502000d445 8accb553ca4d7099d9a9e0362f44ee392116e16a Reavo End <decidel@gmail.com> 1776599147 -0700	commit: fix(15): WR-01 document HDEVINFO cleanup invariant in ScanForUsbComPorts
8accb553ca4d7099d9a9e0362f44ee392116e16a a72fa5f91f6acf34742c745bd056babd8b94ef86 Reavo End <decidel@gmail.com> 1776599161 -0700	commit: fix(15): WR-02 match only first REG_MULTI_SZ string in SPDRP_HARDWAREID scan
a72fa5f91f6acf34742c745bd056babd8b94ef86 657c58116d5636d65aca8e97d7a526034292f31e Reavo End <decidel@gmail.com> 1776599183 -0700	commit: fix(15): WR-03 initialize exitCode to STILL_ACTIVE in RunLighthouseCommand poll loop
657c58116d5636d65aca8e97d7a526034292f31e 8fd5a9cc4c7a0e48250301aca665dc1d066ded8a Reavo End <decidel@gmail.com> 1776599204 -0700	commit: fix(15): WR-04 warn on SetNamedPipeHandleState failure in CLI client
8fd5a9cc4c7a0e48250301aca665dc1d066ded8a 2ca12774019760ee3fe07dd11af897ccc6efa4af Reavo End <decidel@gmail.com> 1776599263 -0700	commit: docs(15): add code review fix report
2ca12774019760ee3fe07dd11af897ccc6efa4af f0d216dcd4febec75becfdb06ddd780f6b837730 Reavo End <decidel@gmail.com> 1776599614 -0700	commit: fix(15): IN-01 DDP sequence wraps 1..15 (include 15)
f0d216dcd4febec75becfdb06ddd780f6b837730 5794412407355408796d205fb5a19ca826b04635 Reavo End <decidel@gmail.com> 1776599631 -0700	commit: fix(15): IN-02 guard COM port sort against short PortName values
5794412407355408796d205fb5a19ca826b04635 453152c4321f0b6c1619b8df79a7c5082bd35348 Reavo End <decidel@gmail.com> 1776599670 -0700	commit: fix(15): IN-03 parameterize deploy script paths via $PSScriptRoot
453152c4321f0b6c1619b8df79a7c5082bd35348 eec214c83ebec87cffcf9267dcb801012d60f4c3 Reavo End <decidel@gmail.com> 1776599697 -0700	commit: fix(15): IN-04 scan only HTTP body for WLED count JSON
eec214c83ebec87cffcf9267dcb801012d60f4c3 0a65380e53b9e5e3ab6cc164e3c32fdf530b1809 Reavo End <decidel@gmail.com> 1776599715 -0700	commit: fix(15): IN-05 use %-9s for backglow status label alignment
0a65380e53b9e5e3ab6cc164e3c32fdf530b1809 d0d9677d2480a57540078565561a04e5876c3b38 Reavo End <decidel@gmail.com> 1776599803 -0700	commit: docs(15): update code review fix report (iter 2 info fixes)
d0d9677d2480a57540078565561a04e5876c3b38 5c7d5ac1d45b4fbefbf3c230991776ae10683398 Reavo End <decidel@gmail.com> 1776606488 -0700	commit: docs(16): capture phase context
5c7d5ac1d45b4fbefbf3c230991776ae10683398 5ffd9dd45f29e350138ae5f6753bd2226122dcbb Reavo End <decidel@gmail.com> 1776606492 -0700	commit: docs(state): record phase 16 context session
5ffd9dd45f29e350138ae5f6753bd2226122dcbb 102a4a8ae9553f3e5db0f3aad5644317fde238fa Reavo End <decidel@gmail.com> 1776649989 -0700	commit: docs(16): research phase domain
102a4a8ae9553f3e5db0f3aad5644317fde238fa fbf674acb5465548b0bc404236870dc9c4a42fa3 Reavo End <decidel@gmail.com> 1776650075 -0700	commit: docs(16): add validation strategy
fbf674acb5465548b0bc404236870dc9c4a42fa3 347480751b0f3d7f0d653cb2568300264dc68bf8 Reavo End <decidel@gmail.com> 1776651155 -0700	commit: docs(16): create phase plan (4 plans, 3 waves — scaffold, daemon core, driver lifecycle, OSCQuery)
347480751b0f3d7f0d653cb2568300264dc68bf8 23c621a4d757329227cd23a6498e3ade50f86424 Reavo End <decidel@gmail.com> 1776653820 -0700	merge worktree-agent-a7bb3542: Fast-forward (no commit created; -m option ignored)
23c621a4d757329227cd23a6498e3ade50f86424 2f299396afd84a0c8a322f48ad98d8948590d5af Reavo End <decidel@gmail.com> 1776654520 -0700	merge worktree-agent-abc9a98a: Fast-forward (no commit created; -m option ignored)
2f299396afd84a0c8a322f48ad98d8948590d5af 506ead09db6ad1e66ce9981d1b038d8be40c69d4 Reavo End <decidel@gmail.com> 1776655454 -0700	merge worktree-agent-a3da3db5: Fast-forward (no commit created; -m option ignored)
506ead09db6ad1e66ce9981d1b038d8be40c69d4 dde082474e59d65976588dab8e7e8d3ca822f3dd Reavo End <decidel@gmail.com> 1776655837 -0700	commit: fix(16-02): give daemon dedicated pipe to avoid FlushFileBuffers server_main hang
dde082474e59d65976588dab8e7e8d3ca822f3dd 3233e958d7c31f0e215d5aa41de601df9fddb8f8 Reavo End <decidel@gmail.com> 1776663201 -0700	commit: docs(16-02): complete driver lifecycle plan summary
3233e958d7c31f0e215d5aa41de601df9fddb8f8 a872f0ca40e9142516d45621484db940cf643156 Reavo End <decidel@gmail.com> 1776663921 -0700	merge worktree-agent-a147d214: Fast-forward (no commit created; -m option ignored)
a872f0ca40e9142516d45621484db940cf643156 b7a52689623e545cba7ec9ba92abd6162161b6e9 Reavo End <decidel@gmail.com> 1776664374 -0700	commit: docs(16): add code review report
b7a52689623e545cba7ec9ba92abd6162161b6e9 06c19dc89f81e5575bfe1619898658d0a657645f Reavo End <decidel@gmail.com> 1776664696 -0700	commit: test(16): persist human verification items as UAT
06c19dc89f81e5575bfe1619898658d0a657645f 5cd13530d31ca492bbc9c0b5e61a58764fac1fc6 Reavo End <decidel@gmail.com> 1776667171 -0700	commit: test(16): record UAT results (2/3 pass + VRCH-01f mDNS gap)
5cd13530d31ca492bbc9c0b5e61a58764fac1fc6 4d95536fb35a976073d5726beedf0ed57bbe3cdf Reavo End <decidel@gmail.com> 1776667186 -0700	commit: docs(phase-16): complete phase execution
4d95536fb35a976073d5726beedf0ed57bbe3cdf 15fc247f321dfc5a4c74c828e0499fb950462c1d Reavo End <decidel@gmail.com> 1776667221 -0700	commit: docs(phase-16): evolve PROJECT.md after phase completion
15fc247f321dfc5a4c74c828e0499fb950462c1d d8e6308e1bfddd443509bcc9810dd09e866a02fb Reavo End <decidel@gmail.com> 1776667470 -0700	commit: fix(16): CR-01/WR-03 eliminate handle-lifetime race between StopBackglowDaemon and watchdog
d8e6308e1bfddd443509bcc9810dd09e866a02fb 063430960aac2684ba03c945983509146c2843f4 Reavo End <decidel@gmail.com> 1776667597 -0700	commit: fix(16): WR-01/WR-06 harden OSC recv against WSAECONNRESET + signal stop on unexpected thread exit
063430960aac2684ba03c945983509146c2843f4 84c8bb5ed79aa1c5be713a81ba139bbed4d1dec9 Reavo End <decidel@gmail.com> 1776667646 -0700	commit: fix(16): WR-02 close pipe on write timeout to prevent stale-handle flood
84c8bb5ed79aa1c5be713a81ba139bbed4d1dec9 aa3a3eddc98dd8c3438706516a9505344f73d7e0 Reavo End <decidel@gmail.com> 1776667649 -0700	commit: fix(16): WR-04 guard MdnsAdvertiser Start against double-call and thread ctor throw
aa3a3eddc98dd8c3438706516a9505344f73d7e0 927076f5d08b0fd38ea6cb7c4c67cf70cb5b187b Reavo End <decidel@gmail.com> 1776667694 -0700	commit: fix(16): WR-05 close OscQuery listen socket if thread ctor throws
927076f5d08b0fd38ea6cb7c4c67cf70cb5b187b 273f85f6733c3638afa629400cd1a5abd5b7aaad Reavo End <decidel@gmail.com> 1776667695 -0700	commit: fix(16): WR-07 handle ERROR_MORE_DATA in PollDaemonPipe to avoid corrupted parsing
273f85f6733c3638afa629400cd1a5abd5b7aaad bc195a6fd51384e66ec36d7b75d7c49bcb723622 Reavo End <decidel@gmail.com> 1776667758 -0700	commit: docs(16): add code review fix report
bc195a6fd51384e66ec36d7b75d7c49bcb723622 8c63df1b5662d25264842327b2e729237c254cc8 Reavo End <decidel@gmail.com> 1776668212 -0700	commit: docs(16): update code review after fix pass
8c63df1b5662d25264842327b2e729237c254cc8 ba49866811193481d43ed9bd47b6662bc2b11b72 Reavo End <decidel@gmail.com> 1776672729 -0700	commit: fix(16): WR-01 promote m_hBackglowJob to std::atomic<HANDLE>
ba49866811193481d43ed9bd47b6662bc2b11b72 bf1ee7cf22d0e4275ec7d3cd4570403fe383cffb Reavo End <decidel@gmail.com> 1776672745 -0700	commit: fix(16): WR-02 WriterThread escalates to g_stop on sustained pipe disconnect
bf1ee7cf22d0e4275ec7d3cd4570403fe383cffb 1feb08f98f784d10f4ab4af4570001dfc4aa945e Reavo End <decidel@gmail.com> 1776672766 -0700	commit: fix(16): IN-01 bail SpawnBackglowDaemon if Stop raced in before handle publish
1feb08f98f784d10f4ab4af4570001dfc4aa945e 8b9306d704ae0da8c1926bc3fe4237050ddec3e1 Reavo End <decidel@gmail.com> 1776672779 -0700	commit: refactor(16): IN-02 drop unreachable HOST_INFO string-equality clause
8b9306d704ae0da8c1926bc3fe4237050ddec3e1 95bf067dcb96dcb78b63ba3e9ac7c1d98aeb7922 Reavo End <decidel@gmail.com> 1776672799 -0700	commit: refactor(16): IN-03 remove unused MdnsAdvertiser fields
95bf067dcb96dcb78b63ba3e9ac7c1d98aeb7922 2fd9fc195d954ecba9244119cdbfb1a9c43a76c2 Reavo End <decidel@gmail.com> 1776672823 -0700	commit: fix(16): IN-04 use sleep_until accumulated deadlines to kill startup-anim drift
2fd9fc195d954ecba9244119cdbfb1a9c43a76c2 5b287cd877b82d1d63c3a3664def81cd23e14904 Reavo End <decidel@gmail.com> 1776672874 -0700	commit: perf(16): IN-05 reuse single Event handle across PipeClient overlapped writes
5b287cd877b82d1d63c3a3664def81cd23e14904 bd182982876c784dd9cb32bf091526a0b0e12ee4 Reavo End <decidel@gmail.com> 1776672915 -0700	commit: fix(16): IN-06 add 90s periodic mDNS re-announce in ListenLoop
bd182982876c784dd9cb32bf091526a0b0e12ee4 d20a3ae190312dd4484c3a10440b5a466cf1d94d Reavo End <decidel@gmail.com> 1776673032 -0700	commit: docs(16): update code review fix report (iter 2)
d20a3ae190312dd4484c3a10440b5a466cf1d94d 30d87804f6ae2b0d3af4fa70a7eb52bb77c7b605 Reavo End <decidel@gmail.com> 1776678198 -0700	commit: docs(16): add iter-3 code review report
30d87804f6ae2b0d3af4fa70a7eb52bb77c7b605 a1776990c8f007be7dab9e34a69e6aca89a16730 Reavo End <decidel@gmail.com> 1776679001 -0700	commit: fix(16): WR-01 filter silence-fade resets to whitelisted Backglow OSC only
a1776990c8f007be7dab9e34a69e6aca89a16730 5d4e88a24228155a91cd2311218d234177d91bab Reavo End <decidel@gmail.com> 1776679023 -0700	commit: fix(16): WR-02 poll g_stop in main() so OscThread escalation actually exits daemon
5d4e88a24228155a91cd2311218d234177d91bab 530d77596e1fa03624909defbc217cc87e36a8aa Reavo End <decidel@gmail.com> 1776679076 -0700	commit: fix(16): WR-03 retry watchdog respawn on Spawn failure instead of exiting
530d77596e1fa03624909defbc217cc87e36a8aa 281b87f5e14af44e5ff0cc54dcbf5ccf5593bf3c Reavo End <decidel@gmail.com> 1776679099 -0700	commit: fix(16): WR-04 clamp WriterThread backglow-fill snprintf against size_t underflow
281b87f5e14af44e5ff0cc54dcbf5ccf5593bf3c 667a12705669cb5ee561ab6b865dc262978834c6 Reavo End <decidel@gmail.com> 1776679198 -0700	commit: refactor(16): IN-01 move MdnsImpl ownership into MdnsAdvertiser via unique_ptr
667a12705669cb5ee561ab6b865dc262978834c6 245bb338cadb27b82fd8b2462c59dc921e6aa6aa Reavo End <decidel@gmail.com> 1776679222 -0700	commit: fix(16): IN-02 log WSAIoctl(SIO_UDP_CONNRESET) failure on loopback UDP bind
245bb338cadb27b82fd8b2462c59dc921e6aa6aa 9169bf2ae02a0e1b198022346a6a2982df3656dc Reavo End <decidel@gmail.com> 1776679244 -0700	commit: fix(16): IN-03 use deadline-based mDNS re-announce to eliminate cadence drift
9169bf2ae02a0e1b198022346a6a2982df3656dc c25fd2e39f76d8801f25a9a979e6df5bd970298a Reavo End <decidel@gmail.com> 1776679360 -0700	commit: docs(16): add code review fix report (iter 3)
c25fd2e39f76d8801f25a9a979e6df5bd970298a 3fca5651da843c92c329fa8e8998f446f24c77d1 Reavo End <decidel@gmail.com> 1776680523 -0700	commit: docs(16): add code review report
3fca5651da843c92c329fa8e8998f446f24c77d1 98f937394d1a96e7218acc93bd3fca4ed439f99b Reavo End <decidel@gmail.com> 1776680943 -0700	commit: fix(16): WR-01 cap consecutive spawn failures in watchdog null-handle retry
98f937394d1a96e7218acc93bd3fca4ed439f99b 1e1e25e5437963d8d9d3ac2267b8e5f4f7e8f984 Reavo End <decidel@gmail.com> 1776680986 -0700	commit: fix(16): WR-02 restrict daemon pipe DACL to SYSTEM + Admins + Interactive user
1e1e25e5437963d8d9d3ac2267b8e5f4f7e8f984 8080620a6a75d0a3dc0e3cd4771fb19ad9228a52 Reavo End <decidel@gmail.com> 1776681005 -0700	commit: fix(16): WR-03 always yield in mDNS listen loop to prevent CPU busy-spin
8080620a6a75d0a3dc0e3cd4771fb19ad9228a52 990c79ba73042733592963efbc601de1ad175775 Reavo End <decidel@gmail.com> 1776681019 -0700	commit: refactor(16): IN-01 tighten OSCQuery HOST_INFO path to exact match
990c79ba73042733592963efbc601de1ad175775 239d6cee9f6b2f9b77ea0cc35f2fbedf8eac6157 Reavo End <decidel@gmail.com> 1776681033 -0700	commit: fix(16): IN-02 mark vrserver stdout/stderr inheritable for daemon logs
239d6cee9f6b2f9b77ea0cc35f2fbedf8eac6157 034f8bf4d0483bf25b4533768d153bf702bbba43 Reavo End <decidel@gmail.com> 1776681044 -0700	commit: docs(16): IN-03 clarify argv[1]-forces-D19-fallback contract in main.cpp
034f8bf4d0483bf25b4533768d153bf702bbba43 73a2d3a3de3eade931e5385ea2e167e714830012 Reavo End <decidel@gmail.com> 1776681058 -0700	commit: fix(16): IN-04 log GetLastError on stdin ReadFile failure for diagnostics
73a2d3a3de3eade931e5385ea2e167e714830012 f93f3d8f1403677c6a909d52e110b88ba0b78482 Reavo End <decidel@gmail.com> 1776681188 -0700	commit: docs(16): add code review fix report (iter 4)
f93f3d8f1403677c6a909d52e110b88ba0b78482 33bd9d3785c742da761b80129d66354bdfd91935 Reavo End <decidel@gmail.com> 1776681740 -0700	commit: docs(16): add code review report (iter 5)
33bd9d3785c742da761b80129d66354bdfd91935 877d35c44f9cd788a7ac8a38b7cd088d2bba3c16 Reavo End <decidel@gmail.com> 1776683416 -0700	commit: docs(16): resolve open questions + mark plan tasks complete
877d35c44f9cd788a7ac8a38b7cd088d2bba3c16 013f41079c113e8455a6f8314c1117c1cee13f5d Reavo End <decidel@gmail.com> 1776683445 -0700	commit: chore(16): mark phase 16 complete in STATE.md
