Skip to content

[issue #98] Unify Saihai naming and align setup/classify docs with implementation - #122

Open
Saber5656 wants to merge 1 commit into
mainfrom
codex/issue-98-docs-naming
Open

[issue #98] Unify Saihai naming and align setup/classify docs with implementation#122
Saber5656 wants to merge 1 commit into
mainfrom
codex/issue-98-docs-naming

Conversation

@Saber5656

Copy link
Copy Markdown
Owner

Summary

Milestone M0 (contract hygiene) of the deterministic-harness migration (epic #120). Fixes the self-contradicting product naming and setup/classify documentation so the docs match the implemented contracts, restoring the fail-closed "documentation is the contract" posture.

Changes

  • README.md / README.ja.md
    • Canonical product name unified to Saihai in headings, prose, and examples; legacy Sahai/SAHAI_* names remain only in the compatibility-alias table rows (added the missing SAHAI_DIRECTORY_PATH_ENVSAIHAI_DIRECTORY_PATH_ENV alias row).
    • Setup contract corrected: the example supplies the eight explicit directory options; SAIHAI_ROOT defaults to the primary checkout, and the normal entrypoint validates all nine canonical paths fail-closed.
    • classify documentation corrected to the real two-axis contract: --mode {fast,strict} plus the separate --organization-state {enabled,disabled,maintenance}; README examples updated to runnable invocations.
    • Both READMEs kept content-synchronized.
  • docs/configuration.md
    • Setup example aligned with scripts/setup_directory_paths.py's actual argument contract and fail-closed behavior (existing-catalog overwrite refusal, bootstrap-only consumers note).

Testing

  • grep -rn "Sahai[^i]" README.md README.ja.md docs/ → zero hits; case-insensitive sweep shows 10 remaining legacy-alias occurrences, all inside compatibility table rows.
  • Documented setup example executed as written against scripts/setup_directory_paths.py in a throwaway directory: creation and --check succeed, catalog file mode 0600, omitting a required option fails closed with exit 2.
  • scripts/configure_organization.py parser verified (--help) and the documented examples executed successfully against an isolated catalog.
  • python3 scripts/validate_all.pyresult: pass (41 suites).

Review

  • tech-docs role review (independent session): approve, zero findings. Verified naming sweep, setup/classify contract fidelity against the parsers, EN/JA synchronization, and scope containment.

Closes #98

🤖 Generated with Claude Code

@Saber5656 Saber5656 added the documentation Improvements or additions to documentation label Jul 17, 2026
@Saber5656 Saber5656 self-assigned this Jul 17, 2026
@coderabbitai

coderabbitai Bot commented Jul 17, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@Saber5656, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 50 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

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 configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 49286d4b-956f-40d8-b4ab-d5fdfc17deb4

📥 Commits

Reviewing files that changed from the base of the PR and between f71b8cd and 2b265bf.

📒 Files selected for processing (3)
  • README.ja.md
  • README.md
  • docs/configuration.md
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch codex/issue-98-docs-naming

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 2b265bfa18

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread docs/configuration.md
Comment on lines 143 to +145
To recover from an invalid explicit selector, unset
`SAIHAI_DIRECTORY_PATH_ENV` (and legacy `SAHAI_DIRECTORY_PATH_ENV`) so normal
primary-checkout discovery can resume.
`SAIHAI_DIRECTORY_PATH_ENV` so normal primary-checkout discovery can resume.
Compatibility selector names are listed only in the table above.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Include the legacy selector in recovery steps

When a migrated environment still has SAHAI_DIRECTORY_PATH_ENV set to a bad path, unsetting only SAIHAI_DIRECTORY_PATH_ENV will not recover discovery: directory_paths.resolve_env_file() still treats LEGACY_CATALOG_ENV_KEY as an explicit selector and load_environment() fails before falling back to the checkout catalog. Since this page now documents SAHAI_DIRECTORY_PATH_ENV as a supported compatibility selector, the recovery instruction should tell operators to unset both selector variables.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[docs] Fix Sahai/Saihai naming and setup documentation inconsistencies

1 participant