The `dintel-gtm-toolkit` Python scripts (analyze_container.py, diff_versions.py, validate_tags.py, find_unused.py) have been replaced by the DTM Agent skill set, which operates on live containers via the GTM API instead of exported JSON. - .claude/commands/gtm-guardian.md: rewrite as a deprecation pointer with old→new mapping for every script/phase (Phase 6 → /dtm-audit + /dtm-debug, Phase 7 → /dtm-taxonomy + /dtm-lookup, etc.). - custom-skills/62-gtm-validator/code/references/phase6-audit.md: replace "D.intelligence GTM Toolkit Integration" section with DTM Agent skill map, live-container workflow, and dtm CLI examples; update objective #4. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
233 lines
5.9 KiB
Markdown
233 lines
5.9 KiB
Markdown
# Phase 6: Progressive Audit & Update
|
||
|
||
설정된 GTM Container에 대한 주기적 진단, 유효성 검증, 마이너 업데이트 및 태그 추가.
|
||
|
||
## Objectives
|
||
|
||
1. GTM 컨테이너 건강 상태 점검
|
||
2. 태그 발화 및 데이터 정합성 검증
|
||
3. 최신 요구사항 반영 업데이트
|
||
4. DTM Agent 연계 자동화
|
||
|
||
## Audit Schedule
|
||
|
||
| Frequency | Scope | Trigger |
|
||
|-----------|-------|---------|
|
||
| Weekly | Tag firing validation | 자동 스케줄 |
|
||
| Monthly | Full container review | 월간 리포트 |
|
||
| Quarterly | Architecture review | 분기 회의 |
|
||
| Ad-hoc | Issue investigation | 이슈 발생 시 |
|
||
|
||
## Audit Checklist
|
||
|
||
### 1. Container Health Check
|
||
- [ ] 버전 히스토리 확인 (최근 변경사항)
|
||
- [ ] 미사용 태그/트리거/변수 식별
|
||
- [ ] 명명 규칙 준수 여부
|
||
- [ ] 폴더 구조 정리 상태
|
||
|
||
### 2. Tag Firing Validation
|
||
- [ ] 모든 P1 태그 정상 발화
|
||
- [ ] 트리거 조건 정확성
|
||
- [ ] 변수 값 정확성
|
||
- [ ] 차단 트리거 작동
|
||
|
||
### 3. Data Quality
|
||
- [ ] GA4 Realtime 데이터 확인
|
||
- [ ] 전환 데이터 정합성
|
||
- [ ] 파라미터 값 검증
|
||
- [ ] 이상치 탐지
|
||
|
||
### 4. Platform Sync
|
||
- [ ] GA4 ↔ GTM 동기화
|
||
- [ ] Google Ads 전환 데이터
|
||
- [ ] Meta Events Manager 상태
|
||
- [ ] Kakao Pixel 상태
|
||
|
||
## DTM Agent Integration
|
||
|
||
> The legacy `dintel-gtm-toolkit` (Python scripts operating on exported container JSON) is deprecated. All container operations now go through the **DTM Agent** — a set of Claude Code skills backed by the `dtm` CLI and the Google Tag Manager API, operating on **live containers** instead of exported JSON.
|
||
|
||
### DTM Agent Skills
|
||
|
||
| Capability | Skill | Replaces |
|
||
|------------|-------|----------|
|
||
| Tag CRUD | `dtm-tags` | `analyze_container.py` (tags section) |
|
||
| Trigger CRUD | `dtm-triggers` | `analyze_container.py` (triggers section) |
|
||
| Variable CRUD | `dtm-variables` | `analyze_container.py` (variables section) |
|
||
| Dependency graph & unused detection | `dtm-lookup` | `find_unused.py` |
|
||
| Version management & diff | `dtm-version` | `diff_versions.py` |
|
||
| Container diagnostics (A–D grading) | `dtm-debug` | Container health check |
|
||
| Page audit (tracking coverage) | `dtm-audit` | Tag firing gap analysis |
|
||
| Live tag-firing QA | `gtm-validator` (this skill) | `validate_tags.py` |
|
||
| Event taxonomy classification | `dtm-taxonomy` | Naming-convention review |
|
||
| Schema.org JSON-LD | `dtm-schema` | n/a (new capability) |
|
||
| Active account/container switch | `dtm-set` | n/a |
|
||
| Status check | `dtm-status` | n/a |
|
||
|
||
### Integration Workflow
|
||
|
||
```
|
||
1. Active container selection
|
||
└── /dtm-set (or dtm set account/container)
|
||
|
||
2. Live container analysis
|
||
├── /dtm-tags, /dtm-triggers, /dtm-variables (list / inspect)
|
||
├── /dtm-lookup (dependency graph, unused resources)
|
||
└── /dtm-debug (configuration + performance grading)
|
||
|
||
3. Page-level audit
|
||
└── /dtm-audit (Chrome DevTools MCP — fired tags vs. configured)
|
||
|
||
4. Validation (this skill)
|
||
└── /gtm-validator (live page QA, trigger conditions, naming, cross-platform)
|
||
|
||
5. Versioning & rollout
|
||
└── /dtm-version (create version, compare, publish)
|
||
|
||
6. Report distribution
|
||
└── Notion via notion-writer skill (see CLAUDE.md routing rules)
|
||
```
|
||
|
||
### Sample DTM Agent Commands
|
||
|
||
```bash
|
||
# Container status & active context
|
||
dtm status
|
||
dtm list accounts
|
||
dtm list containers
|
||
|
||
# Tags / triggers / variables
|
||
dtm list tags
|
||
dtm get tag <TAG_ID>
|
||
dtm list triggers
|
||
dtm list variables
|
||
|
||
# Version management
|
||
dtm list versions
|
||
dtm version live
|
||
dtm create version --notes "Audit checkpoint"
|
||
```
|
||
|
||
Most workflows should invoke the skill (e.g. `/dtm-audit`, `/dtm-lookup`, `/gtm-validator`) rather than raw CLI calls — the skills bundle the right tool sequence, output formatting, and Notion reporting.
|
||
|
||
## Audit Report Template
|
||
|
||
```markdown
|
||
# GTM Audit Report
|
||
|
||
## Summary
|
||
- **Container**: GTM-XXXXXX
|
||
- **Audit Date**: YYYY-MM-DD
|
||
- **Version Reviewed**: XX
|
||
- **Overall Status**: ✅ Healthy / ⚠️ Needs Attention / ❌ Critical
|
||
|
||
## Findings
|
||
|
||
### ✅ Passing
|
||
- [항목]
|
||
|
||
### ⚠️ Warnings
|
||
| Issue | Impact | Recommendation |
|
||
|-------|--------|----------------|
|
||
|
||
### ❌ Critical
|
||
| Issue | Impact | Action Required |
|
||
|-------|--------|-----------------|
|
||
|
||
## Tag Firing Status
|
||
|
||
| Tag | Expected | Actual | Status |
|
||
|-----|----------|--------|--------|
|
||
| GA4 - Event - purchase | Thank You | Thank You | ✅ |
|
||
|
||
## Data Quality Check
|
||
|
||
| Metric | Expected | Actual | Variance |
|
||
|--------|----------|--------|----------|
|
||
| Daily Purchases | ~50 | 48 | -4% |
|
||
|
||
## Recommendations
|
||
1.
|
||
2.
|
||
|
||
## Next Steps
|
||
- [ ]
|
||
- [ ]
|
||
|
||
## Appendix
|
||
- Container JSON snapshot
|
||
- D.intel Toolkit output
|
||
```
|
||
|
||
## Update Procedures
|
||
|
||
### Minor Update (태그 수정)
|
||
```
|
||
1. 변경 필요 태그 식별
|
||
2. Preview 모드에서 수정
|
||
3. 테스트 완료
|
||
4. Publish with version note
|
||
5. Notion 문서 업데이트
|
||
```
|
||
|
||
### Major Update (신규 태그 추가)
|
||
```
|
||
1. Phase 3-4 문서 업데이트
|
||
2. DataLayer 요구사항 개발팀 전달
|
||
3. GTM 태그/트리거/변수 설정
|
||
4. QA 체크리스트 수행
|
||
5. 단계적 배포
|
||
6. Notion 문서 업데이트
|
||
```
|
||
|
||
### Emergency Fix
|
||
```
|
||
1. 이슈 원인 파악
|
||
2. 최소 변경으로 수정
|
||
3. Publish (emergency version note)
|
||
4. 근본 원인 분석
|
||
5. 영구 수정 계획
|
||
```
|
||
|
||
## Versioning Best Practices
|
||
|
||
### Version Naming
|
||
```
|
||
v[Major].[Minor] - [Description]
|
||
예: v12.1 - Added form_submit event
|
||
```
|
||
|
||
### Version Notes Template
|
||
```
|
||
## Changes
|
||
- Added: [새로 추가된 항목]
|
||
- Modified: [수정된 항목]
|
||
- Removed: [삭제된 항목]
|
||
|
||
## Reason
|
||
[변경 이유]
|
||
|
||
## Testing
|
||
- [테스트 항목 및 결과]
|
||
|
||
## Rollback Plan
|
||
[롤백 필요 시 절차]
|
||
```
|
||
|
||
## Monitoring Setup
|
||
|
||
### GA4 Alerts
|
||
- 일일 전환 수 급감 (>30%)
|
||
- 세션 수 급감 (>50%)
|
||
- 이벤트 수집 오류
|
||
|
||
### Custom Monitoring
|
||
- DataLayer 오류 로깅
|
||
- Tag Manager 오류 추적
|
||
- 서버 사이드 태그 상태 (sGTM 시)
|
||
|
||
## Next Phase
|
||
|
||
주기적 감사 완료 후 → Phase 7: Lookup App (필요 시)
|