Dashboard › craft › Distillation
edbce96e-2d21-4914-96cb-470c246bd557["lore_tm_v1_I_Vu9DzGwoVctoFn7UyzupQP8Oi_X639kfGNrhcPx1g","lore_tm_v1_a-LNt2qdWw16gesCg8KedglTy5ngV2zl6Vi-rN8McLg","lore_tm_v1_dk7bbzAdbeyhg7KfmDMNvdY-K8cGBEKEM638jsrFY78","lore_tm_v1_3eAdPCMdSr35KBWPdTplx9MCcd4W313vqjfogkWGhJA"]
Date: Aug 24, 2026
workspace: custom token parser treats ["publish","--workspace","--dry-run","1"] as workspace: "--dry-run" with "1" positional, whereas yargs-parser yields workspace: "", "dry-run": "1", dryRun: "1". For ["publish","--workspace"], custom parser yields workspace: true; yargs-parser yields workspace: "". For ["--workspace="], both yield empty string workspace: "".workspace option behavior comparison: custom token parser uses last occurrence—["--workspace","cli","--workspace=mcp"] yields workspace: "mcp" and ["--workspace","cli","--workspace"] yields workspace: true; yargs-parser aggregates repeats—respectively workspace: ["cli","mcp"] and workspace: ["cli",""].in: toString, constructor, and hasOwnProperty each report false for own-property test and true as functions via membership; __proto__ reports false for own-property test and true as an object via membership.{kind:"option-terminator"} for --; subsequent tokens become positionals. For ["publish","1.0.0","--","--workspace","cli"], all tokens after index 2 are positionals; for ["publish","1.0.0","--workspace","cli","--","--workspace","mcp"], initial --workspace cli remains an option and trailing tokens are positionals.yargs-parser comparison confirms -- captures following values under "--": ["publish","1.0.0","--","--workspace","cli"] produces _: ["publish","1.0.0"], "--": ["--workspace","cli"]; with preceding --workspace cli, it produces workspace: "cli" and "--": ["--workspace","mcp"].--workspace: custom parser takes --dry-run and literal -- as values for a preceding --workspace, yielding option tokens with value: "--dry-run" and value: "--"; yargs-parser instead yields workspace: ["cli",""] plus dry-run: true, dryRun: true for --dry-run, and workspace: ["cli",""] when followed by --. Both treat --workspace= as an empty-string value./home/byk/Code/getsentry/craft-workspaces-schema/src/commands/config.ts (15 lines). It imports getConfiguration and getGlobalGitHubConfig from ../config and formatJson from ../utils/strings; exports command = ['config'] and description: Print the parsed, processed, and validated Craft config for the current project in pretty-JSON./home/byk/Code/getsentry/craft-workspaces-schema/src/commands/config.ts, handler(): Promise<void> awaits getGlobalGitHubConfig(), creates config by spreading getConfiguration() and adding github, then logs formatJson(config) through console.log.