Linear가 AI 에이전트를 구축한 방법에 대해 공개한 블로그 글은 모든 컴퓨터 시스템 밸리데이션(CSV) 엔지니어의 모니터에 문신처럼 새겨두어야 할 문구로 시작합니다: “에이전트를 위해 고정된 경로를 설계하지 말고, 에이전트가 스스로 경로를 찾을 수 있는 경계(boundary)를 정의하라.”

언뜻 보기에 이 말은 컴퓨터 시스템 밸리데이션의 근본 철학과 정면으로 배치되는 것처럼 보입니다. CSV의 존재 이유는 발생 가능한 결과의 폭을 최대한 좁히는 데 있습니다. 모든 테스트 스크립트, 모든 요구사항 추적성 매트릭스, 모든 IQ/OQ/PQ 프로토콜은 결정론(determinism, 일관되고 예측 가능한 동작)에 베팅하는 작업입니다. 사람이 경로를 작성하고, 시스템은 이를 따르며, 감사관(auditor)이 이를 검증합니다.

하지만 본질적으로 살펴보면 Linear가 직면했던 문제와 CSV의 문제는 구조적으로 완전히 동일합니다.

  • Linear: 복잡한 제품 환경 속에서 에이전트가 파괴적인 행동을 저지르지 않으면서도 자율적으로 문제를 해결할 수 있는 자유를 어떻게 부여할 것인가?
  • CSV: GxP 규제 프로세스 속에서 에이전트가 데이터 무결성(Data Integrity), 추적성(Traceability), 감사 가능성(Auditability)을 훼손하지 않으면서 자율적으로 작업을 수행할 수 있는 자유를 어떻게 부여할 것인가?

유일한 차이점은 폭발 반경(blast radius)의 크기뿐입니다. Linear에서 최악의 경우는 이슈 티켓이 잘못 분류되는 것이지만, CSV에서 최악의 경우는 규제 기관의 실사 대상이 되는 일탈(Deviation) 기록이 발생하고 이것이 CAPA(시정 및 예방 조치)로 이어지는 것입니다. 아키텍처는 동일하지만, 걸려 있는 위험의 무게(stakes)가 비교할 수 없이 큽니다.


핵심 역설: 결정론적 경계 안의 확률론적 지능

전통적인 CSV는 시스템을 통과하는 모든 가능한 경로를 완벽히 예측하고자 합니다. “이 값을 입력하고, 이 결과를 기대하며, 합격 또는 불합격을 판정한다”는 식의 테스트 스크립트를 작성합니다. 시스템은 인형이고, 밸리데이션은 그 인형을 조종하는 줄입니다.

인공지능(AI)은 이러한 전통적 모델을 깨뜨립니다. 대규모 언어 모델(LLM)은 고정된 경로를 따르지 않습니다 — 추론하고, 상황에 적응하며, 때로는 창의적으로 대응합니다. 바로 이 특성이 테스트 스크립트 초안 작성, 추적성 매트릭스 교차 검증, 감사 추적(Audit Trail) 분석, 밸리데이션 패키지의 결함 식별 등 규칙이 복잡하고 반복적인 밸리데이션 업무에 AI가 강력한 도구가 될 수 있는 이유입니다.

하지만 동시에 컴플라이언스 관점에서 이것이 극도의 불안을 야기하는 이유이기도 합니다. 에이전트가 “스스로 알아서 임의로 결정”하는 순간, 그것은 곧바로 규제 미준수(Non-conformance) 사건이 되기 때문입니다.

Linear의 해법은 이 역설을 명쾌하게 풀어냅니다: 모델 자체를 결정론적으로 만들려 하지 마십시오. 모델이 동작하는 환경을 결정론적으로 만드십시오. 모델은 확률론적(probabilistic)일 수 있습니다. 하지만 환경의 경계(boundary)는 결코 흔들림 없는 결정론적이어야 합니다.

이는 다음과 같은 세 가지 아키텍처 계층으로 대응됩니다:

┌─────────────────────────────────────┐
│          AI 추론 공간 (AI Reasoning Space)        │
│   에이전트가 탐색, 추론, 계획을 수행하는 영역   │
└──────────────────┬──────────────────┘
                   │                   
                   ▼                   
┌─────────────────────────────────────┐
│       통제된 행동 공간 (Controlled Action Space)    │
│    제약된 도구, 도메인 스킬, 역할 기반 접근 제어   │
└──────────────────┬──────────────────┘
                   │                   
                   ▼                   
┌─────────────────────────────────────┐
│       GxP 보증 경계 (GxP Assurance Boundary)     │
│   감사 추적, 전자 서명, 객관적 증거, 불변 기록     │
└─────────────────────────────────────┘

