본문으로 건너뛰기
cccskills
무료GitHub에 공개

deploy-and-runtime-verification

MANDATORY deploy after every code change. Typecheck → deploy → purge CDN → E2E on production → visual verify → fix-forward loop. Workers Builds native CI/CD, D1 Time Travel PIT recovery, D1→R2 long-term backups, wrangler rollback, wrangler secrets management, structured observability, cross-browser smoke tests, rollback procedures, and GitHub auto-configuration.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(2)

  • SKILL.md8.4 KB
  • source.json967 B

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

08 — Deploy and Runtime Verification

Submodules: launch-day-sequence (go-live checklist, sitemap, social) | ci-cd-pipeline (GH Actions, PR tests, previews) | uptime-and-health (endpoints, UptimeRobot, /status) | changelog-and-releases (conventional commits, semver) | backup-and-disaster-recovery (D1 Time Travel, D1→R2, KV dump, restore) | gh-fix-ci (debug failing PR checks) | service-worker (Workbox cache strategies, offline fallback, background sync, push) | font-subsetting (glyphhanger, WOFF2, self-host R2, preload, budget ≤100KB) | critical-css (critters inline above-fold CSS, Angular built-in, Hono SSR, LCP ≤2.5s).

Mandatory Deploy Rule

Triggers: any code/content/config change. Does NOT: reading, memory writes, analysis, planning. Exceptions: user says don't | missing credentials (warn) | no wrangler.toml.

Deploy Sequence

  1. tsc --noEmit 2. lint (eslint --fix && prettier --write) 3. build (if exists) 4. Analytics gate (ALL THREE REQUIRED): Sentry missing→install @sentry/cloudflare+wrap+mcp__sentry__create_project+SENTRY_DSN secret | PostHog missing→add snippet to HTML (persistence:'memory', cookie-free)+CSP | GTM missing→add container snippet (head+noscript body)+CSP 5. wrangler deploy 6. purge cache 7. wait 3-5s 8. Playwright E2E 9. visual verify 1280+375px 10. fix if needed, loop.

Workers Builds (Native CI/CD — Preferred)

Connect GitHub/GitLab in CF dashboard → auto-build+deploy on push. No self-hosted Git required. Config via wrangler.toml [build] section:

[build]
command = "npm run build"
watch_dir = "src"

[build.upload]
format = "modules"
main = "./dist/worker.js"

Env-specific builds: separate [env.staging] + [env.production] blocks. Deploy hooks: CF_PAGES_BRANCH, CF_PAGES_COMMIT_SHA env vars auto-set. Preview URLs auto-generated per branch. Workers Builds preferred over GH Actions for standard repos.

GitHub Actions (External — Full Control)

cloudflare/wrangler-action@v3 with CLOUDFLARE_API_TOKEN → deploy → purge → smoke test. Gate: lint+typecheck+vitest before deploy job. Use when: monorepo, custom build steps, cross-service orchestration.

Wrangler Best Practices

Secrets: wrangler secret put KEY (never in source) | .dev.vars local (gitignored) | --secrets-file for CI batch. Set compatibility_date to today on new projects. Run wrangler types to generate binding types (never hand-write Env). Each env = separate Worker with distinct bindings. nodejs_compat flag for Node built-ins. Version: check wrangler --version ≥ 3.4.0 for Time Travel support.

Workers Observability

Enable logs+traces before first production deploy. Structured JSON: console.log({event, userId, duration}) — searchable+filterable in CF dashboard. Use console.error/console.warn for severity. Control cost via head_sampling_rate. Never passThroughOnException() — explicit try/catch only. Never store request-scoped data in module-level globals (isolate reuse = cross-request leaks). Tail Workers for real-time log streaming.

Cache Strategy

Purge everything after every deploy. Static: max-age=31536000, immutable. HTML: max-age=0, must-revalidate. API: no-store. Use CF Cache API + KV for edge caching. Purge:

curl -X POST "https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID/purge_cache" \
  -H "Authorization: Bearer $CF_API_TOKEN" --data '{"purge_everything":true}'

D1 Time Travel (Always-On PIT Recovery)

No config needed. Paid: 30-day lookback. Free: 7-day. CLI commands (requires Wrangler ≥3.4.0):

# List bookmarks (timestamps available for restore)
wrangler d1 time-travel info DB_NAME

# Restore to specific timestamp (destructive — overwrites in place)
wrangler d1 time-travel restore DB_NAME --timestamp=UNIX_EPOCH_SECONDS

# Restore to bookmark ID
wrangler d1 time-travel restore DB_NAME --bookmark=BOOKMARK_ID

# Save current state as named bookmark before risky migration
wrangler d1 time-travel info DB_NAME  # note current bookmark, pass to restore if migration fails

Returns previous bookmark for undo. No clone/fork support. Use for: accidental deletes, bad migrations, data corruption.

D1 → R2 Long-Term Backup

Retention beyond 30 days: Cron trigger (0 0 * * *) → Workflow calls D1 export endpoint → polls for signed URL → streams SQL dump to R2 d1-backups/{date}/. Built-in Workflow retries. R2 lifecycle rules auto-delete after 90 days. Zero egress on restore.

# Manual export
wrangler d1 export DB_NAME --output=backup-$(date +%Y%m%d).sql

# Restore from exported SQL
wrangler d1 execute DB_NAME --file=backup-20260101.sql

Rollback

Fix forward (default): small, quick, no corruption, no active user impact. Rollback trigger: critical (auth/payments), corruption risk, complex, active users.

# List recent deployments
wrangler deployments list

# Rollback to specific deployment (last stable = omit [deployment-id])
wrangler rollback [deployment-id]

