유지보수 데이터 파이프라인

Plane 이슈 → 노션 유지보수 DB → LLM-WIKI 까지, 유지보수 관련 자동화 한눈에

기준일 2026-07-07 · 소스 코드(ptn.py · bdb_membership.py · bdb_fill.py) 직접 확인
Plane · 개발 이슈 A-DB · 진행중인 유지보수(원본) B-DB · trpp 사본(허브) LLM-WIKI · 지식 볼트
1 ptnPlane 이슈 → A-DB 페이지 본문
Plane 이슈요구사항·댓글·첨부
ptn
A-DB 페이지진행중인 유지보수

요구사항·댓글·하위/첨부 토글·작업요청서 링크·우선순위를 채움. 작업 상태·완료일은 안 씀(사람이 관리). 자동 · 평일 08·11·14·17시 / 주말 08시

2 멤버십 동기화 Phase 2 · A-DB → B-DB (노션↔노션)
A-DB사람이 큐레이션
업서트
B-DBtrpp 사본

A-DB 신규 행을 B-DB에 생성 + 변경분 미러링(작업 상태 포함 14필드). 멱등키 원본ID. B-DB의 동기화·위키상태 플래그는 안 건드림. 자동 · 평일 09·17시

3 본문 채움 Phase 1 · Plane → B-DB (ptn 로직 재사용)
Plane 이슈
채움
B-DB 본문

조건에 맞는 B-DB 행만 Plane에서 본문을 끌어와 채우고 동기화=true 마킹. 조건: Issue 있음 & 작업 상태 ∈ {🅾완료, ❌종료} & 동기화=false bdb-sync에 포함

4 위키 흡수 Phase 3 · B-DB → LLM-WIKI
B-DB위키상태 미흡수 행
흡수
LLM-WIKIObsidian / 드라이브

완성된 B-DB 행을 지식 위키로 흡수. 조회는 PC /llm-wiki 스킬, 모바일은 Claude 앱 구글드라이브 커넥터. 델타만 · 필요 시

한 줄 요약: 사람이 A-DB에 명단을 만들고 → ptn이 Plane 내용을 채우고 → B-DB(trpp)가 그 사본을 최신으로 유지·완성하고 → LLM-WIKI가 흡수해서 자연어로 검색.

?"Plane에서 완료로 바꿨는데 노션 상태가 그대로예요"

ptn(①)은 작업 상태·완료일을 노션에 동기화하지 않습니다. 버그가 아니라 대상에 없습니다 — 그 칸은 사람이 노션에서 직접 관리합니다.

단, A-DB에서 상태를 바꾸면 ②멤버십 동기화가 B-DB로는 상태를 넘겨줍니다(14필드에 작업 상태 포함). 즉 상태는 A-DB(사람) → B-DB(자동) 방향으로만 흐르고, Plane → A-DB로는 안 흐릅니다.

1구성요소 4개

이름정체위치 / 계정
Plane개발 이슈 트래커 (요구사항·댓글·첨부의 원천)cowave · slug danawa · project.cowave.kr
A-DB
진행중인 유지보수
사람이 수동 큐레이션하는 원본 작업 명단plan.danawa(PM 워크스페이스) · NOTION_API_KEY_PM
B-DB
(trpp 사본)
A-DB 사본 + 파이프라인 허브. 흡수 관리 플래그 보유cw.trpp 개인 · NOTION_API_KEY_BDB
LLM-WIKI최종 지식 볼트(자연어 검색 대상)G:\내 드라이브\AI-바이브\LLM-WIKI\ (Obsidian)

24개 자동화 한눈에

