Skip to content

🌱 Add structured CI-observability summary to fuzz-mdx harness - #6797

Open
kubestellar-hive[bot] wants to merge 1 commit into
mainfrom
telemetry/fuzz-mdx-structured-summary
Open

🌱 Add structured CI-observability summary to fuzz-mdx harness#6797
kubestellar-hive[bot] wants to merge 1 commit into
mainfrom
telemetry/fuzz-mdx-structured-summary

Conversation

@kubestellar-hive

Copy link
Copy Markdown
Contributor

Fixes #6770

What

fuzz-mdx-sanitizer.ts (the harness behind fuzz-mdx.yml) only printed decorative free-text lines (PASSED: all N iterations clean corpus=M / FAILED: K violation(s) found) to stdout. There was no machine-readable summary and no record of the run's outcome visible without opening the raw job log.

Change

At the end of the same run (both pass and fail paths), the harness now:

  • Prints one bounded FUZZ_MDX_SUMMARY JSON line (fixed fields only: status, seed, iterations, corpus_size, failures — no test inputs, error text, or unbounded content).
  • Appends a short Markdown table to $GITHUB_STEP_SUMMARY when that env var is set, so the run's outcome renders in the GitHub Actions run summary UI without opening raw logs.

This happens in-process, before process.exit(), on both the pass and fail branches — so it covers both outcomes without needing a separate workflow step or if: always() wiring, and requires no workflow YAML changes.

Verification

  • Ran the harness locally with GITHUB_STEP_SUMMARY set: confirmed the Markdown table is appended on a passing run.
  • Ran with the env var unset (matches local/dev usage): confirmed no crash, unchanged existing stdout output.
  • npx eslint and npx tsc --noEmit -p tsconfig.json: no new errors (same pre-existing no-console warnings as before, matching the file's existing baseline).

Out of scope

No metrics backend, exporter, or off-box data flow — CI-log/UI observability only, consistent with the 'no backend confirmed' posture for this repo. No new dependency (uses node:fs, already available).

— hive: agent=telemetry backend=copilot model=claude-sonnet-4-6

fuzz-mdx-sanitizer.ts previously only printed decorative free-text
lines (PASSED/FAILED) to stdout, with no machine-readable summary and
no record of the run's outcome beyond raw job-log text.

The harness now also, at the end of the same run (both pass and fail
paths):
- Prints one bounded FUZZ_MDX_SUMMARY JSON line (fixed fields only:
  status, seed, iterations, corpus_size, failures — no test inputs,
  error text, or unbounded content).
- Appends a short Markdown table to $GITHUB_STEP_SUMMARY when that env
  var is set, so the outcome renders in the GitHub Actions run summary
  UI without opening raw logs. This happens in-process before
  process.exit(), so it naturally covers both pass and fail without
  needing a separate workflow step.

No workflow YAML changes, no metrics backend, exporter, or off-box
data flow — CI-log/UI observability only, and no new dependency (uses
node:fs, already available).

Fixes #6770

Signed-off-by: kubestellar-hive[bot] <kubestellar-hive[bot]@users.noreply.github.com>
@kubestellar-hive

Copy link
Copy Markdown
Contributor Author

Important

Held for human sign-off on the direction, not on the code.

This PR's only tracked rationale is #6770, which the hive filed itself — issue #6770 was filed by kubestellar-hive[bot] and no human has acknowledged it. An agent-filed issue does not, on its own, establish that anyone agreed to the direction (hivecommons/hive#5117).

The change may well be right; nothing here is a review of it. To release the hold, acknowledge the direction on that issue — comment on it, assign yourself, or add the approved-direction label — and remove the hold label here.

@kubestellar-prow kubestellar-prow Bot added the dco-signoff: yes Indicates the PR's author has signed the DCO. label Sep 8, 2026
@kubestellar-prow

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign kproche for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@netlify

netlify Bot commented Sep 8, 2026

Copy link
Copy Markdown

Deploy Preview for kubestellar-docs ready!

Name Link
🔨 Latest commit 5c8f0a6
🔍 Latest deploy log https://app.netlify.com/projects/kubestellar-docs/deploys/6a9f734a3c1f4900088271de
😎 Deploy Preview https://deploy-preview-6797--kubestellar-docs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@kubestellar-prow kubestellar-prow Bot added the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label Sep 8, 2026
@kubestellar-prow

Copy link
Copy Markdown

Hi @kubestellar-hive[bot]. Thanks for your PR.

I'm waiting for a kubestellar member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@kubestellar-prow kubestellar-prow Bot added the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label Sep 8, 2026
@github-actions github-actions Bot added copilot typescript and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. copilot labels Sep 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dco-signoff: yes Indicates the PR's author has signed the DCO. hold size/M Denotes a PR that changes 30-99 lines, ignoring generated files. typescript

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[telemetry] fuzz-mdx.yml has no structured CI-observability summary

0 participants