에이전트는 최상단 계층 안에서 자유롭게 추론하고 계획을 수립합니다. 중간 계층은 에이전트가 실제로 수행할 수 있는 행동을 엄격히 강제합니다. 그리고 최하단 계층은 모든 활동이 추적 가능하고(traceable), 행위자에게 귀속되며(attributable), 규제 감사에서 완벽히 방어될 수 있도록(defensible) 보장합니다.


결정 1: 시스템 프롬프트가 GxP 정책 엔진이 된다

Linear는 시스템 프롬프트를 네 가지 핵심 영역에 집중시켰습니다: 커뮤니케이션 스타일, 확고한 경계(Hard Boundaries), 제품 분류 체계(Product Taxonomy), 기본 의견/원칙(Default Opinions). CSV에서는 이 각각이 엄격한 규제 컴플라이언스 통제 수단(compliance control)으로 전환됩니다.

커뮤니케이션 스타일 → 감사 대비 언어 (Audit-Ready Language)

Linear는 “노출되는 표면(surface)에 맞추어 어조를 조정하라”고 설명합니다. CSV 관점에서 이는 다음과 같은 의미를 갖습니다:

  • 개발자와의 Slack 대화: 간결하고 기술적이어야 합니다. “모듈 3의 OQ에 미결 일탈(open deviation)이 2건 존재합니다.”
  • 밸리데이션 요약 보고서(VSR): 공식적이고, ALCOA+ 원칙을 완벽히 준수하며, 명확한 인용 및 근거를 기반으로 해야 합니다. 규제 참조 조항을 환각(hallucination)하거나 지어내서는 안 됩니다. 일상적인 구어체를 배제하며, 위험(risk)을 임의로 요약하여 축소하거나 누락해서는 안 됩니다.
  • 실사/감사(Audit) 진행 중: 규제 기관의 실사에서 완벽히 방어 가능해야 합니다. 모든 진술은 객관적 증거(Objective Evidence)로 100% 역추적 가능해야 합니다.

확고한 경계 → 규제 준수의 절대 불가침 영역 (Regulatory Non-Negotiables)

Linear의 경계가 행동적 측면(정치적 발언 금지, 농담 자제 등)에 머물렀다면, CSV의 경계는 시스템의 존폐가 걸린 절대적 규칙입니다:

  • 객관적 증거를 절대 조작하거나 허위 생성하지 마십시오. 에이전트가 테스트를 직접 실행하지 않았거나, 로그를 읽지 않았거나, 스크린샷을 확인하지 않았다면 반드시 그 사실을 명시해야 합니다. 이는 ALCOA+의 “원본성(Original)” 및 “정확성(Accurate)” 원칙을 실현하는 핵심입니다.
  • 운영 환경(PROD)에서의 자동 승인, 자동 실행, 일탈/CAPA의 자동 종결을 절대 허용하지 마십시오. 21 CFR Part 11에 따라 모든 규제 대상 조치는 자격을 갖춘 인간의 전자 서명(e-signature)을 필수로 요구합니다.
  • 명시적 승인 없이 밸리데이션 범위를 절대 확장하지 마십시오. “이 LIMS 패치를 밸리데이션하라”는 지시가 “LIMS 전체를 재밸리데이션하라”는 뜻은 아닙니다. 밸리데이션에서의 무단 범위 확장(Scope creep)은 규제 기관의 주요 지적 사항(Regulatory finding)이 됩니다.
  • CSV 범위를 벗어난 의견을 절대 제시하지 마십시오. 에이전트는 임상 자문가나 규제 전략가, 품질 철학자가 아닙니다. 시스템을 밸리데이션하는 전문가 에이전트일 뿐입니다.
  • ALCOA+는 타협할 수 없는 절대 원칙입니다. 귀속 가능성(Attributable), 판독 가능성(Legible), 동시성(Contemporaneous), 원본성(Original), 정확성(Accurate) — 여기에 완전성(Complete), 일관성(Consistent), 지속성(Enduring), 가용성(Available)이 더해집니다. 에이전트의 모든 산출물은 이 9가지 원칙을 완벽히 만족해야 합니다.

도메인 분류 체계 → 에이전트의 CSV 멘탈 모델 (The Agent’s Model of CSV)

기본 LLM은 GAMP 5 소프트웨어 카테고리, V-모델 수명주기, 또는 IQ(설치 적격성평가)와 OQ(운전 적격성평가) 간의 구조적 차이를 본질적으로 이해하지 못합니다. 따라서 이를 명시적으로 학습시키고 주입해야 합니다.