단계방향무엇을실행
① ptnPlane → A-DB본문(요구사항·댓글·토글·링크·우선순위)cron-job.org → GitHub Actions
② 멤버십 동기화
Phase 2
A-DB → B-DB신규 행 + 변경 미러링(작업상태 등 14필드)GitHub Actions (bdb-sync)
③ 본문 채움
Phase 1
Plane → B-DB완료/종료건 본문(ptn 로직 재사용)GitHub Actions (bdb-sync)
④ 위키 흡수
Phase 3
B-DB → LLM-WIKI위키상태 미흡수 행 흡수수동/델타 (/llm-wiki)
⚠️ B-DB가 두 개입니다 — 헷갈리기 쉬움.
  • 유지보수 B-DB 096067348067825b818f8139391dcc00 — 이 문서의 파이프라인(진행중인 유지보수 사본)
  • 마켓빌링 위키 B-DB e5f06734806782319b91810ab514567a — 별개. 마켓빌링 지식 90건, 체크박스 방식 월1회 재흡수

3ptn 상세 — 하는 일 / 안 하는 일

✅ 동기화함 (Plane → 노션)

  • 요구사항 본문 (표·콜아웃·이미지 링크 포함)
  • 댓글 전체 (작성자·시각·서식 유지)
  • 📋 하위 이슈 / 📎 첨부 토글
  • 작업요청서 링크(browse URL) · 우선순위

❌ ptn은 안 씀

  • 작업 상태 · 완료일 (노션에서 직접, 또는 ②로 B-DB에만 반영)
  • 접수일 · 기획 · 작업자 · 서비스 · 비고
  • 연관 이슈(Relations) — Plane 공개 API 미노출

ptn이 노션에 실제로 쓰는 속성

속성Property ID신규재동기화
업무명 / Issue 코드title / Y?af
작업요청서(URL)bUTK✅ 항상
우선순위R_aT✅ 있으면✅ 있으면
작업 상태 / 완료일%7BMEq / iwS0

A-DB(진행중인 유지보수) DB ID b5f20340130341e28b93aaf10e7e2f63 · 호출 /ptn KCP-3812. 형제 스킬 notion-to-plane은 반대 방향(노션 문서 → Plane 이슈 생성).

4자동 실행 스케줄

파이프라인스케줄(KST)트리거
ptn (①)평일 08·11·14·17시 / 주말 08시cron-job.org → cw-ktw/wbs-updater · ptn.yml
bdb-sync (②③)평일 09·17시GitHub Actions cron · cw-ktw/bdb-sync · sync.yml
위키 흡수 (④)필요 시 수동/llm-wiki 스킬
알림/동기화 두절 시 — GitHub PAT 회전 후 cron-job.org 헤더(평문 PAT)를 안 갈면 401 → Actions에 실행 흔적조차 안 남음. 진단: 웹훅 핑 → 스크립트 로컬 실행 → cron-job.org lastStatus 확인.

5코드 위치 · 토큰 · ID

정본 소스 (Google Drive)

토큰 (로컬 전용, Drive 미업로드)

토큰계정위치
NOTION_API_KEY_PMplan.danawa (A-DB)사용자 env var + ~/.claude/skills/ptn/.env
NOTION_API_KEY_BDBcw.trpp (B-DB)~/.claude/.envs/b-db-sync.env
PLANE_API_KEY 외 3개cowave Plane~/.claude/skills/ptn/.env

B-DB(유지보수) 096067348067825b818f8139391dcc00 · A-DB b5f20340130341e28b93aaf10e7e2f63. ⚠️ 다른 노션 통합(notionApi/notionApiDanuri/claude_ai_Notion)으로는 이 DB들에 접근하지 않음 — PM·BDB 토큰 전용.

6재동기화 함정 · 알아둘 것

수동으로 넣은 이미지·메모는 — 댓글 끝 — 마커 아래에만 두세요. 재동기화는 요구사항 heading ~ — 요구사항 끝 —, 💬 댓글 ~ — 댓글 끝 — 구간을 통째로 지우고 다시 씁니다. 그 안에 넣은 건 다음 동기화에 사라집니다. (복구 = 노션 Page history, 무료 7일)

파일: G:\내 드라이브\AI-바이브\ptn\ptn-정리.html