{
  "ok": true,
  "data": {
    "entry": {
      "id": "trust-but-verify-buttons",
      "kind": "tool",
      "kindLabel": "Tool",
      "title": "Every button needs a contract",
      "body": "A button should make a promise the product can keep. If it copies text, say copy. If it opens Notes, say open Notes. If it triggers a protected report, require PLATPHORM_API_KEY and show the boundary.",
      "tag": "integration",
      "date": "2026 · 06 · 30",
      "publishedAt": "2026-06-30",
      "note": null,
      "insight": {
        "aha": "A button is a product promise. If the action is only copy, link, or read JSON, the label should say exactly that.",
        "tryThis": "Audit three UI buttons and write what each one actually does, what it does not do, and what proof the user receives.",
        "watchFor": [
          "Buttons that imply a write happened",
          "Protected actions without PLATPHORM_API_KEY",
          "No source link behind generated or instructional content"
        ]
      },
      "extended": [
        "Buttons are tiny contracts. Bad buttons imply writes that never happened, automation that is not wired, or authority the user does not have.",
        "A good button tells the truth in the label, sends the user to the right surface, and leaves a source trail. A better button also exposes the public JSON or receipt behind the content.",
        "This is why a learning notebook should make Try this actions real: copy the exercise, open the learning surface, and expose the source entry."
      ],
      "url": "https://tips.platphormnews.com/entries/trust-but-verify-buttons"
    }
  }
}