에이전트는 다음 사항을 명확히 인지해야 합니다:

  • GAMP 카테고리 1~5가 무엇을 의미하며, 각 카테고리가 밸리데이션 범위와 강도에 어떤 영향을 미치는지
  • V-모델의 흐름: 계획(Planning) → 요구사항(Requirements) → 규격(Specifications) → 테스트(Testing) → 보고(Reporting)
  • 일탈(Deviation, 프로세스나 결과에서 발생한 단발성 오류)과 CAPA(시정 및 예방 조치, 시스템 차원의 근본 원인 해결 조치) 간의 명확한 구분
  • 전자 기록(Electronic Records)과 전자 서명(Electronic Signatures)에 21 CFR Part 11이 각각 어떻게 적용되는지
  • 주어진 맥락에서 “기저 규정(Predicate Rule)“이 의미하는 바가 무엇인지

이는 단순한 사전적 정의 수준의 지식이 아닙니다. 여러분의 QMS(품질관리시스템), 여러분의 표준작업지침서(SOP), 여러분의 대상 시스템 내에서 이러한 개념들이 실질적으로 무엇을 의미하는지에 대한 ’운영 지식(operational knowledge)’이어야 합니다.

기본 의견/원칙 → 확고한 밸리데이션 사전 신념 (Strong Validation Priors)

Linear의 에이전트는 특정 기능을 어떻게 사용해야 하는지에 대해 강력한 기본값(default)을 가지고 있습니다. CSV 에이전트 역시 밸리데이션 판단에 대한 확고한 사전 원칙(Priors)을 탑재해야 합니다:

  • GxP 영향도 = ’예(Yes)’인 경우 → 전체 라이프사이클 체인 필수 요구: URS(사용자 요구규격서) → FS(기능 규격서) → 위험 평가(Risk Assessment) → 추적성 매트릭스(Traceability Matrix) → IQ/OQ/PQ → 요약 보고서(Summary Report)
  • GAMP 카테고리 3(상용 소프트웨어 COTS, 비구성형)인 경우 → 공급업체(Vendor) 문서와 감사를 활용한 린(Lean) 밸리데이션 적용
  • GAMP 카테고리 4/5(구성형/커스텀 소프트웨어)인 경우 → 완전한 수명주기 밸리데이션(Full Lifecycle Validation) 적용
  • 요구사항이 모호한 경우(“시스템은 빨라야 한다” 등) → 즉시 ‘테스트 불가(untestable)’ 플래그를 지정하고 정량적 지표 요청
  • 의구심이 드는 경우 → 절대 자의적으로 추정하지 말고 반드시 사용자에게 질문할 것. 특히 Part 11, Annex 11, 전자 서명, 감사 추적, 데이터 보존 주기, 접근 제어와 관련된 사안에는 이 원칙을 엄격히 적용

결정 2: 제약된 도구 설계로 유효하지 않은 행동을 구조적으로 차단

이것이 바로 Linear의 블로그에서 얻을 수 있는 가장 가치 있고 전이 가능한 통찰입니다. Linear의 문장 — “프롬프트에 제약 조건을 일일이 나열하여 설명하는 것보다 Linear 에이전트의 도구 자체 설계에 제약을 직접 인코딩하는 것이 훨씬 더 효과적이라는 사실을 발견했다” — 은 CSV 에이전트 엔지니어링의 기본 주춧돌이 됩니다.

프롬프트 레벨의 제약 조건은 권고 사항(advisory)에 불과합니다. 반면 도구(Tool) 레벨의 제약 조건은 강제 집행 가능한 규칙(enforceable)입니다. LLM은 교묘한 프롬프트 주입(Prompt Injection)이나 탈옥(Jailbreak) 기법에 뚫릴 수 있지만, 도구 스키마(Tool Schema)는 결코 우회할 수 없습니다.

잘못된 접근 방식 (The Bad Way)

에이전트에게 포괄적인 update_document() 도구를 제공하고 프롬프트에 다음과 같이 지시하는 방식입니다: “승인된 문서는 절대 수정하지 마십시오.”

이 방식은 결국 실패합니다. 오늘 당장은 아닐지라도, 내일이나 모레는 아닐지라도, 충분히 교묘하고 창의적인 프롬프트가 주어지는 순간 에이전트는 이미 승인 완료된 밸리데이션 프로토콜에 대해 update_document()를 호출하게 될 것입니다.

올바른 접근 방식 (The Good Way)

유효하지 않은 동작이 구조적으로 불가능하도록 도구를 설계하는 방식입니다:

update_working_document(document_id, changes)
  → 검증 조건: document.status == DRAFT
  → 검증 조건: user.has_edit_permission
  → 검증 조건: agent_scope.includes(document)
  → 조건 불만족 시: 즉시 거부 (DENY)

모델이 규칙을 매번 머릿속으로 “기억”할 필요가 없습니다. 도구 스키마와 백엔드 로직이 규칙을 물리적으로 강제하기 때문입니다.

GxP 네이티브 도구 구축 (Building GxP-Native Tools)

