Repository navigation
fix(environments): one error line per failure, an org check on the project, and FileUpload-aware env output - #248
Conversation
✅ Snyk checks have passed. No issues have been found so far.
💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse. |
🔒 Security Scan Results
⏱️ SLA Breach Summary
ℹ️ Vulnerabilities Without Available Fixes (Informational Only)The following vulnerabilities were detected but do not have fixes available (no upgrade or patch). These are excluded from failure thresholds:
✅ BUILD PASSED - All security checks passed |
b90c966 to
bb562b6
Compare
🔒 Security Scan Results
⏱️ SLA Breach Summary
ℹ️ Vulnerabilities Without Available Fixes (Informational Only)The following vulnerabilities were detected but do not have fixes available (no upgrade or patch). These are excluded from failure thresholds:
✅ BUILD PASSED - All security checks passed |
…oject, and FileUpload-aware env output Errors - Every failure prints a single `error: <message>` line on stderr, as V1 did, instead of oclif's `Error:` block (src/core/failure.ts). LaunchCommand, RetiredCommand and launch:functions:serve report through it, and bin/run.js and bin/dev.js use it as the last handler so an unknown command gets the same line. - reportFailure passes through an error it has already printed (skipOclifErrorHandling), so the bin's handler no longer prints the line a second time. The manual harness caught the doubled line on every failing env command. - eslint.config.mjs gives bin/*.js its Node globals, and the bins drop disable comments for rules this config does not load, so lint-staged accepts them. Project resolution - A project uid given by flag or config must belong to the selected organization; otherwise the command stops with `No project with UID "…" found in this organization.` A project picked at the prompt is already scoped, so it is not looked up again. Environment and project output - launch:env:list drops the BRANCH column, and launch:env:get the BRANCH row, for a FileUpload project (the project is fetched alongside the environment). - env:get rows read ORGANIZATION UID and PROJECT UID; the project list column reads PROJECT UID. - The env:update checklist asks "Select the fields to update:", and "No records found." is yellow on a terminal. Tests - test/support/project-ownership.ts mocks the ownership lookup; the integration suites, including the variables suites merged from v2-dev, register it. - .talismanrc checksums refreshed for the test files Talisman flags by name (`env`) or by the word "pass" in a test title; none holds a credential. #claude_code# 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Harshi Shah <harshi.shah@contentstack.com> Co-Authored-By: Claude <noreply@anthropic.com>
bb562b6 to
0de01b8
Compare
🔒 Security Scan Results
⏱️ SLA Breach Summary
ℹ️ Vulnerabilities Without Available Fixes (Informational Only)The following vulnerabilities were detected but do not have fixes available (no upgrade or patch). These are excluded from failure thresholds:
✅ BUILD PASSED - All security checks passed |
bin/dev.js runs the TypeScript sources under ts-node, but required its standalone failure handler from ../dist/core/failure. On a fresh clone with no build it crashed with "Cannot find module '../dist/core/failure'" before any command ran, and with a stale dist it used an outdated handler instead of the source being edited. It now requires ../src/core/failure, which ts-node compiles on the fly. Found in review of #248. #claude_code# 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Harshi Shah <harshi.shah@contentstack.com> Co-Authored-By: Claude <noreply@anthropic.com>
What
Ticket: CL-7168
error: <message>line on stderr, as V1 did, instead of oclif'sError:block (src/core/failure.ts).LaunchCommand,RetiredCommandandlaunch:functions:servereport through it, andbin/run.js/bin/dev.jsuse it as the last handler, so an unknown command gets the same line.reportFailurepasses through an error it has already printed, which fixes the doubled line the manual harness caught on every failing env command.No project with UID "…" found in this organization.A project picked at the prompt is not looked up again.launch:env:listdrops the BRANCH column, andlaunch:env:getthe BRANCH row, for FileUpload projects.eslint.config.mjsgivesbin/*.jsits Node globals so lint-staged accepts the bins. The.talismanrcchecksums are refreshed for changed files whose flags are fake sequential test uids or generic patterns, not credentials.Notes (low, not addressed here):
env:get/env:listfetch the project twice (once for the ownership check, once for its type).Tests
npm test: 139 suites / 2404 tests pass, including newfailure.test.tscases for the already-reported pass-through.npm run lintis clean.LAUNCH_LIFECYCLEandLAUNCH_INTERACTIVEon. env create/get/list/update/delete, password protection, the checklist and decline-delete all pass, and the error cases print exactly one line. The harness updates go to the workspace repo separately.#claude_code#
🤖 Generated with Claude Code