"unit test가 통과해도 눌러보기 전까진 모른다"
Project 생성 API는 이미 만들어져 있었지만, 이를 호출하는 실제 화면이 없었습니다. 그래서 목록 화면도 계속 "프로젝트가 없습니다" 상태로 남아있었고, 생성부터 목록 반영까지 이어지는 실제 흐름을 검증할 방법이 없었습니다.
/projects/new에 생성 폼을 구현하도록 요청했는데, 이때 RPC나 스키마는 건드리지 말고 기존 Server Action을 그대로 재사용하도록 범위를 제한했습니다. 성공 시 상세 페이지로 이동하는 redirect 로직과, 권한 없는 사용자에게는 폼 자체를 렌더링하지 않는 방식이 제대로 구현됐는지 코드로 확인했습니다.
여기서 멈추지 않고, 목록 화면과 생성 화면을 함께 실제 브라우저로 검증하기로 결정했습니다. 생성부터 목록 반영, 검색/필터, 권한 없는 계정의 접근 차단까지 8단계 체크리스트로 진행했는데, 이 중 권한 테스트를 위해 실제 계정의 role을 임시로 DB에서 바꿨다가 확인 후 원복하는 방법을 썼습니다.
8개 검증 항목이 모두 통과한 걸 확인한 뒤 두 작업을 별도 커밋으로 분리해 push까지 마쳤습니다. unit test가 통과했다고 해서 실제 사용자 흐름이 보장되는 건 아니라는 걸 이번에 다시 확인했고, 실제로 이 통합 검증 과정에서 조직·산업명 표시 버그를 발견하는 계기가 되기도 했습니다.
unit test만으로는 실제로 브라우저에서 폼을 제출했을 때 목록에 나타나는지까지 보증할 수 없다고 판단해, 두 작업을 이어서 진행하고 실제 사용자 흐름 그대로 통합 검증하는 방식을 택했습니다. 커밋을 분리한 이유는 백로그상 별개 작업이라 이력 추적 가능성을 유지하기 위해서였습니다.
관련 프로젝트
프로젝트 개요 비즈니스 프로세스 트랜스포메이션(BPR)을 지원하는 한국어 기반 웹 애플리케이션. 컨설팅 프로젝트의 AS-IS 프로세스 분석부터 TO-BE 설계, Blueprint 승인까지의 전체 워크플로우를 디지털화하는 플랫폼으로, EPIC 단위로 구조화된 백로그를 기반으로 개발 중. 역할 및 워크플로우 PM / Architect / Reviewer 역할 수행 Codex(구현 담당)에게 Task 단위 구현 프롬프트 설계 Codex 구현 결과를 git log, git grep, git status로 직접 검증 후 승인 승인 전에는 Codex가 commit하지 않는 엄격한 게이팅 프로세스 운영 한 번에 하나의 Backlog Task만 진행, Task 완료 전 다음 Task 착수 금지 기술적 의사결정 및 성과 워크스페이스/프로젝트 접근 권한을 DB 레벨(복합 FK, SECURITY DEFINER 트리거)과 애플리케이션 레벨(Server Action 권한 검증)의 이중 방어 구조로 설계 Hard Delete 미구현 원칙 하에 배열 필드 전체교체(replace)를 단일 트랜잭션 RPC로 처리하는 패턴 확립 및 재사용 AS-IS 프로세스 그래프의 순환 참조 탐지에 Tarjan SCC 알고리즘 적용, 차단 오류(Error)와 경고(Warning)를 분리한 이중 Validator 아키텍처 설계 도메인 규칙 위반을 커스텀 Postgres 에러 코드 체계(SIA0104)로 문서화하여 거버넌스 문서와 코드베이스 간 정합성 유지 AI 생성 데이터와 사람이 검증한 데이터를 구분하는 generatedbyai / verified 메타데이터 패턴을 여러 도메인 테이블에 일관되게 적용 진행 상태 ✅ EPIC-01 (인증 / 워크스페이스 / 프로젝트 접근) ✅ EPIC-02 (조직 / 산업 / 프로젝트) 🚧 EPIC-03 (AS-IS 프로세스 그래프) — 그래프 검증, Input/Output 스키마, Business Rule 스키마 구현 완료