Skip to content

test(routing): run full benchmark through Bash router - #69

Merged
dhicoc merged 1 commit into
zhaoxuya520:mainfrom
jhuang-tw:test/bash-routing-full-benchmark-pr
Aug 11, 2026
Merged

test(routing): run full benchmark through Bash router#69
dhicoc merged 1 commit into
zhaoxuya520:mainfrom
jhuang-tw:test/bash-routing-full-benchmark-pr

Conversation

@jhuang-tw

Copy link
Copy Markdown
Contributor

Summary

The repository has two independent structured-router entrypoints that both read the same routing.json SSoT:

  • master-route.ps1
  • master-route.sh

The PowerShell path already runs the full 163-case routing-benchmark.json in CI, while the Bash path currently checks only three hand-picked routes. That leaves room for semantic drift in Bash routing even when the shared route table itself is correct.

This PR keeps the change test-only and bounded:

  • add skills/scripts/test-routing.sh, which runs every case from the existing routing-benchmark.json through master-route.sh and compares the emitted primary route with the shared expected value;
  • replace the three inline Bash routing samples in CI with the full shared benchmark;
  • keep the existing Bash case-init / case-guard regressions unchanged;
  • add no new dependencies, runners, route rules, or production behavior.

Why

A recent macOS compatibility fix showed that the Bash path can fail independently of the PowerShell path. Running the same routing benchmark through both entrypoints turns the existing JSON benchmark into a true cross-entrypoint contract instead of validating only the PowerShell implementation.

Validation

The new runner is wired into the existing Ubuntu sh-syntax job. It uses the same Python 3 dependency already required by master-route.sh and reads the existing UTF-8 benchmark directly.

Expected CI contract after this change:

  • PowerShell router: 163 shared benchmark cases
  • Bash router: 163 shared benchmark cases
  • existing Bash case-init/case-guard regressions remain in place

@dhicoc

dhicoc commented Aug 11, 2026

Copy link
Copy Markdown
Collaborator

本地合并流程已完成:

  1. 审查 diff(范围与动机成立)
  2. git merge --no-ff 到本地 main(顺序 test(routing): run full benchmark through Bash router #69ci: exercise shell workflows on macOS system Bash #70fix(docs): clarify report flavor routing and evidence traceability #71
  3. skills/scripts/smoke.ps1ALL PASS
  4. skills/scripts/verify-routing-coherence.ps1ALL PASS(含 fix(docs): clarify report flavor routing and evidence traceability #71 新增 vendor 规则断言)
  5. push main

说明:本机 Windows 无系统 Bash,test-routing.sh 全量 benchmark 以 PR CI(Ubuntu)与 #69 设计为准;#70 的 macOS system Bash job 已在 PR CI 通过。

@dhicoc
dhicoc merged commit a47a1f2 into zhaoxuya520:main Aug 11, 2026
6 checks passed
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.

2 participants