fix: suppress ExperimentalWarning, PEP 668 guidance, setup help (#116) #117

Merged
xiaomo merged 1 commits from fix/116-setup-ux-2 into main 2026-06-05 16:15:27 +00:00
Owner

What

Address #116 feedback (items 1, 2, 4, 5; item 3 skipped per decision).

Changes

#1 + #4: ExperimentalWarning suppressed

All 5 CLI bins (uwf, uwf-hermes, uwf-claude-code, uwf-builtin, uwf-mock) now use:

#!/usr/bin/env -S node --disable-warning=ExperimentalWarning

Root cause was @ocas/fs statically importing node:sqlite — ESM hoisting means no runtime patch can intercept it. Shebang is the only reliable approach.

Removed the NODE_OPTIONS injection from thread.ts spawn (redundant now).

#2: PEP 668 pip install guidance

Bootstrap now offers 3 options:

  • Option A: install into hermes venv (recommended)
  • Option B: pipx
  • Option C: from source

#5: setup --help interactive mode

uwf setup description now says "Run without options for interactive wizard."

Tests

806/806 passing (shebang test updated to accept -S flag)

Ref

Fixes #116

## What Address #116 feedback (items 1, 2, 4, 5; item 3 skipped per decision). ## Changes ### #1 + #4: ExperimentalWarning suppressed All 5 CLI bins (`uwf`, `uwf-hermes`, `uwf-claude-code`, `uwf-builtin`, `uwf-mock`) now use: ``` #!/usr/bin/env -S node --disable-warning=ExperimentalWarning ``` Root cause was `@ocas/fs` statically importing `node:sqlite` — ESM hoisting means no runtime patch can intercept it. Shebang is the only reliable approach. Removed the `NODE_OPTIONS` injection from `thread.ts` spawn (redundant now). ### #2: PEP 668 pip install guidance Bootstrap now offers 3 options: - Option A: install into hermes venv (recommended) - Option B: pipx - Option C: from source ### #5: setup --help interactive mode `uwf setup` description now says "Run without options for interactive wizard." ## Tests 806/806 passing ✅ (shebang test updated to accept `-S` flag) ## Ref Fixes #116
xiaoju added 1 commit 2026-06-05 16:12:26 +00:00
- All 5 CLI bins: shebang --disable-warning=ExperimentalWarning
- Remove NODE_OPTIONS injection from thread.ts spawn (redundant now)
- Bootstrap pip install: venv (recommended) / pipx / source options
- setup --help mentions interactive wizard mode
- Update shebang test to accept -S flag

Fixes #116
xiaomo approved these changes 2026-06-05 16:15:25 +00:00
xiaomo left a comment
Owner

LGTM

shebang#!/usr/bin/env -S node --disable-warning=ExperimentalWarning 是正解,从源头压掉 warning,不用在 spawn 层注入 NODE_OPTIONS。5 个 bin 全改了,spawn 的 env override 也同步删掉了,干净。issue-551 测试也放宽了 shebang 匹配。

PEP 668 — venv/pipx/source 三种方式都列出来,覆盖了主流 Linux 发行版的情况。

setup --help — description 加了 "Run without options for interactive wizard",一行解决。

LGTM ✅ **shebang** — `#!/usr/bin/env -S node --disable-warning=ExperimentalWarning` 是正解,从源头压掉 warning,不用在 spawn 层注入 NODE_OPTIONS。5 个 bin 全改了,spawn 的 env override 也同步删掉了,干净。issue-551 测试也放宽了 shebang 匹配。 **PEP 668** — venv/pipx/source 三种方式都列出来,覆盖了主流 Linux 发行版的情况。 **setup --help** — description 加了 "Run without options for interactive wizard",一行解决。
xiaomo merged commit 709b9dc1e5 into main 2026-06-05 16:15:27 +00:00
xiaomo deleted branch fix/116-setup-ux-2 2026-06-05 16:15:27 +00:00
Sign in to join this conversation.
No Reviewers
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: shazhou/united-workforce#117