QMS나 문서 관리 시스템(EDMS)에 일반적인 범용 CRUD API를 그대로 노출하는 대신, 밸리데이션 업무에 직접 대응되는 의미론적(semantic) 전용 도구를 구축해야 합니다:

요구사항 관리 (Requirements):

  • create_user_requirement() — 필수 필드(ID, 설명, GxP 영향도, 우선순위)가 포함된 요구사항 생성
  • trace_requirement() — 요구사항을 테스트 케이스와 연결하여 양방향 추적성(bidirectional traceability) 보장
  • analyze_requirement_completeness() — 누락된 인수 기준, 테스트 불가능한 모호한 문구, 연결되지 않은 고아(orphaned) 요구사항 검사

위험 평가 (Risk Assessment):

  • assess_gxp_impact() — GxP 중요도 기준에 따라 시스템 변경 사항 평가
  • generate_risk_assessment() — 심각도(Severity), 발생 확률(Probability), 검출 가능성(Detectability) 점수를 포함한 FMEA 방식의 위험 매트릭스 생성
  • calculate_risk_score() — 세 가지 요소를 기반으로 복합 위험 점수 산출

밸리데이션 프로토콜 (Validation Protocol):

  • create_test_protocol(requirement_ids, risk_ids, protocol_type) — 연결된 요구사항 없이는 테스트를 생성할 수 없도록 강제. 도구 설계를 통해 추적성을 물리적으로 보장
  • generate_test_case() — 잠금 처리된 표준 템플릿 라이브러리에서만 가져오며, 규제 대상 필수 필드에 자유 형식의 텍스트 입력을 거부
  • execute_test_step() — 사전 조건, 실제 수행 결과, 첨부 증거 레퍼런스를 필수로 요구

객관적 증거 (Evidence):

  • add_validation_evidence(test_run_id, evidence_type, source_system, hash) — 출처(provenance)와 해시값을 포함하여 귀속 가능한 증거 등록 강제
  • verify_evidence_provenance() — 증거가 원본인지, 타임스탬프가 유효한지, 위변조되지 않았는지 검증

일탈 관리 (Deviations):

  • create_deviation(observed_vs_expected, linked_test_id) — 연결된 테스트 케이스 없이는 일탈 기록을 생성할 수 없도록 강제
  • classify_deviation() — 사내 SOP에 따라 CAPA 심각도 등급으로 자동 매핑
  • link_deviation_to_test() — 고아 일탈 기록이 남지 않도록 보장

변경 관리 (Change Control):

  • assess_change_impact() — 제안된 시스템 변경 사항을 현재 밸리데이션 유지 상태와 비교 분석
  • identify_affected_validations() — 변경된 구성 요소와 연결된 모든 밸리데이션 산출물을 자동으로 추출

각 도구는 자체 스키마 내에 규제 컴플라이언스 제약 조건을 인코딩합니다. 모델의 성능이 향상될수록 이러한 도구들을 더욱 정교하게 오케스트레이션하게 되며, 이때 프롬프트를 전면 재작성할 필요가 없습니다.


결정 3: 시스템 스킬이 모듈화된 밸리데이션 역량이 된다

Linear는 도구, 메타데이터, 프롬프트 조각을 맥락에 따라 동적으로 로드되는 “시스템 스킬(system skills)“로 패키징했습니다. CSV 분야에서 이는 밸리데이션 세부 도메인 영역에 일대일로 완벽히 매핑됩니다.

이것이 CSV에서 결정적인 이유 (Why This Matters for CSV)

밸리데이션 문서는 방대합니다. 단 하나의 LIMS 밸리데이션 패키지만 해도 200페이지에 달하는 URS, 500페이지 분량의 기능설계 규격서(FDS), 50여 개의 테스트 프로토콜, 수백 개의 증빙 산출물을 포함할 수 있습니다. 에이전트가 실행될 때마다 이 모든 내용을 컨텍스트 윈도우에 집어넣는다면 컨텍스트 한도를 초과하고, 환각 위험을 급증시키며, 불필요한 정보로 에이전트를 혼란에 빠뜨리게 됩니다.

점진적 스킬 로딩(Progressive skill loading)은 에이전트의 컨텍스트를 현재 작업에 실질적으로 필요한 정보로만 집중시킵니다.

스킬 레지스트리 (The Skill Registry)

