mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-10-27 14:07:31 +00:00
7e7a46244a
## What changed and why - Preserve saved SMTP rate limits through unrelated edits and allow settings edits while email remains switched off. Failed webhook saves now retain the draft until the save owner acknowledges success; pending saves prevent conflicting local edits. An uncertain create response prompts checking saved destinations before a deliberate retry, not automatic replay. - Reject incomplete guest filesystem inventories as evidence of healthy recovery or volume removal. Malformed replies could previously turn a genuine 98% disk breach into 0%. Both collectors retain only the previous complete observation within its original age bound; complete ordinary readings can still report genuine zero and recovery. - Replace root-password/implicit-TLS node API examples with scoped platform tokens in a private file. Keep ICMP permission guidance and diagnostics scoped to the selected observation host without reinstalling or replacing privilege restrictions. Fresh-agent guidance distinguishes configuration lookup authentication from host reporting and bootstrap enrolment without rotating credentials or widening grants. - Ensure failed E2E setup reaches owned teardown; admit shared fixtures before either browser tier and retain completed stable-tier failure reports before probation can time out. These repairs respond to demonstrated save, filesystem-completeness, copied-guidance and CI lifecycle failures in the existing product and its tests. Related to #2439, #2619 and Discussion #2769. Source controls and guidance do not establish those reports' causes, native recovery or ordinary notification delivery. PBS password-onboarding trust is separate. ## Included reviewed source Complete unpublished range: `9a32396fe2c806c6ed1856b74a8fa7a03f050984..fbbd353d6660400b80b7d9356b1ea5700702c38b` (22 original non-merge commits and 15 additive merges). - SMTP: `9734adad`, `27576b90`, `d25c56ad`, `73f87729`. - Webhook acknowledgement: `84c815d7`, `fcaaabe2`, `c4fa4669`, `731dff12`, containing composition `0c6c087a` and qualified test correction `76244218`. - Guest filesystem completeness: `615fa299`. - E2E cleanup/admission: `bf1dbbf1`, `7027e7f7`, `5385cb09`, `f2a80606`. - Node API/ICMP/authentication guidance: `299bddee`, `b65ff95f`, `f8a33376`, `341de164`; matching ICMP diagnostic repair `5d8ea82d`. - Integration qualification: private fixture creation `b4976947`; original recipe-boundary correction `83adaf86` is retained in history, with final test bytes taken from independently reviewed nine-request catalogue repair `13206d2f` at integration `ec01ecf0`. PR2768's original head `a33e5449` cannot land independently: Build and Test run `38026567559` rejects the added ninth API recipe in four tests, and CodeQL check `114138740587` flags the node test fixture's creation. This update includes their additive repairs, without weakening either gate or requesting an unchanged-head retry. All accepted identities and ancestry, including original failure-bearing commits, remain intact. Published upstream through `9a32396f` is incorporated additively by `fbbd353d`, preserving the starting reviewed tip `ec01ecf0`. This includes the Patrol contract, full drawer-identity improvements, recovery-query trimming and alert-test cleanup. The bounded refresh receipt records the exact upstream and unchanged pre-merge source. ## Validation and limits Retained reviewed candidate evidence includes: - Qualified webhook-containing frontend: 23,189 passing tests, type/lint/build/budget checks, and parent-bound desktop/phone browser proof. SMTP's earlier 23,183-test qualification and browser controls remain attributed; three Windows runtime skips remain. - Guest filesystem current/parent discrimination, affected normal/race suites, vet and genuine embedded build. Recorded latency overruns, skips and original incomplete reporting remain adverse or unexecuted, not passed budgets. - ICMP diagnostic: 32 focused passing identities, 11 parent failures with 21 compatibility controls, full probe/agent normal/race suites, vet and agent build; six native/systemd skips remain. - Nine-request API catalogue: parent four failures; repaired whole installtests package (501 methods, 14 skips), vet and focused race/private-umask controls. Documentation and E2E candidates retain their copied-command and real-process controls. Publication provenance, whitespace, CI-equivalent per-commit canonical completion checks and final browser-receipt coverage pass. Existing browser-proved runtime bytes remain unchanged; eight final frontend paths have in-range coverage. Additional containing-source checks: - `source-gfjfoexn` at starting reviewed head `ec01ecf0`: selected API-guidance Go checks, eight node-recipe tests, sixteen API-authentication documentation tests and API mirror comparison all exit zero. Complete 2,803-byte output hash matches; guest ready and stopped. - Lightweight final guidance/workflow fixtures pass 4 agent-authentication, 6 ICMP and 19 E2E-image tests. The confined-host missing-command diagnostic assertion failed (9/10 lifecycle controls); both same-input disposable-VM executions pass all 22 lifecycle/readiness controls. The host failure is retained, not declared passed or assigned a speculative cause. - After additive upstream composition, `source-lj_mx166` at exact final head `fbbd353d`: all 22 lifecycle/readiness controls and all three changed guide mirrors pass. Complete 7,977-byte output hash matches; guest ready and stopped. The API, notification, E2E, ICMP and dependency inputs proved at `ec01ecf0` are byte-identical at this composed head. All three new VM receipts retain `line_bound_exceeded=true`; raw output is nevertheless complete and independently hash-matched. This is not a missing-output waiver or a claim to have rerun the full product graph. Required hosted checks, including backend, CodeQL, frontend, governance and E2E, must pass on this exact updated proposal before landing. Previous failing checks are not cleared by local proof. Original failed/partial proofs, skipped native controls and unavailable raw evidence remain explicit. This proposal is source delivery, not release availability, installed recovery or permission to change workloads or privileges. [How Pulse handles triage](https://github.com/rcourtman/Pulse/blob/main/docs/AI_TRANSPARENCY.md)