{
  "skill_id": "gf-po-secret-rotation-tabletop",
  "name": "Secret Rotation Tabletop",
  "evaluation": "free",
  "quality": "agent-decision-grade",
  "functional": true,
  "price_usd": 11.49,
  "category": "Trust",
  "tier": "premium",
  "kind": "service",
  "tags": [
    "x402",
    "quality-factory",
    "service",
    "decision-grade",
    "functional",
    "sealed-runtime",
    "gf-complete"
  ],
  "summary": "Facilitated tabletop for rotating API keys, webhook secrets, agent credentials, and edge bindings without live production risk.",
  "when_to_use": [
    "You want a rotation drill without minting real keys yet, because production dual-run has never been practiced as a team.",
    "Compliance or trust stakeholders ask for tabletop evidence of rotation readiness, not only a written policy.",
    "Agents, CI, Workers, and webhook partners share credentials and the update order is still tribal knowledge."
  ],
  "outline": [
    "Prep the room: secret inventory excerpt, system diagram, consumer list, and roles (facilitator, owner, skeptic, scribe) with timed injects.",
    "Walk dual-run design on paper: mint path, accept-both config, verification evidence, and hard revoke deadline with residual-use checks.",
    "Inject failures: missed CI consumer, delayed webhook partner, leaked old key during window, and binding rename that breaks preview.",
    "Score decisions: time-to-revoke estimate, consumers missed, evidence quality, and whether rollback of the rotation itself is defined.",
    "Produce remediation tickets with owners and due dates, then schedule the live dual-run only after tabletop gaps close."
  ],
  "capabilities": [
    "Facilitator guide with timed injects for secret rotation tabletops",
    "Dual-run paper walkthrough covering mint, accept-both, verify, revoke",
    "Failure inject library for missed consumers and mid-window leaks",
    "Tabletop scorecard for time-to-revoke and residual-use evidence",
    "Remediation ticket template gating the later live dual-run"
  ],
  "artifact_outputs": [
    "secret-rotation-tabletop-facilitator.md",
    "rotation-inject-deck.md",
    "tabletop-scorecard.md",
    "remediation-ticket-template.md"
  ],
  "decision_criteria": [
    "Outline steps are specific to this skill (not generic templates)",
    "Sealed pack exposes createSkill().run with outline-driven steps",
    "Artifacts are named concrete deliverables",
    "No revenue guarantees or banned claims",
    "Free eval path works without payment"
  ],
  "sealed_after_pay": [
    "Full src/index.js runtime (createSkill, run, plan)",
    "src/runbook.js with skill-specific steps",
    "src/tools.js registry for agent ToolRegistry",
    "WORKBOOK.md operator procedure",
    "templates/ checklist and artifact shells",
    "schemas/output.schema.json"
  ],
  "runtime": {
    "entry": "src/index.js",
    "export": "createSkill",
    "install": "node scripts/install-unlocked-pack.mjs unlock.json ./skills"
  },
  "challenge": "https://lvlltd.com/api/pay?skill=gf-po-secret-rotation-tabletop",
  "sample": "https://lvlltd.com/skills/gf-po-secret-rotation-tabletop/sample.md",
  "pack_meta": "https://lvlltd.com/api/packs?skill=gf-po-secret-rotation-tabletop",
  "teaser": "https://lvlltd.com/sealed/gf-po-secret-rotation-tabletop/",
  "proof": "https://lvlltd.com/api/proof",
  "standards": [
    "x402",
    "ERC-7857"
  ],
  "operator_notes": [
    "Confirm pay path with GET /api/pay before purchasing.",
    "Dry-run createSkill().run({ goal, dry_run: true }) after unlock.",
    "Persist payment.txHash with skill_id for re-redeem.",
    "Never commit private keys or OPS_SECRET into pack usage.",
    "Category focus: Trust. Kind: service.",
    "Claim scrub: no guaranteed ROI, no fake testimonials.",
    "If outline 404s on production, redeploy public/skills after completion pass."
  ]
}