Skip to content

docs(auth): align front-door flows with shipped workflows#109

Open
ndycode wants to merge 11 commits intodevfrom
fresh/06-docs-frontdoor-cleanup
Open

docs(auth): align front-door flows with shipped workflows#109
ndycode wants to merge 11 commits intodevfrom
fresh/06-docs-frontdoor-cleanup

Conversation

@ndycode
Copy link
Owner

@ndycode ndycode commented Mar 16, 2026

Summary

  • Reopens the preserved docs front-door cleanup from archived PR #80
  • Stacked PR on fresh/05-settings-productization

What Changed

  • Aligns the README and user-facing docs portal with the shipped onboarding, command, settings, and troubleshooting flows.
  • Keeps the branch docs-only and avoids pulling stale recovery or storage churn back into the stack.

Validation

  • npm run lint
  • npm run typecheck
  • npm test
  • npm test -- test/documentation.test.ts
  • npm run build

Docs and Governance Checklist

  • README updated (if user-visible behavior changed)
  • docs/getting-started.md updated (if onboarding flow changed)
  • docs/features.md updated (if capability surface changed)
  • relevant docs/reference/* pages updated (if commands/settings/paths changed)
  • docs/upgrade.md updated (if migration behavior changed)
  • SECURITY.md and CONTRIBUTING.md reviewed for alignment

Risk and Rollback

  • Risk level: low
  • Rollback plan: revert 01ee35b

Additional Notes

  • Preserved branch validation from the fresh-restack run passed docs tests plus full repo lint, typecheck, build, and npm test.

note: greptile review for oc-chatgpt-multi-auth. cite files like lib/foo.ts:123. confirm regression tests + windows concurrency/token redaction coverage.

Greptile Summary

docs-only PR that aligns README and the user-facing docs portal with the shipped settings split (Everyday Settings / Advanced & Operator), startup restore prompt, backup restore manager, and codex CLI sync preview flow. all nine changed files are consistent with each other and with the UI_COPY constants locked in the test suite.

key changes:

  • docs/reference/settings.md: renames top-level section to ## Advanced & Operator, replaces developer build commands under "Codex CLI Sync" with accurate user-facing workflow notes
  • docs/troubleshooting.md: adds Backup Restore Problems and Codex CLI Sync Problems tables with cross-platform paths; the previously flagged symptom/cause contradiction in the sync table is resolved
  • docs/getting-started.md: adds ## Restore Or Start Fresh and ## Sync And Settings sections, but documents the backup location with a unix-only path (~/.codex/multi-auth/backups/<name>.json) — troubleshooting.md and README both include the windows equivalent, leaving a platform consistency gap for windows users reading the getting-started guide
  • test/documentation.test.ts: new alignment test validates section headings and nav paths but does not assert the windows backup path, leaving that gap unguarded by the test suite
  • no token handling, filesystem writes, or concurrency-sensitive code is introduced — no windows filesystem race or token leakage surface added by this PR

Confidence Score: 4/5

  • safe to merge — docs-only, no runtime or token-handling changes introduced
  • all nav paths, settings hierarchy, and ui copy labels are internally consistent across the nine changed files and match the locked ui_copy constants. one minor platform parity gap: getting-started.md shows only the unix backup path, while README and troubleshooting both document windows equivalents. the new alignment test also doesn't guard against this gap regressing. no concurrency, token safety, or windows filesystem concerns introduced.
  • docs/getting-started.md line 81 (unix-only backup path) and test/documentation.test.ts lines 364-379 (missing windows path assertion)

Important Files Changed

Filename Overview
README.md rewrites two bullet points, adds interactive dashboard paths block, clarifies config file section, and adds a restore-skipped troubleshooting tip with both unix and windows paths — all consistent with shipped ui copy
docs/getting-started.md adds restore and settings sections correctly, but backup location at line 81 shows only the unix path — troubleshooting.md and README both include windows equivalents, creating a platform consistency gap for first-time windows users
docs/reference/settings.md renames top-level section from "Advanced and Operator Controls" to "Advanced & Operator", replaces developer build instructions under sync with user-facing workflow notes, removes stale upgrade.md link — cleaner and accurate
docs/troubleshooting.md adds backup restore and codex cli sync problem tables with proper cross-platform paths; the previously flagged symptom/cause contradiction in the sync table has been corrected — symptom now reads "you want to confirm target-only accounts are preserved" instead of stating data loss
test/documentation.test.ts adds a new alignment test for restore and sync sections using toContain string assertions; correctly updates "Advanced & Operator" heading expectation; missing assertion for windows backup path in getting-started.md leaves a platform parity gap unguarded

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A["codex auth login"] --> B{recoverable named\nbackups found\nand no accounts?}
    B -- yes, interactive TTY --> C["Startup restore prompt"]
    B -- no / non-interactive --> D["OAuth / Add Account flow"]
    C -- confirm --> E["Restore From Backup manager"]
    C -- skip --> D
    E --> F["Dedupe merge, apply"]
    F --> G["Account pool ready"]
    D --> G

    A --> H["Settings"]
    H --> I["Everyday Settings"]
    H --> J["Advanced & Operator"]
    I --> I1["List Appearance"]
    I --> I2["Details Line"]
    I --> I3["Results & Refresh"]
    I --> I4["Colors"]
    J --> J1["Codex CLI Sync\n(preview-first, one-way)"]
    J --> J2["Experimental\n(backup export, refresh guard)"]
    J --> J3["Advanced Backend Controls"]
Loading

Fix All in Codex

Prompt To Fix All With AI
This is a comment left during a code review.
Path: docs/getting-started.md
Line: 81

Comment:
**windows backup path missing from restore section**

the `## Restore Or Start Fresh` section only shows the unix path. every other place this PR touches that documents backup location includes the windows equivalent — README.md line 247 and `docs/troubleshooting.md` lines 66-67 both show `%CODEX_MULTI_AUTH_DIR%\backups` and `C:\Users\<User>\.codex\multi-auth\backups\`. a windows user who follows the getting-started guide here won't know where to place backup files.

```suggestion
- Backup location: `~/.codex/multi-auth/backups/<name>.json` (or `C:\Users\<User>\.codex\multi-auth\backups\<name>.json` on Windows; override with `CODEX_MULTI_AUTH_DIR`)
```

How can I resolve this? If you propose a fix, please make it concise.

---

This is a comment left during a code review.
Path: test/documentation.test.ts
Line: 364-379

Comment:
**new alignment test skips windows path coverage**

the test verifies nav paths and section headings across getting-started and troubleshooting but doesn't assert that both platform paths are documented where getting-started introduces backup location. since the unix-only gap above exists, adding a windows path assertion here would prevent a regression if someone updates the path references:

```ts
// inside the new test block
expect(gettingStarted).toContain("C:\\Users\\<User>\\.codex\\multi-auth\\backups\\");
```

no vitest coverage for the actual backup root resolution logic either — that gap is pre-existing but worth noting since the docs now expose it as a user-facing first-run step.

How can I resolve this? If you propose a fix, please make it concise.

Last reviewed commit: 52d2cfa

Copilot AI review requested due to automatic review settings March 16, 2026 08:51
@chatgpt-codex-connector
Copy link

Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits.
Credits must be used to enable repository wide code reviews.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Mar 16, 2026

📝 Walkthrough

walkthrough

documentation-only update across README.md and docs/* describing startup restore prompt, backup restore manager, productized settings split (everyday vs advanced), codex cli sync preview-first center, and interactive dashboard workflows. no runtime code changes. tests adjusted in test/documentation.test.ts:1.

changes

Cohort / File(s) Summary
root README
README.md
expanded login/restore/sync/settings bullets; added interactive dashboard paths; introduced CODEX_MULTI_AUTH_CONFIG_PATH mention; added troubleshooting note for interactive restore flows.
documentation index & core guides
docs/README.md, docs/index.md, docs/getting-started.md
updated intro to include restore/sync/diagnostics; added "restore or start fresh" and "sync and settings" sections describing backup location and settings split.
features & reference docs
docs/features.md, docs/reference/commands.md, docs/reference/settings.md
added startup recovery prompt and backup restore manager descriptions; split settings into Everyday and Advanced & Operator; documented Codex CLI Sync as preview-first with workflow notes; added interactive dashboard workflows.
troubleshooting & diagnostics
docs/troubleshooting.md
expanded recovery scope to include backup restore and sync preview; added Backup Restore Problems and Codex CLI Sync Problems tables; added interactive diagnostics path guidance.
tests
test/documentation.test.ts
updated expectation for "## Advanced & Operator" header and added a new doc-alignment test asserting presence of restore/sync workflow sections across docs. (see test/documentation.test.ts:1)

estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

missing items and risks:

  • missing regression tests for the new documentation-driven flows. add tests that assert the restore prompt and dashboard links appear where described (test/documentation.test.ts:1).
  • windows edge cases: document and test path/env var guidance for CODEX_MULTI_AUTH_CONFIG_PATH and path separators on windows (test/documentation.test.ts:1).
  • concurrency risks: docs describe merge/dedupe behavior in the restore manager; add tests and notes for concurrent restore/apply operations and filesystem race conditions (test/documentation.test.ts:1).
🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed title follows conventional commits format with type docs, scope auth, and summary in lowercase imperative (57 chars, under 72 limit).
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Description check ✅ Passed PR description follows the template structure with all required sections completed: Summary, What Changed, Validation (all checks marked complete), Docs & Governance Checklist with items marked appropriately, Risk/Rollback details, and Additional Notes. The Greptile review documents two specific gaps (windows backup path in getting-started.md:81 and missing windows assertion in test/documentation.test.ts:364-379) but the author acknowledges these as pre-existing or non-blocking.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fresh/06-docs-frontdoor-cleanup
✨ Simplify code
  • Create PR with simplified code
  • Commit simplified code in branch fresh/06-docs-frontdoor-cleanup
📝 Coding Plan
  • Generate coding plan for human review comments

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 and usage tips.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Updates public docs to match the shipped “front-door”/dashboard workflows (login → restore, settings split, sync preview, diagnostics), resurrecting the cleaned-up docs set from archived PR #80 while keeping the stack docs-only.

Changes:

  • Documented backup restore prompt + manual restore manager entry points across landing pages and troubleshooting.
  • Updated settings/commands references to reflect the shipped settings split and preview-first Codex CLI sync workflow.
  • Expanded troubleshooting and feature map coverage for restore/sync/diagnostics flows.

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
docs/troubleshooting.md Adds restore + sync troubleshooting sections and interactive diagnostics paths
docs/reference/settings.md Aligns settings reference text with shipped menu structure and sync workflow notes
docs/reference/commands.md Updates command descriptions and settings hotkeys/workflow entry points
docs/index.md Updates docs landing page to mention restore/sync/diagnostics workflows
docs/getting-started.md Adds “Restore or start fresh” plus settings/sync guidance
docs/features.md Expands feature map for restore prompt/manager, sync center, and JSON diagnostics
docs/README.md Updates docs portal index blurbs to match new workflows
README.md Updates top-level README bullets and adds interactive dashboard paths/troubleshooting note
Comments suppressed due to low confidence (1)

docs/reference/settings.md:1

  • This list reads as if backup/rollback context is always available, but elsewhere (e.g., troubleshooting and later recommendations) backup support appears to be settings-dependent. Suggest explicitly noting here that rollback paths/context are shown only when storage backups are enabled, so users don’t expect .bak/.wal artifacts when backups are off.
# Settings Reference

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@@ -72,9 +72,11 @@ Controls display style:

## Advanced and Operator Controls
`Codex CLI Sync` is a preview-first sync center for Codex CLI account sync.
See [upgrade notes](../upgrade.md) for sync workflow changes.

Before applying sync, it shows:

The advanced section includes a preview-first sync center for Codex CLI account sync.
`Codex CLI Sync` is a preview-first sync center for Codex CLI account sync.
See [upgrade notes](../upgrade.md) for sync workflow changes.
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 3

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
docs/reference/settings.md (1)

79-103: ⚠️ Potential issue | 🟠 Major

upgrade-note and validation-script governance gap remains.

this section points readers to upgrade notes for sync workflow changes, but the upgrade doc was not updated in this pr. also, validation bullets should mention the full doc-change script set used here (including lint and the documentation test command) to keep release hygiene reproducible.

as per coding guidelines, “docs/**: keep README, SECURITY, and docs consistent with actual CLI flags and workflows. whenever behavior changes, require updated upgrade notes and mention new npm scripts.”

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@docs/reference/settings.md` around lines 79 - 103, Update the upgrade notes
and validation checklist to reflect the sync workflow changes introduced by
"Codex CLI Sync": add or update the relevant section in upgrade.md with the new
preview/apply/refresh and preservation behavior details, and expand the
Validation bullets in docs/reference/settings.md (which currently list `npm run
typecheck`, `npm run build`, `npm test`) to include the full doc-change script
set used here (e.g., `npm run lint` and the documentation test command), and
ensure README and SECURITY docs are kept consistent with the new CLI flags and
workflows so upgrade-note governance is satisfied.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@docs/reference/commands.md`:
- Line 23: Update the table row for the `codex auth login` entry to remove the
ambiguous phrase "diagnostics entry points" and rephrase it to explicitly say
this opens the interactive auth dashboard and provides dashboard paths and links
to diagnostics commands; locate and edit the `codex auth login` description
string so it reads something like "Open interactive auth dashboard, including
login, restore, settings, and dashboard paths and links to diagnostics
commands."

In `@docs/troubleshooting.md`:
- Around line 66-68: Update the troubleshooting table and adjacent text to cover
custom-root and Windows edge cases: note that backups may live in a custom data
root (e.g., when users set an app-specific data dir or XDG_DATA_HOME) instead of
~/.codex/multi-auth/backups/, and show the Windows path form (e.g.,
C:\Users\<User>\.codex\multi-auth\backups\) and how to locate the effective
backup directory (check environment/config for custom root or XDG_DATA_HOME, and
list the exact backup folder name used by the app); update the rows referencing
"You expected a restore prompt but went straight to OAuth" and "`Restore From
Backup` says no backups were found" to instruct users to verify the custom/root
path and Windows path before rerunning `codex auth login`, and add a short note
about running in an interactive terminal when confirming restore selection.

In `@README.md`:
- Line 247: Update the troubleshooting line to avoid the hardcoded
"~/.codex/multi-auth/backups/" by referencing the CODEX_MULTI_AUTH_DIR
environment variable (i.e., backups live under $CODEX_MULTI_AUTH_DIR/backups or
%CODEX_MULTI_AUTH_DIR%\backups on Windows), and add a Windows-friendly example
path; mention both Unix- and Windows-style examples and that the actual backup
location is derived from CODEX_MULTI_AUTH_DIR rather than a fixed home subpath.

---

Outside diff comments:
In `@docs/reference/settings.md`:
- Around line 79-103: Update the upgrade notes and validation checklist to
reflect the sync workflow changes introduced by "Codex CLI Sync": add or update
the relevant section in upgrade.md with the new preview/apply/refresh and
preservation behavior details, and expand the Validation bullets in
docs/reference/settings.md (which currently list `npm run typecheck`, `npm run
build`, `npm test`) to include the full doc-change script set used here (e.g.,
`npm run lint` and the documentation test command), and ensure README and
SECURITY docs are kept consistent with the new CLI flags and workflows so
upgrade-note governance is satisfied.
🪄 Autofix (Beta)

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: ASSERTIVE

Plan: Pro

Run ID: 7f83888f-cf86-4215-b7a9-81f882d59530

📥 Commits

Reviewing files that changed from the base of the PR and between 310325d and d1e44d7.

📒 Files selected for processing (8)
  • README.md
  • docs/README.md
  • docs/features.md
  • docs/getting-started.md
  • docs/index.md
  • docs/reference/commands.md
  • docs/reference/settings.md
  • docs/troubleshooting.md
📜 Review details
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Greptile Review
🧰 Additional context used
📓 Path-based instructions (1)
docs/**

⚙️ CodeRabbit configuration file

keep README, SECURITY, and docs consistent with actual CLI flags and workflows. whenever behavior changes, require updated upgrade notes and mention new npm scripts.

Files:

  • docs/reference/commands.md
  • docs/features.md
  • docs/getting-started.md
  • docs/index.md
  • docs/troubleshooting.md
  • docs/README.md
  • docs/reference/settings.md
🪛 LanguageTool
docs/getting-started.md

[style] ~77-~77: To make your writing flow more naturally, try moving the adverb ‘already’ closer to the verb ‘named’.
Context: ...rt Fresh Use the restore path when you already have named backup files and want to recover accoun...

(PERF_TENS_ADV_PLACEMENT)

🔇 Additional comments (7)
docs/features.md (1)

12-13: looks aligned with shipped flows.

these additions are consistent with runtime behavior and improve front-door clarity for restore, diagnostics, and sync/settings paths. evidence aligns with session recovery and backup validation mechanics in lib/recovery.ts:100 and lib/named-backup-export.ts:170.

Also applies to: 37-37, 59-60

README.md (1)

182-185: config source precedence docs are accurate.

the new CODEX_MULTI_AUTH_CONFIG_PATH note matches both read and write paths in config handling (lib/config.ts:68, lib/config.ts:388).

docs/getting-started.md (1)

75-95: good front-door sequencing and terminology.

the added restore and sync/settings sections are clear and consistent with shipped dashboard flows.

docs/index.md (1)

3-3: index updates are coherent and useful.

the added restore/sync/settings workflow summaries fit the daily-use landing page well.

Also applies to: 15-15, 44-49

docs/reference/commands.md (1)

94-99: hotkey/workflow pack additions look good.

this is clearer for operators and matches the updated settings split and sync path language.

Also applies to: 104-113

docs/troubleshooting.md (1)

83-95: sync troubleshooting additions are strong.

the symptom/action table and interactive diagnostics path are practical and actionable.

Also applies to: 118-122

docs/README.md (1)

20-27: portal parity improvements look good.

the updated guide/reference focus text is aligned with current dashboard workflows and settings split docs.

Also applies to: 42-44

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
docs/reference/settings.md (1)

79-96: ⚠️ Potential issue | 🟡 Minor

add an upgrade-note entry for these workflow semantics.

line 79 to line 96 introduces concrete shipped sync/restore behavior framing. please add a matching note in docs/upgrade.md and state script impact (new npm scripts or explicitly none) so migration guidance stays complete.

as per coding guidelines, docs/**: keep README, SECURITY, and docs consistent with actual CLI flags and workflows. whenever behavior changes, require updated upgrade notes and mention new npm scripts.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@docs/reference/settings.md` around lines 79 - 96, Add an upgrade-note in
docs/upgrade.md describing the shipped "Codex CLI Sync" workflow semantics
introduced (mention "Codex CLI Sync", the preview list items, and the workflow
commands: refresh and apply, and that sync is one-way and target-only accounts
are preserved), and explicitly state the script impact (no new npm scripts were
added or list any new scripts if they exist, e.g., npm run codex:sync), ensuring
README and SECURITY docs are updated to remain consistent with the CLI flags and
workflows; place the note under the appropriate version header and reference the
refresh/apply commands and backup file names (.bak, .wal) so migration guidance
is complete.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@README.md`:
- Line 185: Update the README description for CODEX_MULTI_AUTH_CONFIG_PATH to
state that when set it takes precedence and overrides the default config lookup
(i.e., it is checked first and used instead of the normal discovery), matching
the behavior implemented in lib/config.ts (see the logic around the env check in
lib/config.ts:47 and resolution in lib/config.ts:184); replace “alternate config
file source” with explicit wording that the env var overrides the default path
lookup.
- Line 214: Replace the incorrect experimental sync package name string
"oc-chatgpt-multi-auth" with the canonical package name "codex-multi-auth"
wherever it appears in the docs (the README reference and the storage-paths
reference tested by documentation.test.ts); ensure both occurrences are updated
to "codex-multi-auth" so naming is consistent with the front-door docs and the
tests.

---

Outside diff comments:
In `@docs/reference/settings.md`:
- Around line 79-96: Add an upgrade-note in docs/upgrade.md describing the
shipped "Codex CLI Sync" workflow semantics introduced (mention "Codex CLI
Sync", the preview list items, and the workflow commands: refresh and apply, and
that sync is one-way and target-only accounts are preserved), and explicitly
state the script impact (no new npm scripts were added or list any new scripts
if they exist, e.g., npm run codex:sync), ensuring README and SECURITY docs are
updated to remain consistent with the CLI flags and workflows; place the note
under the appropriate version header and reference the refresh/apply commands
and backup file names (.bak, .wal) so migration guidance is complete.
🪄 Autofix (Beta)

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: ASSERTIVE

Plan: Pro

Run ID: 2775292d-4657-4979-a5f3-326d8fda4337

📥 Commits

Reviewing files that changed from the base of the PR and between d1e44d7 and c27ac97.

📒 Files selected for processing (6)
  • README.md
  • docs/features.md
  • docs/reference/commands.md
  • docs/reference/settings.md
  • docs/troubleshooting.md
  • test/documentation.test.ts
📜 Review details
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Greptile Review
🧰 Additional context used
📓 Path-based instructions (2)
docs/**

⚙️ CodeRabbit configuration file

keep README, SECURITY, and docs consistent with actual CLI flags and workflows. whenever behavior changes, require updated upgrade notes and mention new npm scripts.

Files:

  • docs/reference/commands.md
  • docs/features.md
  • docs/reference/settings.md
  • docs/troubleshooting.md
test/**

⚙️ CodeRabbit configuration file

tests must stay deterministic and use vitest. demand regression cases that reproduce concurrency bugs, token refresh races, and windows filesystem behavior. reject changes that mock real secrets or skip assertions.

Files:

  • test/documentation.test.ts
🔇 Additional comments (5)
README.md (1)

247-247: good fix on backup-root troubleshooting guidance.

this now correctly ties restore location to CODEX_MULTI_AUTH_DIR with windows/unix examples, which matches runtime path derivation (lib/storage.ts:924, lib/named-backup-export.ts:169).

docs/features.md (1)

12-13: looks good and consistent with the shipped front-door flow.

line 12, line 13, line 27, line 58, and line 59 read clearly and keep command/workflow mapping consistent.

Also applies to: 27-27, 58-59

docs/reference/commands.md (1)

23-23: nice cleanup on command-surface wording and workflow paths.

line 23 and line 104-112 remove ambiguity and make dashboard-to-diagnostics navigation explicit.

Also applies to: 94-99, 104-112

docs/troubleshooting.md (1)

62-70: good expansion of restore and sync troubleshooting coverage.

line 62-70 and line 83-93 are actionable and align with the documented interactive flows.

Also applies to: 83-93, 118-122

test/documentation.test.ts (1)

347-347: assertion update is correct.

test/documentation.test.ts:347 now matches the renamed heading and keeps the docs contract test stable.

The Settings menu now includes an `Experimental` section for staged features:

- preview-first sync into `oc-chatgpt-multi-auth`
- preview-first sync into the companion `oc-chatgpt-multi-auth` account pool
Copy link
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# verify stale naming references in docs and tests
rg -n -C2 'oc-chatgpt-multi-auth|codex-multi-auth' README.md docs test

Repository: ndycode/codex-multi-auth

Length of output: 50382


update README and docs to use canonical package naming in experimental sync references.

README.md:214 and docs/reference/storage-paths.md:120 both reference oc-chatgpt-multi-auth where canonical naming should be codex-multi-auth to align with the rest of the front-door docs. this matters because test/documentation.test.ts already validates canonical naming consistency. fix both references to match the canonical naming policy.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@README.md` at line 214, Replace the incorrect experimental sync package name
string "oc-chatgpt-multi-auth" with the canonical package name
"codex-multi-auth" wherever it appears in the docs (the README reference and the
storage-paths reference tested by documentation.test.ts); ensure both
occurrences are updated to "codex-multi-auth" so naming is consistent with the
front-door docs and the tests.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
docs/troubleshooting.md (1)

62-93: 🧹 Nitpick | 🔵 Trivial

new troubleshooting sections look good, but test coverage is incomplete.

the "Backup Restore Problems" (lines 62-70) and "Codex CLI Sync Problems" (lines 83-93) sections are well-structured and include the correct navigation paths with "Advanced & Operator" intermediate step.

however, test/documentation.test.ts:371-372 only asserts headings exist but doesn't validate the table content or guidance text. the pr objectives explicitly flag this as a test coverage gap. consider adding assertions for key troubleshooting rows (e.g., restore prompt visibility, one-way sync behavior).

as per coding guidelines, test/** should demand regression cases that reproduce concurrency bugs, token refresh races, and windows filesystem behavior — while this is docs-only, the windows path examples at line 66 (%CODEX_MULTI_AUTH_DIR%\backups) should have corresponding test validation.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@docs/troubleshooting.md` around lines 62 - 93, The tests in
test/documentation.test.ts only assert headings exist; add concrete assertions
that validate key troubleshooting table rows and examples: assert the Backup
Restore Problems table includes the Windows path string
"%CODEX_MULTI_AUTH_DIR%\\backups" and the restore prompt guidance, and assert
the Codex CLI Sync Problems table contains the "Sync preview looks one-way" row
and its guidance text; implement these as text/regex checks (e.g., getByText or
expect(renderedText).toMatch) in the same test file and add additional
assertions that cover the documented Windows path behavior and the noted
regression categories (concurrency/token-refresh/window-fs) as TODO
regression-case placeholders so test/** enforces those coverage requirements.
♻️ Duplicate comments (1)
README.md (1)

214-214: ⚠️ Potential issue | 🟡 Minor

fix oc-chatgpt-multi-auth stale references in user-facing copy and documentation.

the issue extends beyond README.md:214. test/documentation.test.ts:134-148 only enforces canonical naming on 7 specific docs files, but missed user-facing code:

  • README.md:214: oc-chatgpt-multi-authcodex-multi-auth
  • lib/ui/copy.ts:92: "Sync Accounts to oc-chatgpt-multi-auth" → "Sync Accounts to codex-multi-auth" (user sees this in the UI)
  • docs/reference/settings.md:101 and docs/reference/storage-paths.md:120 also reference the stale name

note: lib/oc-chatgpt-target-detection.ts:366, 411, 437 intentionally use oc-chatgpt-multi-auth in error messages and env var names for backward compat; leave those alone.

📝 proposed fixes
- preview-first sync into the companion `oc-chatgpt-multi-auth` account pool
+ preview-first sync into the companion `codex-multi-auth` account pool
- experimentalSync: "Sync Accounts to oc-chatgpt-multi-auth",
+ experimentalSync: "Sync Accounts to codex-multi-auth",
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@README.md` at line 214, Update all user-facing occurrences of the stale name
"oc-chatgpt-multi-auth" to "codex-multi-auth": change the README.md instance,
replace the UI copy string in lib/ui/copy.ts (the "Sync Accounts to
`oc-chatgpt-multi-auth`" text), and update docs/reference/settings.md and
docs/reference/storage-paths.md; do not modify
lib/oc-chatgpt-target-detection.ts which intentionally preserves the old name.
Also extend test/documentation.test.ts (which currently validates only seven
docs) to include these additional files or otherwise assert the canonical naming
for README.md, lib/ui/copy.ts, docs/reference/settings.md, and
docs/reference/storage-paths.md so the change is enforced.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Outside diff comments:
In `@docs/troubleshooting.md`:
- Around line 62-93: The tests in test/documentation.test.ts only assert
headings exist; add concrete assertions that validate key troubleshooting table
rows and examples: assert the Backup Restore Problems table includes the Windows
path string "%CODEX_MULTI_AUTH_DIR%\\backups" and the restore prompt guidance,
and assert the Codex CLI Sync Problems table contains the "Sync preview looks
one-way" row and its guidance text; implement these as text/regex checks (e.g.,
getByText or expect(renderedText).toMatch) in the same test file and add
additional assertions that cover the documented Windows path behavior and the
noted regression categories (concurrency/token-refresh/window-fs) as TODO
regression-case placeholders so test/** enforces those coverage requirements.

---

Duplicate comments:
In `@README.md`:
- Line 214: Update all user-facing occurrences of the stale name
"oc-chatgpt-multi-auth" to "codex-multi-auth": change the README.md instance,
replace the UI copy string in lib/ui/copy.ts (the "Sync Accounts to
`oc-chatgpt-multi-auth`" text), and update docs/reference/settings.md and
docs/reference/storage-paths.md; do not modify
lib/oc-chatgpt-target-detection.ts which intentionally preserves the old name.
Also extend test/documentation.test.ts (which currently validates only seven
docs) to include these additional files or otherwise assert the canonical naming
for README.md, lib/ui/copy.ts, docs/reference/settings.md, and
docs/reference/storage-paths.md so the change is enforced.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 02ffb39a-a779-474b-bbba-e7e1f19f3b0c

📥 Commits

Reviewing files that changed from the base of the PR and between c27ac97 and 52d2cfa.

📒 Files selected for processing (5)
  • README.md
  • docs/index.md
  • docs/reference/commands.md
  • docs/troubleshooting.md
  • test/documentation.test.ts
📜 Review details
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Greptile Review
🧰 Additional context used
📓 Path-based instructions (2)
docs/**

⚙️ CodeRabbit configuration file

keep README, SECURITY, and docs consistent with actual CLI flags and workflows. whenever behavior changes, require updated upgrade notes and mention new npm scripts.

Files:

  • docs/troubleshooting.md
  • docs/index.md
  • docs/reference/commands.md
test/**

⚙️ CodeRabbit configuration file

tests must stay deterministic and use vitest. demand regression cases that reproduce concurrency bugs, token refresh races, and windows filesystem behavior. reject changes that mock real secrets or skip assertions.

Files:

  • test/documentation.test.ts
🔇 Additional comments (7)
docs/reference/commands.md (1)

104-111: lgtm on the interactive dashboard workflows section.

navigation paths correctly include the "Advanced & Operator" intermediate step for sync preview at line 108. this matches the fix intent from the commit message and aligns with docs/reference/settings.md section headers.

docs/troubleshooting.md (1)

118-121: interactive diagnostics paths are correctly structured.

both paths at lines 120-121 properly include the "Advanced & Operator" intermediate navigation step, consistent with the settings reference and other docs.

test/documentation.test.ts (2)

364-379: new test covers section headings but lacks content validation depth.

the test at lines 364-379 correctly validates the presence of the four new doc sections and verifies the navigation path strings include "Advanced & Operator". this addresses the header consistency requirement.

however, the assertions only check .toContain() for strings — they don't validate:

  • table row counts or structure in troubleshooting sections
  • actual cli path correctness beyond string matching
  • cross-file consistency for the same paths documented in docs/reference/commands.md:108 and docs/index.md:47

this is acceptable for a docs-only pr, but consider adding a cross-file path consistency check to catch future drift.


347-347: header rename assertion looks correct.

the updated assertion at line 347 matches the "Advanced & Operator" header terminology used consistently across docs/reference/settings.md, docs/troubleshooting.md:85, and docs/reference/commands.md:108.

docs/index.md (1)

44-48: interactive workflows section looks good.

the navigation paths are correctly structured:

  • line 46: backup restore doesn't need intermediate step (direct menu item)
  • line 47: sync preview correctly includes "Advanced & Operator" intermediate step
  • line 48: settings split correctly shows both "Everyday Settings" and "Advanced & Operator" options

consistent with docs/reference/commands.md:108-110 and docs/troubleshooting.md:85.

README.md (2)

115-119: interactive dashboard paths are correctly documented.

line 118 sync preview path correctly includes the "Advanced & Operator" intermediate step, consistent with docs/reference/commands.md:108, docs/index.md:47, and docs/troubleshooting.md:85.


182-192: config path documentation improvements look good.

lines 182-185 clarify the config file lookup order, and line 192 now correctly describes CODEX_MULTI_AUTH_CONFIG_PATH as overriding the default lookup rather than just being an "alternate source". this addresses the past review feedback about env var precedence.

@ndycode ndycode changed the base branch from fresh/05-settings-productization to dev March 18, 2026 06:47
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