JOS-81: Capture service diagnostics with bounded Go counters - #23
Draft
jacobyoby wants to merge 12 commits into
Draft
JOS-81: Capture service diagnostics with bounded Go counters#23jacobyoby wants to merge 12 commits into
jacobyoby wants to merge 12 commits into
Conversation
9 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Application and native-service diagnostics can retain request or interview content, while silencing output can hide startup failures. This candidate captures selected output with bounded Go counters, validates native configuration before launch and reports fixed startup/process failures. Tracks #22.
The change reuses the existing Go runner for services, interview cron, maintenance, sync, rotation and initialization. Its 36-file non-mail catalog uses existing copy/patch tools. Customized initializer/daily scripts receive only the privacy diff; customized nginx-realip loses one legacy logging override while preserving every other byte. Native escape parsing accepts the target's regex/payload syntax without relaxing logging or escaped-include policy.
Current revision: 37fb23e. Native CI passes both jobs, including 148 native/launcher tests,84 frozen references, Go/race/fuzz/vulnerability checks, native runtime controls, full installation, real queue/cron, maintenance/backups, orderly restart, interrupted-start protection and rollback. CodeQL and its aggregate check pass, with no open PR alerts. All four packaged binaries match native CI hashes.
Both prepared target configurations pass actual Nginx and the compiled preflight in isolated containers. All 31 payload/patch hashes and 6 target preparations verify. Fresh private rollback snapshots capture 55 paths and 42 files/links per target; capture state is stable, archive contents/metadata verify and both archives restore in isolated containers. Protected static-tree baselines are recorded. Independent review confirms source compatibility and byte-identical shared mail sections.
Production is unchanged and this PR remains draft. Remaining release work: recheck quiescent target state, perform the scoped installation, verify served responses/output retention and record provenance. Synthetic upload/log checks use fixed sentinels rather than equality of whole changing trees. Preserve historical content, target customizations, system syslog and original service states. Go mail replacement/Exim, full-Dockerfile delivery, manual/conditional paths and unrelated NLTK alerts 35/36 remain outside this release.