Skip to content

Add frailbox self-test JSON summary#8

Closed
9904099 wants to merge 2 commits into
Soengkit:mainfrom
9904099:codex/frailbox-selftest-json-5
Closed

Add frailbox self-test JSON summary#8
9904099 wants to merge 2 commits into
Soengkit:mainfrom
9904099:codex/frailbox-selftest-json-5

Conversation

@9904099

@9904099 9904099 commented Jun 20, 2026

Copy link
Copy Markdown

Summary

This PR adds a deterministic frailbox self-test mode with machine-readable JSON output for CI and operator automation.

What changed:

  • added --self-test and --self-test-format text|json to frailbox
  • preserved human-readable text output as the default make test path
  • added JSON fields for summary.status, totals, duration, and per-test name, status, duration_ms
  • included failure_reason on failed test entries when the failure source is known
  • added a deterministic failure fixture via the self-test path so the JSON failure shape and non-zero exit behavior are covered
  • documented the JSON self-test flow in docs/OPERATIONS.md

Validation

Ran locally:

make -C frailbox clean
make -C frailbox
make -C frailbox test
make -C frailbox test-selftest-json
./frailbox/frailbox --self-test --self-test-format json | python3 -m json.tool
./frailbox/frailbox --self-test --self-test-format json --self-test-inject-failure sandbox_config
python3 build.py

python3 build.py passed all 10 modules:

  • backend: PASS
  • frontend: PASS
  • market: PASS
  • frailbox: PASS
  • engine: PASS
  • compliance: PASS
  • v2-market-stream: PASS
  • nfc-scanner: PASS
  • openapi-haskell: PASS
  • openapi-tools: PASS

Diagnostic artifacts included in this branch:

  • diagnostic/build-c2f42d2f.json
  • diagnostic/build-c2f42d2f-part001.logd
  • diagnostic/build-c2f42d2f-part002.logd
  • diagnostic/build-c2f42d2f-part003.logd
  • diagnostic/build-c2f42d2f-part004.logd
  • diagnostic/build-c2f42d2f-part005.logd

Diagnostic password: b6e6f2dcf1f1c6684966

Contact: 50889616@qq.com

@9904099

9904099 commented Jun 20, 2026

Copy link
Copy Markdown
Author

Closing this myself after seeing the maintainer guidance on #7 that this fork is a payout-processing tracker, not the right downstream work queue. Sorry for the noise here.

@9904099 9904099 closed this Jun 20, 2026
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.

1 participant