fix(ci): add github token#3
Merged
Merged
Conversation
calvinbrewer
pushed a commit
that referenced
this pull request
Feb 10, 2025
Fix optional deps by adding Neon prefix
coderdan
added a commit
that referenced
this pull request
Jul 8, 2026
… missing (review #3, #6) The missing-package translation only wrapped the CONFIG load, which imports bare `stash` — so its `@cipherstash/stack` branch never fired. The package actually fails to resolve in the CLIENT file (imported by loadEncryptConfig, used by db push / schema build / encrypt), whose catch dumped a raw jiti stack trace. - #3: apply the translation to loadEncryptConfig too, so a missing @cipherstash/stack (incl. subpaths like @cipherstash/stack/schema) yields the same "install it / run stash init" guidance for every command, not a trace. - #6: replace the brittle substring matching (includes("'stash'")) with a shared, subpath-aware helper. New src/module-error.ts holds the primitives (isModuleNotFound + moduleNotFoundSpecifier's `Cannot find (module|package)` regex); native.ts now reuses them instead of its own copy, and a new config/missing-package.ts reduces a specifier to its package name before matching (so @cipherstash/stack/schema resolves to @cipherstash/stack). Tests: unit coverage for missingCipherStashPackage (subpath, non-matches, code gate) and a loadEncryptConfig test asserting the client-load path translates a missing @cipherstash/stack into guidance rather than a raw trace.
coderdan
added a commit
that referenced
this pull request
Jul 8, 2026
… missing (review #3, #6) The missing-package translation only wrapped the CONFIG load, which imports bare `stash` — so its `@cipherstash/stack` branch never fired. The package actually fails to resolve in the CLIENT file (imported by loadEncryptConfig, used by db push / schema build / encrypt), whose catch dumped a raw jiti stack trace. - #3: apply the translation to loadEncryptConfig too, so a missing @cipherstash/stack (incl. subpaths like @cipherstash/stack/schema) yields the same "install it / run stash init" guidance for every command, not a trace. - #6: replace the brittle substring matching (includes("'stash'")) with a shared, subpath-aware helper. New src/module-error.ts holds the primitives (isModuleNotFound + moduleNotFoundSpecifier's `Cannot find (module|package)` regex); native.ts now reuses them instead of its own copy, and a new config/missing-package.ts reduces a specifier to its package name before matching (so @cipherstash/stack/schema resolves to @cipherstash/stack). Tests: unit coverage for missingCipherStashPackage (subpath, non-matches, code gate) and a loadEncryptConfig test asserting the client-load path translates a missing @cipherstash/stack into guidance rather than a raw trace.
This was referenced Jul 9, 2026
Merged
coderdan
added a commit
that referenced
this pull request
Jul 17, 2026
Review follow-up on the M2 complete-rollout change (finding #1 + #3; also Copilot's sole inline comment): - plan's interactivity gate re-inlined `process.stdin.isTTY && CI !== 'true'`, which only matches exact lowercase `true` — it misses `CI=1`/`CI=TRUE` and so diverged from the shared `isInteractive()` (config/tty.ts, whose `isCiEnv()` matches `/^(1|true)$/i`) and from the case-insensitive contract the stash-cli skill documents. Swap the inline for `isInteractiveTty()` (compute-once preserved) so a CI=1 runner with a TTY takes the non-interactive path. - Drop the unused `cli` parameter from `confirmCompleteRollout`'s opts (the refusal hardcodes the `--yes` hint; `cli` was threaded but never read). No behaviour change on the documented CI=true / TTY paths. plan-complete-rollout e2e 2/2 and plan unit 22/22 green; build + biome clean. Claude-Session: https://claude.ai/code/session_01MxTTPaPP16m6br7Hoab94w
coderdan
added a commit
that referenced
this pull request
Jul 17, 2026
…nest exit (rc.2 M2) (#686) * feat(cli): make `plan --complete-rollout` automatable with --yes + honest exit (rc.2 M2) `--complete-rollout` skips the production-deploy gate, so it requires explicit consent. Previously that was an interactive p.confirm with no bypass: a non-interactive run auto-cancelled (default-no) and exited 0 via CancelledError — so CI/agents got exit 0 but no plan was drafted, and would assume one existed. - New `--yes` flag confirms the gate-skip without a prompt (automation path). - Non-interactive `--complete-rollout` WITHOUT `--yes` now refuses with a non-zero exit (CliExit(1)) and points at --yes, instead of silently cancelling with exit 0. An interactive decline stays exit 0 (a deliberate 'no' is not a failure). - isInteractive is computed once up front (the confirm needs it too). - Registry + help + `stash-cli` skill updated; messages.plan.* leaders added for e2e stability. Tests: 2 pty-less e2e (refuses+exit-1 without --yes; --yes confirms + proceeds), plus manifest resolves the new flag. Suite 540 unit / 64 e2e green, code:check clean. Changeset: stash minor. Claude-Session: https://claude.ai/code/session_01MxTTPaPP16m6br7Hoab94w * refactor(cli): use shared isInteractive() in plan; drop dead cli param Review follow-up on the M2 complete-rollout change (finding #1 + #3; also Copilot's sole inline comment): - plan's interactivity gate re-inlined `process.stdin.isTTY && CI !== 'true'`, which only matches exact lowercase `true` — it misses `CI=1`/`CI=TRUE` and so diverged from the shared `isInteractive()` (config/tty.ts, whose `isCiEnv()` matches `/^(1|true)$/i`) and from the case-insensitive contract the stash-cli skill documents. Swap the inline for `isInteractiveTty()` (compute-once preserved) so a CI=1 runner with a TTY takes the non-interactive path. - Drop the unused `cli` parameter from `confirmCompleteRollout`'s opts (the refusal hardcodes the `--yes` hint; `cli` was threaded but never read). No behaviour change on the documented CI=true / TTY paths. plan-complete-rollout e2e 2/2 and plan unit 22/22 green; build + biome clean. Claude-Session: https://claude.ai/code/session_01MxTTPaPP16m6br7Hoab94w
This was referenced Jul 21, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.