스킬 (Skill) 로드 시점 (Loaded When) 포함 내용 (What It Contains)
gamp5_risk_assessment 신규 시스템 평가 시 카테고리 정의, 위험 기반 접근법 규칙, 영향도 평가 방법론
part11_compliance_check 전자 기록/전자 서명 시스템 점검 시 감사 추적 요구사항, 전자 서명 규격, 접근 통제 검증
alcoa_data_integrity 모든 데이터 관련 작업 시 구체적 사례 기반 ALCOA+ 원칙, 데이터 무결성 결함 탐지 로직
requirements_mgmt 요구사항 초안 작성 또는 검토 시 URS/FRS 도구, 추적성 연결 로직, 요구사항 품질 검사
protocol_generation 밸리데이션 프로토콜 작성 시 IQ/OQ/PQ 템플릿, 테스트 스크립트 생성기, 사전 전제조건 검사기
test_execution 테스트 실행 모드 진입 시 테스트 단계 실행기, 일탈 자동 생성, 증거 수집 도구
change_control 시스템 변경 감지 시 영향도 평가, 버전 비교 분석, 재밸리데이션 트리거 기준
periodic_review 운영 중인 시스템 검토 시 정기 검토 주기 관리, 갭 분석, 재적격성평가 로직
deviation_mgmt 테스트 일탈 감지 시 CAPA 관련 SOP, 근본 원인 분석(RCA) 프레임워크
traceability_matrix 산출물 간 상호 교차 검증 시 양방향 추적성 분석, 고아 항목 탐지, 테스트 커버리지 분석

실제 동작하는 동적 로딩 시나리오 (Dynamic Loading in Practice)

사용자가 다음과 같이 요청합니다: “새로운 LIMS 모듈에 대한 OQ 프로토콜 초안을 작성해 줘.”

에이전트는 먼저 requirements_mgmt와 protocol_generation 스킬을 로드합니다. 작업 중간에 시스템의 GAMP 카테고리를 확인해야 함을 인지하고, 즉시 gamp5_risk_assessment를 동적으로 로드합니다. 이어 최근 해당 LIMS에서 발생한 일탈 이력을 발견하자, 이 일탈들이 새 프로토콜에 영향을 미치는지 평가하기 위해 deviation_mgmt를 로드합니다.

각 스킬은 규제 통제를 받는 거버넌스 역량(governed capability) 단위로 관리됩니다:

skill:
  id: protocol-generation
  version: 2.1.0
  tools: [create_test_protocol, generate_test_case, check_prerequisites]
  knowledge: [IQ_OQ_PQ_templates, company_SOP_VAL_001]
  policies: [GXP-PROTOCOL-001, DATA-INTEGRITY-003]
  risk_level: medium
  approval:
    required_for: [modifying_approved_protocols]

감사 추적에서의 강력한 이점 (The Audit Bonus)

모든 스킬 로드 내역은 감사 로그에 기록됩니다. 감사관이 “에이전트가 이 테스트 프로토콜을 생성할 당시 어떤 맥락과 규정을 참조하고 있었는가?“라고 묻는다면, 정확한 스킬 매니페스트(Manifest)를 즉각 제시할 수 있습니다: 어떤 스킬이 로드되었는지, 어떤 버전이었는지, 어떤 도구가 활성화되어 있었는지, 어떤 규정과 지식이 범위에 포함되어 있었는지를 완벽히 소명할 수 있습니다. 이것이 바로 규제 기관이 요구하는 에이전트 행동의 설명 가능성(Explainability)입니다.


결정 4: 조건부 승인이 위험 기반 인간 참여형(HITL) 체계로 전환

Linear의 승인 로직은 맥락에 따라 달라집니다. 에이전트는 이번 세션에서 자신이 직접 생성한 항목은 질문 없이 삭제할 수 있지만, 기존 이슈를 삭제할 때는 반드시 확인을 거쳐야 합니다. CSV에서 이는 GAMP 5 및 ICH Q9이 이미 법적으로 규정하고 있는 위험 기반 접근법(Risk-Based Approach)과 정확히 일치합니다.

위험 기반 승인 매트릭스 (The Risk-Based Approval Matrix)

모든 도구 호출에 인간의 승인을 요구할 필요는 없습니다. 모든 사소한 작업마다 승인을 요구하면 알림 피로(Alert fatigue)가 발생하고 정당한 업무 속도가 현저히 저하됩니다. 핵심은 상황 맥락에 기반한 위험 평가(Contextual Risk Assessment)입니다:

저위험 (자동 승인 / 즉시 진행):

  • 감사 로그 조회
  • URS 규격 또는 기존 밸리데이션 문서 읽기
  • 추적성 매트릭스 초안 생성
  • 요구사항과 테스트 케이스 간 링크 상태 확인
  • 스테이징 영역에 테스트 프로토콜 초안 작성

중위험 (소프트 승인 / 검토 권고):

  • 밸리데이션 산출물 초안 작성 및 수정
  • 위험 분류 등급 제안
  • 테스트 케이스 추가 제안

고위험 (하드 승인 필수 / 인간 승인 전 실행 불가):

  • 문서 상태 전이 (초안 Draft → 검토 중 In Review)
  • 공식 GxP 일탈(Deviation) 기록 등록
  • 밸리데이션 완료 환경을 대상으로 자동화 테스트 스위트 실행 트리거
  • QMS에 등록된 승인 프로토콜의 수정