# Rollback specific environment
wrangler rollback --env production [deployment-id]

P1 auto-rollback: Sentry alert → Inngest → wrangler rollback → Slack+SMS.

Wrangler Secrets Management

# Set secret (interactive prompt for value)
wrangler secret put SECRET_NAME

# Set secret for specific env
wrangler secret put SECRET_NAME --env production

# Batch secrets from file in CI
wrangler secret bulk .secrets.json

# List secrets (names only, values never exposed)
wrangler secret list

# Delete secret
wrangler secret delete SECRET_NAME

Never commit secrets. .dev.vars = local only (gitignored). CI: use GitHub Secrets → --secrets-file or individual wrangler secret put.

Post-Deploy Checklist (MUST RUN BEFORE REPORTING)

Immediate: Playwright 200 (not 403/challenge) | no "Just a moment" | newest feature tested E2E | AI visual screenshot | all pages 200 | images/CSS/JS load | no console errors | JSON-LD+OG+favicon+analytics | a11y (skip link, landmarks, focus-visible, reduced-motion) | manifest validates | PWA screenshots | humans.txt | security.txt | cross-site links. Visual: layout 1280+375px correct | no h-scroll/overlap/cutoff | footer bottom | brand colors | typography | crisp images | hover states. Functional: nav | forms | auth | APIs | error pages | rate limiting | CSP | CORS | /health returns 200+JSON.

Post-Deploy Automation (CI)

- run: curl -sf "$PROD_URL/health" | jq .status
- run: npx playwright test tests/smoke.spec.ts
- run: curl -X POST .../purge_cache --data '{"purge_everything":true}'

Cross-browser: Chromium every deploy. Firefox+WebKit first deploy only. Playwright toHaveScreenshot() for visual regression baseline.

Environment Parity

Watch: CSP | CORS | CDN caching | DNS | TLS | env vars | rate limiting | Worker size. Always test prod. Env-specific secrets: wrangler secret put KEY --env staging.

Workflows v2 Awareness

Rearchitected control plane (April 2026): higher concurrency + creation rate limits. Use for: D1 exports, long-running multi-step jobs, auto-remediation pipelines. Queues for single-step fan-out. ctx.waitUntil() for background work after response (30s limit).

Post-Build Critique (MANDATORY)

Generate self-critique (visual, content, performance, a11y, SEO, security). Deliver to: /admin dashboard | email (Resend to brian@megabyte.space) | top 3 in conversation.

/admin (MANDATORY every site)

AI chat | build history | critique history | quick actions (purge, tests, analytics). Protected by API key or CF Access.

Third-Party Health (every deploy)

YouTube embeds | Google Maps | Stripe sessions | GA4/GTM fires.

GitHub Auto-Config (first deploy)

gh repo edit --description/--homepage/--add-topic

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

007

무료

Security audit, hardening, threat modeling (STRIDE/PASTA), Red/Blue Team, OWASP checks, code review, incident response, and infrastructure security for any project.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

aibot88/sec_skill_store52026년 5월 27일 업데이트

Guides the creation of agile user stories and Gherkin feature files. Use when the user wants to create a user story, write acceptance criteria, define Gherkin scenarios, or author BDD feature files. This should trigger for requests such as Create a user story; Write a user story; I need to write a user story. Part of cursor-rules-java project

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

aibot88/sec_skill_store52026년 5월 27일 업데이트

Facilitates conversational discovery to create Architectural Decision Records (ADRs) for non-functional requirements using the ISO/IEC 25010:2023 quality model. Use when the user wants to document quality attributes, NFR decisions, security/performance/scalability architecture, or design systems with measurable quality criteria. This should trigger for requests such as Create ADR for Non-functional requirements; Document Non-functional requirements; Capture Non-functional requirements; Generate Non-functional requirements in an ADR. Part of cursor-rules-java project

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

aibot88/sec_skill_store52026년 5월 27일 업데이트

Run a health check on an existing project: dependency audit, security scan, test runner detection, CI/CD evaluation, and missing configuration analysis. Maps the three execution gates (pre/in/post) from /10x-bootstrapper to an assessment framework for existing codebases. Reads optional context/foundation/stack-assessment.md from /10x-stack-assess to focus checks on identified gaps. Writes context/foundation/health-check.md with findings, prioritized fixes, and an agent-readiness verdict. Use when the user has an existing project and wants to verify its health before working with an agent. Trigger phrases: "health check", "check my project", "audit my project", "is my project healthy", "sprawdź projekt", "audyt projektu", "health-check", "project health". Use AFTER /10x-stack-assess (brownfield chain), BEFORE agent onboarding (m1-l4).

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

aibot88/sec_skill_store52026년 5월 27일 업데이트

10x-team

무료

You MUST use this when building projects end-to-end. Orchestrates all 12 team roles — automatically switches between CTO, architect, PM, engineers, SRE, security, DBA, QA, and EM based on the current phase of work. Starts with brainstorming before any implementation.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

aibot88/sec_skill_store52026년 5월 27일 업데이트

Use when you need to add or configure Maven plugins in your pom.xml — including quality tools (enforcer, surefire, failsafe, jacoco, pitest, spotbugs, pmd), security scanning (OWASP), code formatting (Spotless), version management, container image build (Jib), build information tracking, and benchmarking (JMH) — through a consultative, modular step-by-step approach that only adds what you actually need. This should trigger for requests such as Add Maven plugins in pom.xml; Improve Maven plugins in pom.xml. Part of cursor-rules-java project

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

aibot88/sec_skill_store52026년 5월 27일 업데이트

aibot88의 스킬 모두 보기

이 스킬의 문제 신고