{"record":{"id":"ddad80ce31ae2068","repo":"coleam00/Archon","slug":"workflow-name-is-deprecated-and-will-be-re","errorCode":null,"errorMessage":"⚠️ `${workflow.name}` is deprecated and will be removed in an upcoming release. ${workflow.deprecated.message} To keep using this workflow after removal, copy the workflow file into your project `.archon/workflows/` or your global `~/.archon/workflows/`.","messagePattern":"⚠️ `(.+?)` is deprecated and will be removed in an upcoming release\\. (.+?) To keep using this workflow after removal, copy the workflow file into your project `\\.archon/workflows/` or your global `~/\\.archon/workflows/`\\.","errorType":"console","errorClass":null,"httpStatus":null,"severity":"warning","filePath":"packages/cli/src/commands/workflow.ts","lineNumber":1076,"sourceCode":"): void {\n  if (!parseWarnings || parseWarnings.length === 0) return;\n  console.warn(`Warning: '${workflowName}' declares keys the engine ignores:`);\n  for (const warning of parseWarnings) {\n    console.warn(`  - ${warning}`);\n  }\n}\n\n/**\n * Print a deprecated workflow's removal notice (#2781) to stderr.\n *\n * Same channel as emitParseWarnings: stderr keeps `--json` stdout parseable,\n * and `console.warn` survives `--json`'s log silencing. Not gated on --quiet —\n * a user driving runs programmatically still has to learn the default they\n * picked is scheduled for removal.\n */\nexport function emitDeprecationNotice(workflow: WorkflowDefinition): void {\n  const notice = formatDeprecationNotice(workflow);\n  if (notice) console.warn(notice);\n}\n\nfunction countWorkflowSources(\n  workflows: readonly WorkflowWithSource[]\n): Record<WorkflowSource, number> {\n  return workflows.reduce<Record<WorkflowSource, number>>(\n    (counts, entry) => {\n      counts[entry.source] += 1;\n      return counts;\n    },\n    { bundled: 0, global: 0, project: 0 }\n  );\n}\n\ninterface WorkflowJsonEntry {\n  name: string;\n  description: string;\n  provider?: string;","sourceCodeStart":1058,"sourceCodeEnd":1094,"githubUrl":"https://github.com/coleam00/Archon/blob/0773b9745896ef0612e709c80845a0f7db315b19/packages/cli/src/commands/workflow.ts#L1058-L1094","documentation":"Deprecation notice from `emitDeprecationNotice` in packages/cli/src/commands/workflow.ts, built by `formatDeprecationNotice`. A workflow marked `deprecated` in its definition still runs, but is scheduled for removal. The notice is printed to stderr (survives `--json` log silencing, not gated on `--quiet`) and explains how to keep the workflow after removal by copying its file into project or global workflow directories.","triggerScenarios":"Invoking any workflow whose `WorkflowDefinition` has a `deprecated` field (with a message); every run of that workflow prints the notice.","commonSituations":"Using a bundled reference workflow that upstream has deprecated in favor of a replacement; scripts that invoke a deprecated workflow by name; upgrading Archon where a formerly normal workflow is now flagged.","solutions":["Read the workflow's `deprecated.message` in the notice — it names the recommended replacement.","Migrate scripts to the replacement workflow before the removal release.","If you must keep it, copy the workflow file into `.archon/workflows/` or `~/.archon/workflows/` as the notice instructs.","Track the upstream changelog/release notes for the removal version."],"exampleFix":"// before\narchon workflow run old-pack-workflow\n// after\narchon workflow run new-replacement-workflow","handlingStrategy":"fallback","validationCode":"// Detect deprecated workflows before scripting against them\nconst wf = await registry.get(name);\nif (wf?.deprecated) console.warn(`${name} deprecated: ${wf.deprecated.message}`);","typeGuard":"function isDeprecated(w: WorkflowDefinition): w is WorkflowDefinition & { deprecated: { message: string } } {\n  return 'deprecated' in w && w.deprecated != null;\n}","tryCatchPattern":null,"preventionTips":["Migrate to the replacement named in the deprecation message before upgrading further.","Pin the Archon version in scripts until migration is done.","Copy beloved workflows into .archon/workflows/ only as a stopgap, not a plan."],"tags":["cli","deprecation","workflow","migration"],"backgroundTag":"deprecated-api-usage","analyzedSha":"0773b9745896ef0612e709c80845a0f7db315b19","analyzedAt":"2026-09-01T02:28:07.064Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-08T05:18:18.240Z"}