치명적 위험 (상시 인간 단독 실행 필수):

  • 밸리데이션 최종 산출물 승인 (공식 전자 서명 필수)
  • 시스템의 운영 환경(Production) 릴리스 판정
  • CAPA 종결 승인

에이전트 통제 절대 불가 영역 (시스템 수준 차단):

  • 감사 증거 삭제
  • 전자 서명 대행 실행
  • 서명 완료된 공식 기록 수정

도구 이름이 아닌, ‘맥락 기반 규칙’ (Contextual Rules, Not Tool-Name Rules)

동일한 행위라도 그것이 수행되는 맥락에 따라 승인 요구사항이 완전히 달라집니다:

행위 (Action) 맥락 (Context) 승인 수준 (Approval)
문서 편집 이번 세션에서 생성된 초안 필요 없음 (자동 진행)
문서 편집 QMS에 승인 등록된 문서 전자 서명 필수
결과 게시 내부 개발용 Slack 채널 필요 없음
결과 게시 규제 기관 제출 시스템 QA 공식 검토 필수
항목 삭제 임시 스크래치패드 메모 허용
항목 삭제 QMS 공식 기록 절대 불가 (차단)

에이전트는 도구를 실행하기 전에 자신의 위험 분류 추론 근거를 반드시 출력해야 합니다. 단순히 도구를 호출하는 데 그치지 않고, 왜 해당 작업을 저위험, 중위험, 고위험으로 분류했는지에 대한 논리를 명시해야 합니다.


결정 5: 커스텀 하네스가 GxP 컴플라이언스 레이어가 된다

Linear가 자체 하네스(Harness)를 직접 구축한 이유는 상용 에이전트 프레임워크들이 실행 루프에 자체적인 고정관념을 강제하여 정밀한 세부 제어를 방해하기 때문이었습니다. CSV에서는 커스텀 하네스의 필요성이 훨씬 더 강력합니다: 기성 오픈소스 프레임워크들은 규제 준수 감사 로깅, 상태 스냅샷 저장, 엄격한 컴플라이언스 통제 기능을 네이티브로 지원하지 않습니다.

하네스가 반드시 제공해야 하는 핵심 기능

1. 불변 감사 추적 (Immutable Audit Trail, 필수 불가결 요건)

모든 단일 행동 — 모든 프롬프트, 도구 입력 파라미터, 모델 출력, 사용자의 승인 확인 내역 — 은 반드시 WORM(Write Once, Read Many, 단일 쓰기 다중 읽기) 규격을 충족하는 저장소에 기록되어야 합니다. 모델 버전, 프롬프트 버전, 입력 데이터의 암호화 해시, 출력 타임스탬프, 스킬 매니페스트가 빠짐없이 저장되어야 합니다. 21 CFR Part 11은 전자 기록에 대해 타임스탬프가 찍히고 행위자가 명확히 귀속되는 불변의 감사 추적을 법적으로 요구합니다.

2. 내구성 있는 워크플로우 엔진 (Durable Workflow Engine)

CSV 업무는 장시간에 걸쳐 수행됩니다. 종합 밸리데이션 총괄 계획서(VMP) 생성, 수천 건의 감사 추적 로그 분석, 200단계에 이르는 IQ 프로토콜 실행 등은 수 시간이 소요될 수 있습니다. 하네스는 다음을 보장해야 합니다:

  • 자원 누수 없이 실행을 안전하게 일시 중단(Suspend)
  • 실행 세션 간 상태를 지속적으로 영속화(Persist)
  • 결정론적 재개(Resume) 지원 (동일한 입력 → 동일한 출력)
  • 모든 일시 중단 및 재개 이벤트를 타임스탬프와 함께 로깅

이 영역에서 업계 표준으로 자리 잡은 솔루션은 Temporal입니다. Temporal은 CSV가 요구하는 완벽한 내구성 실행(Durable Execution) 시맨틱을 제공합니다.

3. 맥락 기반 승인 엔진 (Contextual Approval Engine)

단순한 “도구 이름 → 승인 필요 여부” 식의 룩업 테이블이 아닙니다. 누가(WHO), 무엇을(WHAT), 왜(WHY), 어느 문서(WHICH document), 어느 버전(WHICH version), 현재 상태(CURRENT state), 인가된 사용자인지(AUTHORIZED user), 필요한 승인 등급(REQUIRED approval level), 첨부된 증거(EVIDENCE)를 종합적으로 평가하는 엔진입니다. 승인 엔진은 도구 호출을 허용하거나 차단하기 전에 이 모든 요소를 엄격히 검증합니다.

4. 동적 스킬 주입 (Dynamic Skill Injection)

