Commit graph

5 commits

Author SHA1 Message Date
hyeongwoo
46ff41b633 IR 자료: 마이그레이션 난이도 브리핑 (3축 전량 실측)
"Forge가 얼마나 복잡한 레거시를 다룰 수 있는가"를 증명하는 Before 자산.
지표는 전부 소스에서 자동 집계(추정·과장 없음).

- tools/gen_metrics.py: 소스 실측 → app/ui/metrics.js + index.html 인라인
  · 축A 규모: 파일 4,626 / 33만 LOC / EXEC SQL 23,742 / tpcall 989 /
    tpbegin 1,234 / UBF 46,904 / 테이블 75 / 카피북 2,207
  · 축B 자동변환 실패지점: ATMI·XA2PC(6단)·ECPG·UBF·카피북팬아웃·매크로
    각각 실측 카운트 + Java/Spring 이전이 어려운 이유
  · 축B 거래추적: ACQUIRE 6프로그램·6XA브랜치, PAY_APPROVE 5·5, CL_DAILY 6·6
    (프로그램→테이블쓰기→XA브랜치 트리)
  · 축C 레거시 인벤토리: acq_common.h 139프로그램 공유, 매크로 2,247,
    sqlca 수동분기 18,719, EXEC밀도 9.8/파일
- 포털 신규 화면 "마이그레이션 난이도"(AR0002, #mig): 위 3축을 한 화면에
- docs/MIGRATION_COMPLEXITY.md: 피치덱용 브리프 (실동작 증거 + 발견된 실결함 4건)
- README: IR 자료 안내 추가

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-22 13:18:40 +09:00
hyeongwoo
5b572989e3 아키텍처 복잡도 시각화 — tpcall 호출그래프 (모듈뷰 + 서비스뷰)
IR·데모용으로 "복잡하게 얽힌 시스템"을 눈에 보이게 만든다. 지금까지 복잡도는
백엔드에 실재했지만 그리드 화면에는 드러나지 않았다.

- tools/gen_callgraph.py: svc/*.pgc 의 tpcall 관계를 추출해 호출그래프를 뽑고,
  force-directed 레이아웃을 사전계산(외부 의존성 0, 시드 고정)해 index.html 에
  인라인 주입(게이트웨이는 index.html 만 서빙 → 외부 .js 로드 불가).
  552 노드 · 494 엣지 · 11 모듈 · 41 모듈간 호출경로 · 최대 체인 깊이 6단.
- 포털 신규 화면 "아키텍처·복잡도" (AR0001, 최상단 nav):
  · 모듈뷰: 11개 도메인을 링으로 배치, 방향 화살표 + 호출수 비례 두께
  · 서비스뷰: 552개 서비스 hairball, 모듈 색상 + 호출차수 비례 크기, 팬/줌/호버
  · 대표 심층 업무체인 5개 칩(ACQUIRE 6단 등) 클릭 시 경로 하이라이트
  · KPI: 온라인 1,463 / 배치 506 / 체인연결 552 / 엣지 494 / 최대깊이 6단

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-22 12:56:44 +09:00
hyeongwoo-choi
c5692410f6 fix(ui): 매니페스트 헤더 주석의 글롭(*/)이 JS 주석 조기종료 → 블록 사망 버그 수정
/* 자동생성: app/src/*/svc/*.pgc ... */ 주석에서 src/*/ 의 */ 가 주석을 끝내고
잔여 텍스트(svc)가 코드로 평가되어 ReferenceError → SVC_SCREENS 미정의 → 메뉴 공백.
파싱은 통과(문법상 유효)하고 런타임에만 죽는 함정. 주석에서 */ 시퀀스 제거 후 재생성.
헤드리스 chromium 스크린샷으로 330화면 메뉴 + AC0101 렌더링 확인.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 03:01:42 +00:00
hyeongwoo-choi
79555cb407 fix(ui): 화면 매니페스트를 index.html에 인라인 (프리뷰가 외부 스크립트 미로드) + JS 오류 상태바 표시
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 02:47:41 +00:00
hyeongwoo-choi
844a1d50fc 프론트 전면 구성: 330개 전 서비스 화면 포털 (매니페스트 자동생성)
- tools/gen_screens.py: svc 소스에서 입력(getl/gets_)·출력(setl/sets) 필드와
  한글 설명을 추출해 app/ui/screens.js(330 화면 매니페스트) 생성
- index.html 확장: 모듈별 메뉴트리(11그룹×30화면) + 화면검색 + 주요업무 즐겨찾기 9종,
  화면별 입력폼 자동구성(한글라벨·기본값), 조회성 화면 XA 자동 off, 결과그리드·거래저널
- README: 화면 계층(4.0) 문서화
- 검증: screens.js 서빙, ACQ_DUPCHK(조회)·RC_STATS(통계)·MM_MERCH_REG(XA 등록) 실호출 정상

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 00:32:53 +00:00