package com.zioinfo.kintex.common.audit;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 감사 대상 표시(§7-3). 상태 변경 API(승인·낙찰·설계변경·룰셋개정·사용자관리 등)에 부착하면
 * {@link AuditAspect}가 성공/실패를 {@code audit_log}에 기록한다. <b>민감정보·비번·스택트레이스는 기록하지 않는다.</b>
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface Audited {

    /** 감사 액션 코드(예: LAYOUT_APPROVE, SYS_USER_CREATE). */
    String action();

    /** 대상 유형(테이블/도메인, 예: app_user, layout). */
    String targetType() default "";
}