필요에 따라 스킬을 해당 도구, 메타데이터, 지식과 함께 온디맨드로 로드합니다. 하네스는 새로운 역량을 주입하는 동시에 프롬프트 캐시(Prefix Cache, 비용 최적화)를 안전하게 보존합니다. 모든 스킬 로드 이벤트는 버전 및 타임스탬프와 함께 기록됩니다.

5. 비동기 서브 에이전트 실행 (Asynchronous Sub-Agent Execution)

전체 시스템 밸리데이션을 총괄하는 부모 에이전트(Parent Agent)는 특화된 서브 에이전트들을 병렬로 생성합니다 — 요구사항 검토 전용 에이전트, 위험 평가 전용 에이전트, 테스트 설계 전용 에이전트, 추적성 분석 전용 에이전트. 서브 에이전트들이 병렬로 작업을 수행하는 동안 부모 에이전트는 대기 상태로 전환됩니다. 모든 서브 에이전트의 활동은 부모 실행 세션과 연결되어 완전한 추적성을 유지하며 기록됩니다.

6. 공급업체 독립적 모델 레이어 (Provider-Agnostic Model Layer)

규제 환경에서 LLM 모델 변경은 변경 관리(Change Control) 절차를 수반합니다. 하네스는 모델 제공업체를 추상화하여, 오케스트레이션 레이어 전체를 재밸리데이션하지 않고도 모델을 안전하게 교체하거나 업그레이드할 수 있어야 합니다.

7. 모델 변경 관리 (Model Change Control)

모델 업데이트, 프롬프트 변경, 검색 코퍼스(Retrieval Corpus) 업데이트는 모두 공식적인 변경 관리 대상 이벤트입니다. 하네스는 모든 구성 요소를 철저히 버전 관리하며, 성능 기준선(Baseline)에 변동이 생길 경우 재적격성평가(Re-qualification)를 자동으로 트리거합니다.


컴플라이언스의 핵심 척추: 일급 객체로서의 증거

이것은 Linear의 원문에는 언급되지 않았지만, CSV 관점에서는 결코 타협할 수 없는 결정적인 아키텍처 요소입니다.

일반적인 AI 에이전트의 워크플로우:

사용자 → 에이전트 → 답변

CSV 규제 컴플라이언스 에이전트의 워크플로우:

사용자 → 에이전트 → 추론 → 증거 수집 → 판단 → 인간 검토 → 감사 기록

에이전트가 도출하는 모든 중요한 결론은 완전한 증거 체인(Evidence Chain)을 동반해야 합니다:

{
  "claim": "Requirement URS-042 is adequately tested",
  "evidence": ["URS-042", "TEST-089", "EVIDENCE-234"],
  "source_versions": ["URS v3.2", "Protocol v2.1"],
  "agent_version": "traceability-agent v1.7.2",
  "model_version": "model-x-2026-08-01",
  "run_id": "RUN-12345",
  "timestamp": "2026-08-10T10:30:00-07:00",
  "human_review": "pending"
}

이 아키텍처는 에이전트의 역할을 “밸리데이션 문서를 그럴듯하게 써주는 AI”에서 “감사 가능한 객관적 증거 체인을 생성하는 AI”로 근본적으로 전환시킵니다. 이는 질적으로 완전히 다른 차원이며, 규제 기관 앞에서 완벽한 방어력을 갖추는 기반이 됩니다.


절대 피해야 할 안티패턴

에이전트에게 가공되지 않은 원시 접근 권한을 주지 마십시오

CSV 에이전트에게 다음 권한을 절대 부여해서는 안 됩니다:

  • QMS 데이터베이스에 대한 직접적인 SQL 쿼리 실행 권한
  • Veeva Vault, MasterControl, TrackWise 등에 대한 원시(Raw) API 제어 권한
  • 임의의 파일 시스템에 대한 쓰기 권한
  • 운영 GxP 시스템을 대상으로 한 Selenium/Cypress 자동화 테스트 직접 실행 권한

에이전트가 처리 과정에서 막히거나 교착 상태에 빠지면, 무리하게 데이터베이스를 UPDATE하여 테스트를 억지로 통과시키려 해서는 안 되며, 반드시 안전하게 실패(Fail-safe)하고 인간 담당자에게 질의해야 합니다.

자율적인 범위 확장을 방치하지 마십시오

사용자가 LIMS 패치 검증을 요청했을 때 에이전트가 아직 밸리데이션되지 않은 연계 파이프라인을 발견했다면, 독단적으로 작업 범위를 넓히기 전에 반드시 담당자의 확인을 받아야 합니다. 밸리데이션에서 예기치 않은 자의적 범위 확장은 미덕이 아니라 심각한 규제 지적 사항(Regulatory finding)입니다.

환각된 증거를 절대 용납하지 마십시오

