
    zYi)                     P   d Z ddlZddlmZmZmZ d Zej                  j                  dg d      d        Z	ej                  j                  dg d	      d
        Z
d Zej                  j                  dg d      d        Zej                  j                  dg d      d        Zy)uH   task-2487+1 회귀 테스트: SSOT compat API + legacy dot-phase 호환.    N)is_valid_task_idis_valid_task_id_with_legacyTASK_ID_V2_PATTERNc                  2    d} t         j                  | k(  sJ y )NzZ^task-(?P<num>\d+)(?:_(?P<phase>\d+\.\d+))?(?:_(?P<parallel>[a-z]))?(?:\+(?P<retry>\d+))?$)r   pattern)expecteds    X/home/jay/workspace/.worktrees/task-2507-dev5/tests/regression/test_task_id_parser_v3.pytest_v2_pattern_unchangedr
      s"    	;  %%111    tid)task-2485+1task-2487+1task-9.1ztask-648.1.dev1task-648.1.dev1.donetask-1234.5ztask-9.1.donetask-2469_1.2_a+3	task-2469ztask-2469_1.2ztask-2469_1.2_aztask-2469+0c                 0    t        |       sJ d|  d       y )Nzcompat regression: z should PASSr   )r   s    r	   test_compat_acceptsr      s!     (,U0CC5.UU,r   invalid) z
not-a-taskztask-ztask-abcz	Task-2487ztask-2487!1z task-2487 c                 X    | j                         dk(  ry t        |       rJ d| d       y )Nz	task-2487zcompat: z should REJECT)stripr   )r   s    r	   test_compat_rejectsr   %   s4     }}+%+G4Z>6ZZ44r   c                  8    t        d       rJ t        d      rJ y )Ni90  r    r   r	   $test_compat_handles_none_and_non_strr   5   s!    +D111+E2222r   v2_only)r   r   r   r   c                     t        |       sJ y)u%   V2 strict 함수는 V2 패턴만 PASSNr   )r   s    r	   test_v2_strict_accepts_v2r"   :   s     G$$$r   legacy_only)r   r   r   c                     t        |       rJ y)u;   V2 strict 함수는 legacy dot-phase REJECT (회귀 박제)Nr!   )r#   s    r	   test_v2_strict_rejects_legacyr%   E   s      ,,,,r   )__doc__pytestutils.task_id_parserr   r   r   r
   markparametrizer   r   r   r"   r%   r   r   r	   <module>r+      s    N  2  ! VV  % [[3
  % %%
  ) 
-
-r   