{"record":{"id":"551a0bb705d9aa53","repo":"garrytan/gstack","slug":"usage-b-domain-skill-promote-to-global-host","errorCode":null,"errorMessage":"Usage: $B domain-skill promote-to-global <host>","messagePattern":"Usage: \\$B domain-skill promote-to-global <host>","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"browse/src/domain-skill-commands.ts","lineNumber":219,"sourceCode":"    return `No changes for ${host}.`;\n  }\n  // Re-save (always per-project; promotion is explicit)\n  const page = (global as any).__bm?.getPage?.();\n  void page; // we're in the daemon — page available, but for edit we trust the existing host\n  const row = await writeSkill({\n    host: current.host,\n    body: newBody,\n    projectSlug: slug,\n    source: 'human',\n    classifierScore: 0,\n  });\n  return formatSavedOk(row, slug);\n}\n\nasync function handlePromoteToGlobal(args: string[]): Promise<string> {\n  const host = args[0];\n  if (!host) {\n    throw new Error('Usage: $B domain-skill promote-to-global <host>');\n  }\n  const slug = getCurrentProjectSlug();\n  const row = await promoteToGlobal(host, slug);\n  return [\n    `Promoted ${row.host} to global scope (v${row.version}).`,\n    `Stored at: ~/.gstack/global-domain-skills.jsonl`,\n    '',\n    `This skill now fires for all projects unless they have a per-project skill for the same host.`,\n  ].join('\\n');\n}\n\nasync function handleRollback(args: string[]): Promise<string> {\n  const host = args[0];\n  if (!host) {\n    throw new Error('Usage: $B domain-skill rollback <host>');\n  }\n  const scope: SkillScope = args.includes('--global') ? 'global' : 'project';\n  const slug = getCurrentProjectSlug();","sourceCodeStart":201,"sourceCodeEnd":237,"githubUrl":"https://github.com/garrytan/gstack/blob/94993f74012782fd94416dd44b8314f6363a13a4/browse/src/domain-skill-commands.ts#L201-L237","documentation":"Error \"Usage: $B domain-skill promote-to-global <host>\" thrown in garrytan/gstack.","triggerScenarios":"Thrown at browse/src/domain-skill-commands.ts:219 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"94993f74012782fd94416dd44b8314f6363a13a4","analyzedAt":"2026-08-12T04:06:23.140Z","schemaVersion":2},"datasetVersion":"2026-08-12T13:17:24.610Z"}