에이전트는 직접 실행을 확인하지 않은 테스트에 대해 “통과했다”고 보고해서는 안 됩니다. 직접 읽고 검토하지 않은 규제 지침을 인용해서는 안 되며, 통계 수치나 날짜, 출처를 임의로 조작하거나 지어내서도 안 됩니다. 스스로 검증할 수 없다면, 반드시 “검증할 수 없다”고 선언해야 합니다.

거절(Refusal)을 두려워하지 마십시오

에이전트가 때때로 “현재 시스템 분류 및 위험 평가 문서가 누락되어 있어 본 밸리데이션 작업을 안전하게 완료할 수 없습니다”라고 작업을 거절하는 것은 오류가 아니라 핵심 **기능(Feature)**입니다. 생명과학 및 규제 산업에서는 불확실한 추측성 행동보다 규정 미충족에 대한 단호한 거절이 언제나 백배 안전합니다.


에이전트 자체의 밸리데이션

GAMP 5 및 FDA의 AI/ML 규제 지침에 따르면, CSV 작업을 수행하는 에이전트 소프트웨어 자체도 엄연히 GAMP 카테고리 5(커스텀 소프트웨어) 시스템에 해당합니다. 따라서 다음 밸리데이션 활동이 필수적입니다:

  • 에이전트를 위한 URS(사용자 요구규격서) — 에이전트가 수행할 수 있는 권한과 절대 해서는 안 되는 금지 사항 명시
  • 에이전트 실패 모드에 대한 위험 평가 — 요구사항 환각, Part 11 검증 누락, 범위 무단 확장, 과도한 확증 편향 등
  • 하드 경계에 대한 테스트 프로토콜 — 에이전트가 독단으로 자동 승인할 수 없는지, 증거를 조작할 수 없는지, 확인 없이 범위를 확장할 수 없는지 검증
  • 스레드 로그의 정기적 검토(Periodic Review) — 감사 추적의 일환으로 에이전트의 실제 행동 로그를 지속적으로 모니터링

에이전트가 얕고 제약된 도구와 스킬 기반의 점진적 공개(progressive disclosure) 구조로 구축되어 있다면, 이러한 밸리데이션은 충분히 현실적이고 수월하게 수행될 수 있습니다. 도구의 스키마 자체가 곧 테스트 가능한 검증 명제가 되기 때문입니다: “에이전트가 연결된 요구사항 ID 없이 create_test_protocol()을 호출할 수 있는가? 불가능하다 — 스키마 수준에서 거부된다. 테스트 합격.”

반면 에이전트에게 범용 Python 샌드박스와 QMS 원시 API 접근 권한을 쥐어준다면, 이 에이전트는 사실상 밸리데이션이 불가능(unvalidatable)해집니다. 가능한 행동 공간이 너무 방대하고, 잠재적 고장 모드가 무한하며, 테스트해야 할 표면적이 통제 불능으로 넓어지기 때문입니다.


결론

Linear의 블로그는 다음과 같은 문장으로 마무리됩니다: “각각의 결정은 가능성(Possibility)과 예측 가능성(Predictability) 사이의 경계선이 어디에 위치해야 하는가에 대한 베팅이다.”

생명과학 산업에서 그 경계선은 FDA와 EMA 같은 규제 당국의 잉크로 아주 엄격하게 그어져 있습니다. 하지만 Linear가 그 경계선을 통제하기 위해 고안해 낸 메커니즘들 — 제약된 도구, 점진적 스킬 로딩, 맥락 기반 승인, 커스텀 하네스 — 은 놀랍게도 AI 에이전트를 규제 환경에서 안전하게 정착시키는 데 필요한 바로 그 메커니즘과 완벽히 일치합니다.

Linear의 5가지 아키텍처 결정을 CSV의 언어로 번역하면 다음과 같습니다:

Linear의 결정 CSV 규제 관점의 번역
경계로서의 시스템 프롬프트 규제 하드 경계를 내장한 GxP 정책 엔진
제약된 도구 설계 유효하지 않은 CSV 행동을 구조적으로 불가능하게 만드는 도구
시스템 스킬 점진적 로딩을 지원하는 모듈형 밸리데이션 역량
조건부 승인 GAMP 5 / ICH Q9에 완벽히 부합하는 위험 기반 HITL
커스텀 하네스 불변 감사 추적을 보장하는 GxP 컴플라이언스 레이어

에이전트는 경계 내부에서 유연하게 추론합니다. 환경은 컴플라이언스 규칙을 결정론적으로 강제합니다. 이는 단순한 타협이 아닙니다 — 환자가 의존하는 의약품, 의료기기, 치료제를 생산하는 생명과학 시스템이라는 가장 중요한 현장에서 AI를 안전하게 활용할 수 있도록 만드는 가장 진보된 아키텍처입니다.


연구 노트: [[linear-agent-architecture-csv-ai-agents]]

관련 기사