chore(stack): reconcile availability probes with #270 - #286
Conversation
|
Warning Review limit reached
Next review available in: 4 seconds Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthrough
ChangesCI 트리거 및 검증
Estimated code review effort: 2 (Simple) | ~10 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
|
@coderabbitai review @opencode-agent @cwl-noema-review Please independently review maintenance PR #286 at exact head |
|
✅ Action performedReview finished.
|
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@scripts/test_ci_workflow_stack_coverage.py`:
- Line 1: Convert the top-level test_* functions in the coverage test module
into methods on a unittest.TestCase subclass so unittest discovery executes
them. Replace their assertions with self.assertIn, self.assertNotIn, and
self.assertGreaterEqual as appropriate, preserving the existing test behavior.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro Plus
Run ID: 668becb2-cac7-4f5d-bcf2-75c4acb3a63e
📒 Files selected for processing (2)
.github/workflows/ci.ymlscripts/test_ci_workflow_stack_coverage.py
|
Addressed CodeRabbit's valid |
|
@coderabbitai review @opencode-agent @cwl-noema-review Re-review maintenance PR #286 at exact current head |
|
|
|
@coderabbitai review @opencode-agent @cwl-noema-review Please independently review exact current head |
🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -euo pipefail
echo '== checkout and requested revisions =='
git rev-parse HEAD
git status --short
for rev in \
ed3863209109cd24a3cf1f1d6bdcd51db16fbef1 \
d67947e3d405a47c155ea5078aeddb7e110f76de \
c4aaab9275073927f642c2bcf3596f7efa5da1ee
do
printf '\n-- %s --\n' "$rev"
git show -s --format='%H%nparents: %P%nsubject: %s' "$rev"
done
echo '\n== exact-head versus target diff summary =='
git diff --stat d67947e3d405a47c155ea5078aeddb7e110f76de ed3863209109cd24a3cf1f1d6bdcd51db16fbef1
git diff --name-status d67947e3d405a47c155ea5078aeddb7e110f76de ed3863209109cd24a3cf1f1d6bdcd51db16fbef1
git diff --find-renames --find-copies --unified=80 \
d67947e3d405a47c155ea5078aeddb7e110f76de \
ed3863209109cd24a3cf1f1d6bdcd51db16fbef1 \
-- .github/workflows/ci.yml scripts/test_ci_workflow_stack_coverage.py
echo '\n== synthetic merge versus target diff summary =='
git diff --stat d67947e3d405a47c155ea5078aeddb7e110f76de c4aaab9275073927f642c2bcf3596f7efa5da1ee
git diff --name-status d67947e3d405a47c155ea5078aeddb7e110f76de c4aaab9275073927f642c2bcf3596f7efa5da1ee
git diff --find-renames --find-copies --unified=80 \
d67947e3d405a47c155ea5078aeddb7e110f76de \
c4aaab9275073927f642c2bcf3596f7efa5da1ee \
-- .github/workflows/ci.yml scripts/test_ci_workflow_stack_coverage.py
echo '\n== affected file maps =='
ast-grep outline .github/workflows/ci.yml --lang yaml --view expanded || true
ast-grep outline scripts/test_ci_workflow_stack_coverage.py --lang python --view expanded || true
echo '\n== CI workflow and regression test =='
cat -n .github/workflows/ci.yml
cat -n scripts/test_ci_workflow_stack_coverage.py
echo '\n== canonical helper-test guidance and availability references =='
if [ -f CLAUDE.md ]; then
rg -n -C 4 'unittest|discover|scripts' CLAUDE.md
fi
rg -n -i -C 3 'availability|probe|exact-head|synthetic|buyer-readiness|javadoc|coverage' \
.github scripts CLAUDE.md 2>/dev/null || trueLength of output: 32180 🏁 Script executed: #!/bin/bash
set -euo pipefail
base='d67947e3d405a47c155ea5078aeddb7e110f76de'
head='ed3863209109cd24a3cf1f1d6bdcd51db16fbef1'
merge='c4aaab9275073927f642c2bcf3596f7efa5da1ee'
echo '== integrity and merge-result checks =='
git diff --check "$base" "$head"
git diff --check "$base" "$merge"
echo 'synthetic merge changed paths:'
git diff --name-only "$base" "$merge"
echo 'availability paths changed in synthetic merge:'
git diff --name-only "$base" "$merge" -- \
'src/main/java/com/clearfolio/viewer/controller/HealthController.java' \
'src/test/java/com/clearfolio/viewer/controller/HealthControllerTest.java' \
'docs/operations/2026-08-05-availability-probes.md' \
'docs/architecture.md' \
'ARCHITECTURE.md'
echo '\n== current-head commits after target merge-base =='
git log --oneline --decorate --no-merges "$base..$head"
echo '\n== parent-restoration commits =='
git show --stat --oneline c1239e20b048a582b19cb9eeb90f2c29f7c8f814
git show --stat --oneline "$head"
echo '\n== relevant policy and test references =='
for file in AGENTS.md pom.xml scripts/test_verify_maven_test_reports.py; do
if [ -f "$file" ]; then
echo "-- $file --"
rg -n -C 3 'unittest|discover|javadoc|JaCoCo|coverage|verify_maven_test_reports|Buyer-readiness|pull_request|merge compatibility' "$file" || true
fi
done
echo '\n== GitHub PR current state and current-head checks =='
gh pr view 286 --repo ContextualWisdomLab/clearfolio \
--json number,state,isDraft,mergeable,mergeStateStatus,headRefOid,baseRefOid,statusCheckRollup,reviews \
--jq '{
number, state, isDraft, mergeable, mergeStateStatus, headRefOid, baseRefOid,
checks: [.statusCheckRollup[]? | {name, status, conclusion, detailsUrl}],
reviews: [.reviews[]? | {author: .author.login, state, commit: .commit.oid}]
}'Length of output: 12317 🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/clearfolio'
head='ed3863209109cd24a3cf1f1d6bdcd51db16fbef1'
echo '== workflow runs for the requested exact head =='
gh run list --repo "$repo" --commit "$head" --limit 100 \
--json databaseId,name,workflowName,event,status,conclusion,createdAt,updatedAt,url \
--jq '.[] | {
databaseId, workflowName, event, status, conclusion, createdAt, updatedAt, url
}'
echo '\n== jobs for non-successful exact-head runs =='
run_ids=$(
gh run list --repo "$repo" --commit "$head" --limit 100 \
--json databaseId,status,conclusion \
--jq '.[] | select(.status != "completed" or (.conclusion != "success" and .conclusion != "neutral" and .conclusion != "skipped")) | .databaseId'
)
if [ -n "$run_ids" ]; then
while IFS= read -r run_id; do
[ -n "$run_id" ] || continue
echo "-- run $run_id --"
gh run view "$run_id" --repo "$repo" \
--json status,conclusion,jobs,url \
--jq '{
status, conclusion, url,
jobs: [.jobs[] | {name, status, conclusion, startedAt, completedAt, url}]
}'
done <<< "$run_ids"
else
echo 'No non-successful exact-head runs found.'
fiLength of output: 6124
The review used head
I did not transfer the predecessor CodeRabbit review, checks, or approval. I do not issue approval. The PR status is still
|
|
@coderabbitai review @opencode-agent @cwl-noema-review Independently review maintenance PR #286 at exact current head |
|
Tip For best results, initiate chat on the files or code changes. 🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/clearfolio'
base='d67947e3d405a47c155ea5078aeddb7e110f76de'
head='ed3863209109cd24a3cf1f1d6bdcd51db16fbef1'
merge='c4aaab9275073927f642c2bcf3596f7efa5da1ee'
echo '== Requested revisions =='
for rev in "$base" "$head" "$merge"; do
git show -s --format='%H%nparents: %P%nsubject: %s' "$rev"
echo
done
echo '== Exact-head and synthetic-merge changed paths =='
for pair in "$base $head" "$base $merge"; do
set -- $pair
printf '%s..%s\n' "$1" "$2"
git diff --name-status "$1" "$2"
done
echo '== Focused diffs =='
git diff --check "$base" "$head"
git diff --check "$base" "$merge"
git diff --find-renames --unified=100 "$base" "$head" -- \
.github/workflows/ci.yml \
scripts/test_ci_workflow_stack_coverage.py \
src/main/java/com/clearfolio/viewer/controller/HealthController.java \
src/test/java/com/clearfolio/viewer/controller/HealthControllerTest.java \
docs/operations/2026-08-05-availability-probes.md \
docs/architecture.md \
ARCHITECTURE.md
echo '== Affected-file outlines =='
ast-grep outline .github/workflows/ci.yml --lang yaml --view expanded || true
ast-grep outline scripts/test_ci_workflow_stack_coverage.py --lang python --view expanded || true
echo '== CI workflow and regression-test source =='
cat -n .github/workflows/ci.yml
cat -n scripts/test_ci_workflow_stack_coverage.py
echo '== Canonical discovery guidance =='
if [ -f CLAUDE.md ]; then
rg -n -C 5 'python3 -m unittest discover -s scripts|unittest|discover' CLAUDE.md
fi
echo '== Current PR state, checks, reviews, and commits =='
gh pr view 286 --repo "$repo" \
--json number,state,isDraft,mergeable,mergeStateStatus,headRefOid,baseRefOid,statusCheckRollup,reviews,commits \
--jq '{
number, state, isDraft, mergeable, mergeStateStatus, headRefOid, baseRefOid,
checks: [.statusCheckRollup[]? | {name, status, conclusion, workflowName, detailsUrl}],
reviews: [.reviews[]? | {author: .author.login, state, commit: .commit.oid}],
commits: [.commits[]? | {oid: .oid, messageHeadline: .messageHeadline}]
}'
echo '== Workflow runs for the requested exact head =='
gh run list --repo "$repo" --commit "$head" --limit 100 \
--json databaseId,workflowName,event,status,conclusion,url,headSha \
--jq '.[] | {databaseId, workflowName, event, status, conclusion, headSha, url}'
echo '== Workflow runs for the requested synthetic merge revision =='
gh run list --repo "$repo" --commit "$merge" --limit 100 \
--json databaseId,workflowName,event,status,conclusion,url,headSha \
--jq '.[] | {databaseId, workflowName, event, status, conclusion, headSha, url}'Length of output: 63064
I reviewed head
I do not issue approval. GitHub reports the PR as You are interacting with an AI system. |
|
@coderabbitai review @opencode-agent @cwl-noema-review Review this maintenance PR at exact head |
|
Tip For best results, initiate chat on the files or code changes. 🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/clearfolio'
base='d67947e3d405a47c155ea5078aeddb7e110f76de'
head='ed3863209109cd24a3cf1f1d6bdcd51db16fbef1'
echo '== requested revisions =='
for rev in "$base" "$head"; do
git show -s --format='%H%nparents: %P%nsubject: %s' "$rev"
echo
done
echo '== merge base and commit range =='
git merge-base "$base" "$head"
git log --oneline --decorate "$base..$head"
echo '== changed paths and diff checks =='
git diff --check "$base" "$head"
git diff --name-status "$base" "$head"
git diff --stat "$base" "$head"
echo '== focused maintenance diff =='
git diff --find-renames --unified=100 "$base" "$head" -- \
.github/workflows/ci.yml \
scripts/test_ci_workflow_stack_coverage.py
echo '== availability-probe changes in requested range =='
git diff --name-status "$base" "$head" -- \
src/main/java/com/clearfolio/viewer/controller/HealthController.java \
src/test/java/com/clearfolio/viewer/controller/HealthControllerTest.java \
docs/operations/2026-08-05-availability-probes.md \
docs/architecture.md \
ARCHITECTURE.md
echo '== affected source maps =='
ast-grep outline .github/workflows/ci.yml --lang yaml --view expanded || true
ast-grep outline scripts/test_ci_workflow_stack_coverage.py --lang python --view expanded || true
echo '== workflow and regression test =='
cat -n .github/workflows/ci.yml
cat -n scripts/test_ci_workflow_stack_coverage.py
echo '== canonical discovery and gates =='
if [ -f CLAUDE.md ]; then
rg -n -C 5 'python3 -m unittest discover -s scripts|unittest|discover' CLAUDE.md
fi
rg -n -i -C 3 'pull_request|permissions|exact-head|synthetic|merge.compatibility|maven.*verify|jacoco|javadoc|buyer.readiness|availability|liveness|readiness' \
.github scripts pom.xml AGENTS.md CLAUDE.md 2>/dev/null || true
echo '== pull request state and check rollup =='
gh pr view 286 --repo "$repo" \
--json number,state,isDraft,mergeable,mergeStateStatus,headRefOid,baseRefOid,statusCheckRollup,reviews \
--jq '{
number, state, isDraft, mergeable, mergeStateStatus, headRefOid, baseRefOid,
checks: [.statusCheckRollup[]? | {name, workflowName, status, conclusion, detailsUrl}],
reviews: [.reviews[]? | {author: .author.login, state, commit: .commit.oid}]
}'
echo '== exact-head workflow runs =='
gh run list --repo "$repo" --commit "$head" --limit 100 \
--json databaseId,workflowName,event,status,conclusion,headSha,url \
--jq '.[] | {databaseId, workflowName, event, status, conclusion, headSha, url}'Length of output: 66467 🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/clearfolio'
base='d67947e3d405a47c155ea5078aeddb7e110f76de'
head='ed3863209109cd24a3cf1f1d6bdcd51db16fbef1'
commits=('a6df06c' 'c1239e20' 'ed386320')
echo '== per-commit changed paths =='
for commit in "${commits[@]}"; do
echo "-- $commit --"
git show --format='format:%H%n%s' --name-status "$commit"
done
echo '== availability source and test diffs, base..head =='
git diff --unified=120 "$base" "$head" -- \
src/main/java/com/clearfolio/viewer/controller/HealthController.java \
src/test/java/com/clearfolio/viewer/controller/HealthControllerTest.java
echo '== availability documentation and references, base..head =='
git diff --unified=100 "$base" "$head" -- \
docs/operations/2026-08-05-availability-probes.md \
ARCHITECTURE.md \
docs/architecture.md \
README.md \
CLAUDE.md \
docs/engineering/acceptance-criteria.md
for rev in "$base" "$head"; do
echo "-- availability references at $rev --"
git grep -n -i -E 'healthz|livez|readyz|liveness|readiness|availability.probe' "$rev" -- \
'*.java' '*.md' ':!docs/operations/2026-08-05-availability-probes.md' || true
done
echo '== source and test at requested head =='
git show "$head:src/main/java/com/clearfolio/viewer/controller/HealthController.java" | cat -n
git show "$head:src/test/java/com/clearfolio/viewer/controller/HealthControllerTest.java" | cat -n
echo '== synthetic merge references from current PR metadata =='
gh pr view 286 --repo "$repo" --json potentialMergeCommit,mergeCommit \
--jq '{potentialMergeCommit: .potentialMergeCommit.oid, mergeCommit: .mergeCommit.oid}'
echo '== completed failed exact-head run jobs and annotations =='
for run in 31119464879 31119466244 31119466248 31119466232 31119466465; do
echo "-- run $run --"
gh run view "$run" --repo "$repo" --json workflowName,event,status,conclusion,jobs,url \
--jq '{workflowName,event,status,conclusion,url,jobs:[.jobs[]|{name,status,conclusion,url}]}'
doneLength of output: 146724 🏁 Script executed: #!/bin/bash
set -euo pipefail
base='d67947e3d405a47c155ea5078aeddb7e110f76de'
merge='c4aaab9275073927f642c2bcf3596f7efa5da1ee'
echo '== synthetic merge identity and changed paths =='
git show -s --format='%H%nparents: %P%nsubject: %s' "$merge"
git diff --name-status "$base" "$merge" -- \
src/main/java/com/clearfolio/viewer/controller/HealthController.java \
src/test/java/com/clearfolio/viewer/controller/HealthControllerTest.java \
docs/operations/2026-08-05-availability-probes.md \
ARCHITECTURE.md \
docs/architecture.md \
docs/engineering/acceptance-criteria.md
echo '== synthetic merge availability diff =='
git diff --unified=40 "$base" "$merge" -- \
src/main/java/com/clearfolio/viewer/controller/HealthController.java \
src/test/java/com/clearfolio/viewer/controller/HealthControllerTest.java \
docs/operations/2026-08-05-availability-probes.md
echo '== synthetic merge endpoint declarations =='
git show "$merge:src/main/java/com/clearfolio/viewer/controller/HealthController.java" \
| nl -ba \
| sed -n '1,100p'Length of output: 1763
I reviewed exact head
I do not issue approval. The PR is The prior CodeRabbit review is attached to predecessor commit You are interacting with an AI system. |
|
@coderabbitai review @opencode-agent @cwl-noema-review Please independently review exact current head |
🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/clearfolio'
base='d67947e3d405a47c155ea5078aeddb7e110f76de'
head='ed3863209109cd24a3cf1f1d6bdcd51db16fbef1'
echo '== revision identity =='
for rev in "$base" "$head"; do
git show -s --format='%H%nparents: %P%nsubject: %s' "$rev"
echo
done
echo '== merge base and exact range =='
git merge-base "$base" "$head"
git log --oneline --decorate "$base..$head"
git diff --check "$base" "$head"
git diff --name-status "$base" "$head"
git diff --stat "$base" "$head"
echo '== workflow and regression-test diff =='
git diff --find-renames --unified=120 "$base" "$head" -- \
.github/workflows/ci.yml \
scripts/test_ci_workflow_stack_coverage.py
echo '== availability-slice diff in exact range =='
git diff --name-status "$base" "$head" -- \
src/main/java/com/clearfolio/viewer/controller/HealthController.java \
src/test/java/com/clearfolio/viewer/controller/HealthControllerTest.java \
docs/operations/2026-08-05-availability-probes.md \
docs/architecture.md \
ARCHITECTURE.md
echo '== focused file outlines and source =='
ast-grep outline .github/workflows/ci.yml --lang yaml --view expanded || true
ast-grep outline scripts/test_ci_workflow_stack_coverage.py --lang python --view expanded || true
cat -n .github/workflows/ci.yml
cat -n scripts/test_ci_workflow_stack_coverage.py
echo '== canonical discovery guidance =='
rg -n -C 4 'python3 -m unittest discover -s scripts|unittest|discover' CLAUDE.md 2>/dev/null || true
echo '== availability implementation at head =='
git show "$head:src/main/java/com/clearfolio/viewer/controller/HealthController.java" | cat -n
git show "$head:src/test/java/com/clearfolio/viewer/controller/HealthControllerTest.java" | cat -n
echo '== PR metadata, exact-head checks, reviews =='
gh pr view 286 --repo "$repo" \
--json number,state,isDraft,mergeable,mergeStateStatus,headRefOid,baseRefOid,statusCheckRollup,reviews \
--jq '{
number, state, isDraft, mergeable, mergeStateStatus, headRefOid, baseRefOid,
checks: [.statusCheckRollup[]? | {name, workflowName, status, conclusion, detailsUrl}],
reviews: [.reviews[]? | {author: .author.login, state, commit: .commit.oid}]
}'
echo '== workflow runs for requested exact head =='
gh run list --repo "$repo" --commit "$head" --limit 100 \
--json databaseId,workflowName,event,status,conclusion,headSha,url \
--jq '.[] | {databaseId, workflowName, event, status, conclusion, headSha, url}'Length of output: 35098 🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/clearfolio'
base='d67947e3d405a47c155ea5078aeddb7e110f76de'
head='ed3863209109cd24a3cf1f1d6bdcd51db16fbef1'
merge="$(gh pr view 286 --repo "$repo" --json potentialMergeCommit --jq '.potentialMergeCommit.oid // empty')"
printf 'potential synthetic merge: %s\n' "${merge:-<unavailable>}"
echo '== availability artifacts at base and head =='
for rev in "$base" "$head"; do
echo "-- $rev: HealthController --"
git show "$rev:src/main/java/com/clearfolio/viewer/controller/HealthController.java" | cat -n
echo "-- $rev: HealthControllerTest --"
git show "$rev:src/test/java/com/clearfolio/viewer/controller/HealthControllerTest.java" | cat -n
echo "-- $rev: availability documentation exists --"
git cat-file -e "$rev:docs/operations/2026-08-05-availability-probes.md" 2>/dev/null \
&& echo yes || echo no
done
echo '== availability artifact diff, base..head =='
git diff --unified=120 "$base" "$head" -- \
src/main/java/com/clearfolio/viewer/controller/HealthController.java \
src/test/java/com/clearfolio/viewer/controller/HealthControllerTest.java \
docs/operations/2026-08-05-availability-probes.md \
ARCHITECTURE.md \
docs/architecture.md
echo '== commits that change availability artifacts =='
for commit in a6df06c c1239e20 ed386320; do
echo "-- $commit --"
git show --format='format:%H%n%s' --name-status "$commit" -- \
src/main/java/com/clearfolio/viewer/controller/HealthController.java \
src/test/java/com/clearfolio/viewer/controller/HealthControllerTest.java \
docs/operations/2026-08-05-availability-probes.md \
ARCHITECTURE.md \
docs/architecture.md
done
if [ -n "$merge" ]; then
echo '== availability artifacts in potential synthetic merge =='
git show -s --format='%H%nparents: %P%nsubject: %s' "$merge"
git diff --name-status "$base" "$merge" -- \
src/main/java/com/clearfolio/viewer/controller/HealthController.java \
src/test/java/com/clearfolio/viewer/controller/HealthControllerTest.java \
docs/operations/2026-08-05-availability-probes.md \
ARCHITECTURE.md \
docs/architecture.md
git show "$merge:src/main/java/com/clearfolio/viewer/controller/HealthController.java" | cat -n
git show "$merge:src/test/java/com/clearfolio/viewer/controller/HealthControllerTest.java" | cat -n
git cat-file -e "$merge:docs/operations/2026-08-05-availability-probes.md" 2>/dev/null \
&& echo 'merge availability documentation: present' \
|| echo 'merge availability documentation: absent'
fiLength of output: 51550
I reviewed exact head
I do not issue approval. The PR is
|
c4aaab9
into
feat/liveness-readiness-probes
|
Superseded by direct fast-forward synchronization of |
Purpose
Reconcile PR #265 onto authoritative parent #270 exact head
ed3863209109cd24a3cf1f1d6bdcd51db16fbef1without transferring predecessor-head checks, comments, reviews, or approvals.Evidence boundary
PR #265 remains divergent from the declared parent. This maintenance merge restores the missing parent commits while retaining the bounded liveness/readiness slice. CodeRabbit correctly found that the initial stacked-PR CI regression used top-level pytest functions and was not executed by the canonical
python3 -m unittest discover -s scriptscommand. Exact current headed3863209109cd24a3cf1f1d6bdcd51db16fbef1converts the test tounittest.TestCasewhile retaining pytest compatibility.After merge, #265 must be re-inspected at its resulting exact head and all exact-head and base-sensitive CI, fuzz, security, review, approval, and repository-policy gates must rerun. No successful result from any predecessor head is transferable. Do not merge this maintenance PR while any required check is queued, pending, failed, cancelled, skipped, absent, or stale, or without counted independent approval where repository policy requires it.