{"version":3,"sources":["../../src/constants.ts"],"names":[],"mappings":";;;AAQO,IAAM,QAAW,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQtB,UAAY,EAAA,wCAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWZ,SAAW,EAAA,qEAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASX,YAAc,EAAA,+CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASd,SAAW,EAAA,2DAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMX,UAAY,EAAA,+BAAA;AAAA;AAAA;AAAA;AAAA,EAKZ,IAAM,EAAA,gBAAA;AAAA;AAAA;AAAA;AAAA,EAKN,IAAM,EAAA,UAAA;AAAA;AAAA;AAAA;AAAA,EAKN,KAAO,EAAA,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMP,aAAe,EAAA,mBAAA;AAAA;AAAA;AAAA;AAAA,EAKf,OAAS,EAAA;AACX","file":"constants.cjs","sourcesContent":["/**\n * Centralized regex patterns for filename validation and parsing\n * All patterns are case-insensitive for matching but normalized to lowercase\n * \n * Note: While these patterns include state in filenames for visibility,\n * the source of truth for an item's state is its frontmatter. The sync command\n * ensures filename and filesystem location match the frontmatter state.\n */\nexport const PATTERNS = {\n  /**\n   * Pattern for files in state directories (_*): {uuid}-{type}-{state}.md\n   * Example: abc1-bug-active.md\n   * \n   * Note: State in filename should match frontmatter state.\n   * The sync command ensures this consistency.\n   */\n  STATE_FILE: /^([a-z0-9]{4})-([a-z]+)-([a-z]+)\\.md$/i,\n  \n  /**\n   * Pattern for files in type directories:\n   * - {uuid}-{type}.md\n   * - {uuid}-{type}-{state}.md\n   * - {uuid}-{type}-{state}-plan-{planid}.md\n   * \n   * Note: State in filename should match frontmatter state.\n   * The sync command ensures this consistency.\n   */\n  TYPE_FILE: /^([a-z0-9]{4})-([a-z]+)(?:-([a-z]+))?(?:-plan-([a-z0-9]{4}))?\\.md$/i,\n  \n  /**\n   * Pattern for archived files: {archive_alias}-{type}-{uuid}.md\n   * Example: done-bug-abc1.md\n   * \n   * Note: Archive state should match frontmatter and optional archive_path configuration.\n   * The sync command ensures this consistency.\n   */\n  ARCHIVE_FILE: /^(archived|done)-([a-z]+)-([a-z0-9]{4})\\.md$/i,\n  \n  /**\n   * Pattern for files with plan references: {uuid}-{type}-{state}-plan-{planid}.md\n   * Example: abc1-bug-active-plan-def2.md\n   * \n   * Note: State in filename should match frontmatter state.\n   * The sync command ensures this consistency.\n   */\n  PLAN_FILE: /^([a-z0-9]{4})-([a-z]+)-([a-z]+)-plan-([a-z0-9]{4})\\.md$/i,\n  \n  /**\n   * Pattern for simple files: {uuid}-{type}.md\n   * Example: abc1-bug.md\n   */\n  INBOX_FILE: /^([a-z0-9]{4})-([a-z]+)\\.md$/i,\n  \n  /**\n   * Pattern for UUID validation (4 chars)\n   */\n  UUID: /^[a-z0-9]{4}$/i,\n  \n  /**\n   * Pattern for type validation (lowercase letters only)\n   */\n  TYPE: /^[a-z]+$/,\n  \n  /**\n   * Pattern for state validation (lowercase letters only)\n   */\n  STATE: /^[a-z]+$/,\n  \n  /**\n   * Pattern for archive alias validation (lowercase letters only)\n   * Currently supports: 'archived' or 'done'\n   */\n  ARCHIVE_ALIAS: /^(archived|done)$/,\n  \n  /**\n   * Pattern for plan ID validation (4 chars)\n   */\n  PLAN_ID: /^[a-z0-9]{4}$/i\n}; "]}