{
  "_description": "本文件由 data/ 生成：请改动来源文件，不要改这里。各字段的证据边界见接入指南。",
  "schemaVersion": "1.0.0",
  "kind": "entry",
  "locale": "zh-CN",
  "id": "nagging",
  "name": {
    "zh": "持续纠缠",
    "en": "Nagging"
  },
  "page": "https://designvocabulary.com/zh/entries/nagging/",
  "self": "https://designvocabulary.com/zh/entries/nagging.json",
  "alternates": {
    "zh-CN": "https://designvocabulary.com/zh/entries/nagging.json",
    "en": "https://designvocabulary.com/en/entries/nagging.json"
  },
  "site": {
    "catalogSchemaVersion": "0.1.0",
    "entries": 158,
    "index": "https://designvocabulary.com/zh/entries/index.json",
    "query": "https://designvocabulary.com/api/query?lang=zh",
    "guide": "https://designvocabulary.com/zh/agents/",
    "llms": "https://designvocabulary.com/llms.txt"
  },
  "provenance": {
    "sourceBacked": [
      "entry.definition"
    ],
    "editorial": [
      "entry.boundary",
      "entry.signature",
      "entry.when",
      "entry.when_not",
      "entry.tradeoff",
      "entry.comparison",
      "entry.rules",
      "entry.relations",
      "entry.implementationNote",
      "entry.anti"
    ],
    "scope": "定义参考以上来源；数字界面示例、选择建议、条件关系及配方由本样例编辑，尚未经用户研究验证。",
    "editorialStatus": "drafted",
    "specimenData": "fictional",
    "specimenNote": "示例为原创虚构界面；定义附来源，用法与配方为编辑建议。",
    "sources": [
      {
        "id": "deceptive-nagging",
        "url": "https://www.deceptive.design/types/nagging",
        "title": "Deceptive Patterns · Nagging",
        "checkedAt": "2026-09-15",
        "archive": {
          "status": "available",
          "confirmed": true,
          "url": "https://web.archive.org/web/20260916060038/https://deceptive.design/types/nagging/",
          "capturedAt": "2026-09-16T06:00:38Z",
          "lookupUrl": "https://web.archive.org/web/20260915*/https://www.deceptive.design/types/nagging"
        }
      },
      {
        "id": "gray-2018-dark-patterns",
        "url": "https://classes.cs.uchicago.edu/archive/2020/fall/33231-1/readings/2018_Grayetal_CHI_DarkPatternsUXDesign",
        "title": "Gray, Kou, Battles, Hoggatt & Toombs (CHI 2018) · The Dark (Patterns) Side of UX Design",
        "checkedAt": "2026-09-15",
        "archive": {
          "status": "available",
          "confirmed": true,
          "url": "https://web.archive.org/web/20260916051911/https://classes.cs.uchicago.edu/archive/2020/fall/33231-1/readings/2018_Grayetal_CHI_DarkPatternsUXDesign",
          "capturedAt": "2026-09-16T05:19:11Z",
          "lookupUrl": "https://web.archive.org/web/20260915*/https://classes.cs.uchicago.edu/archive/2020/fall/33231-1/readings/2018_Grayetal_CHI_DarkPatternsUXDesign"
        }
      },
      {
        "id": "edpb-dark-patterns-2022",
        "url": "https://www.edpb.europa.eu/system/files/2022-03/edpb_03-2022_guidelines_on_dark_patterns_in_social_media_platform_interfaces_en.pdf",
        "title": "EDPB · Guidelines 3/2022 on Dark Patterns in Social Media Platform Interfaces",
        "checkedAt": "2026-09-15",
        "archive": {
          "status": "available",
          "confirmed": true,
          "url": "https://web.archive.org/web/20260916051815/https://www.edpb.europa.eu/system/files/2022-03/edpb_03-2022_guidelines_on_dark_patterns_in_social_media_platform_interfaces_en.pdf",
          "capturedAt": "2026-09-16T05:18:15Z",
          "lookupUrl": "https://web.archive.org/web/20260915*/https://www.edpb.europa.eu/system/files/2022-03/edpb_03-2022_guidelines_on_dark_patterns_in_social_media_platform_interfaces_en.pdf"
        }
      }
    ],
    "lists": [
      {
        "id": "A-C",
        "edition": "classic",
        "seat": 8,
        "origin": "issue-1-ledger",
        "page": "https://designvocabulary.com/zh/lists/A-C/",
        "json": "https://designvocabulary.com/zh/lists/A-C.json"
      },
      {
        "id": "A-Y",
        "edition": "2026-focus",
        "seat": 5,
        "origin": "issue-1-ledger",
        "page": "https://designvocabulary.com/zh/lists/A-Y/",
        "json": "https://designvocabulary.com/zh/lists/A-Y.json"
      }
    ],
    "ordered": false,
    "listDisclaimer": "席位号是编辑位置，不是评分、排名或人气统计；清单未收满时保持原样，不补足。"
  },
  "entry": {
    "id": "nagging",
    "type": "anti",
    "name": {
      "zh": "持续纠缠",
      "en": "Nagging"
    },
    "aliases": [
      "同意疲劳诱导",
      "重复索求式提示",
      "Consent-Fatigue Induction"
    ],
    "granularity": "flow",
    "intents": [
      "audit-choice",
      "audit-consent"
    ],
    "tags": [
      "反模式",
      "重复打扰",
      "同意疲劳",
      "拒绝记录",
      "权限提示"
    ],
    "definition": "在用户已经明确拒绝某个请求后，仍反复用同一请求打断用户，通过消耗其注意力与耐心换取最终的“同意”，而不是通过一次有说服力的说明重新赢得同意。",
    "boundary": "与“羞辱式拒绝文案”不同：那条针对单次弹窗中用情绪压力影响拒绝的措辞，本条针对同一请求随时间反复出现、无视此前记录的拒绝；“同意疲劳诱导”作为变体合并于此——即通过反复弹出的同意/权限请求本身消耗意志力，而非靠某一次的措辞施压。一次经过合理间隔、时机恰当的提醒（例如功能相关性发生实质变化后再次询问）不属于此模式；判断依据是产品是否记录并尊重了此前已表达的“不”。",
    "signature": [
      "同一请求在用户拒绝后短期内反复出现，且没有变得更稀疏或消失",
      "拒绝选项只提供“暂不”一类的临时选项，没有真正持久生效的“不再询问”",
      "系统未记录此前的拒绝，或记录了却仍按相同频率重新弹出"
    ],
    "when": [
      "审查权限请求、通知订阅或数据同意提示是否在用户拒绝后仍重复出现",
      "审查同意管理界面是否记录了此前的拒绝并据此调整后续提示"
    ],
    "when_not": [
      "作为提升某个转化指标的推荐手段",
      "以“提醒用户功能”为由，对已被明确拒绝的同一请求维持不变的弹出频率"
    ],
    "tradeoff": "修复时可以保留少量、间隔明显拉长的提醒能力，但必须记录拒绝状态、在承诺的期限内不再展示同一请求，并提供真正持久生效的“不再询问”；重复弹出本身不得成为最终获得同意的手段。",
    "comparison": {
      "focus": "通过时间维度上的重复，而非单次情绪压力，影响选择",
      "mechanism": "无视已记录的拒绝，按相近频率反复弹出同一请求",
      "cost": "消耗用户的注意力与耐心，使“同意”来自疲劳而非真实意愿"
    },
    "sources": [
      {
        "id": "deceptive-nagging",
        "title": "Deceptive Patterns · Nagging",
        "url": "https://www.deceptive.design/types/nagging",
        "claim": "将“纠缠”定义为反复用同一请求打断用户的欺骗模式，仅提供“暂不”而非永久拒绝，并以 Instagram、Windows 等反复弹出的通知或设置请求为例。",
        "checkedAt": "2026-09-15",
        "archive": {
          "lookupUrl": "https://web.archive.org/web/20260915*/https://www.deceptive.design/types/nagging",
          "status": "available",
          "checkedAt": "2026-09-22T14:49:32.296Z",
          "jobId": "spn2-b5f8b67e2e29c6273712b442165e78bd8f3924ed",
          "url": "https://web.archive.org/web/20260916060038/https://deceptive.design/types/nagging/",
          "timestamp": "20260916060038"
        }
      },
      {
        "id": "gray-2018-dark-patterns",
        "title": "Gray, Kou, Battles, Hoggatt & Toombs (CHI 2018) · The Dark (Patterns) Side of UX Design",
        "url": "https://classes.cs.uchicago.edu/archive/2020/fall/33231-1/readings/2018_Grayetal_CHI_DarkPatternsUXDesign",
        "claim": "把“纠缠”定义为持续超过一次或多次交互、反复打断用户预期功能的轻微重定向，是该文归纳的五种暗黑模式策略之一；并以 Instagram 反复弹出“开启通知”弹窗、仅提供“暂不”而无永久关闭选项为例说明其运作方式。",
        "checkedAt": "2026-09-15",
        "archive": {
          "lookupUrl": "https://web.archive.org/web/20260915*/https://classes.cs.uchicago.edu/archive/2020/fall/33231-1/readings/2018_Grayetal_CHI_DarkPatternsUXDesign",
          "status": "available",
          "checkedAt": "2026-09-16T05:18:06.690Z",
          "jobId": "spn2-1f7b201125d0eb25b2ddac37f4bf8edd087a1e3d",
          "url": "https://web.archive.org/web/20260916051911/https://classes.cs.uchicago.edu/archive/2020/fall/33231-1/readings/2018_Grayetal_CHI_DarkPatternsUXDesign",
          "timestamp": "20260916051911"
        }
      },
      {
        "id": "edpb-dark-patterns-2022",
        "title": "EDPB · Guidelines 3/2022 on Dark Patterns in Social Media Platform Interfaces",
        "url": "https://www.edpb.europa.eu/system/files/2022-03/edpb_03-2022_guidelines_on_dark_patterns_in_social_media_platform_interfaces_en.pdf",
        "claim": "把“持续索取”（Continuous Prompting）列为过载类暗黑模式，并明确说明：即便用户此前已明确拒绝提供某项数据，产品仍无视该拒绝、按相同方式反复索取，本身即构成此模式；同时说明 GDPR 要求撤回同意应与给予同意同样简便。",
        "checkedAt": "2026-09-15",
        "archive": {
          "lookupUrl": "https://web.archive.org/web/20260915*/https://www.edpb.europa.eu/system/files/2022-03/edpb_03-2022_guidelines_on_dark_patterns_in_social_media_platform_interfaces_en.pdf",
          "status": "available",
          "checkedAt": "2026-09-23T12:03:12.507Z",
          "jobId": "spn2-08f478e096cf7ba6af37a3b05f820551f088a1a8",
          "url": "https://web.archive.org/web/20260916051815/https://www.edpb.europa.eu/system/files/2022-03/edpb_03-2022_guidelines_on_dark_patterns_in_social_media_platform_interfaces_en.pdf",
          "timestamp": "20260916051815"
        }
      }
    ],
    "relations": [
      {
        "target": "confirmshaming",
        "kind": "related",
        "condition": "审查同一同意或退出流程",
        "reason": "两者都在同意/拒绝环节施压，但机制不同：一个靠单次情绪羞辱，一个靠随时间重复的请求；应分别记录。",
        "basis": "editorial"
      },
      {
        "target": "obstruction",
        "kind": "related",
        "condition": "审查用户是否能真正终止某个请求或流程",
        "reason": "两者都剥夺了用户本应拥有的“了结”能力，一个是让退出路径变难，一个是让请求本身不会停止。",
        "basis": "editorial"
      },
      {
        "target": "calm-technology",
        "kind": "conflicts_when",
        "condition": "同一请求在用户拒绝后仍按原有频率反复打断",
        "reason": "与技术应尽量安静、只在必要时才要求注意力的取向直接冲突。",
        "basis": "editorial"
      }
    ],
    "rules": [
      {
        "when": "用户拒绝某个权限、通知或数据同意请求",
        "instruction": "记录该拒绝，并在承诺的期限内不再展示同一请求。",
        "strength": "must",
        "basis": "editorial"
      },
      {
        "when": "设计任何重新展示已被拒绝请求的机制",
        "instruction": "不得让重复弹出本身成为最终获得同意的手段；同意必须来自一次有效说明，而非疲劳。",
        "strength": "must",
        "basis": "editorial"
      },
      {
        "when": "提供拒绝选项",
        "instruction": "给出一个真正持久生效的“不再询问”，而不只是“暂不”这类临时选项。",
        "strength": "recommend",
        "basis": "editorial"
      }
    ],
    "anti": {
      "harm": "通过随时间重复的打断消耗用户的注意力与耐心，使最终的“同意”来自疲劳而非自由意愿",
      "repair": "记录已表达的拒绝，在设定期限内不再展示同一请求，并提供持久生效的“不再询问”。"
    },
    "demo": null,
    "version": "0.1.0",
    "editorialStatus": "drafted",
    "requirements": [],
    "demoCapabilities": [],
    "implementationNote": "本条尚无可操作的样本；插画为编辑示意。应用到产品时仍须核对：拒绝状态是否被实际持久化、重新提示的时间窗口是否被产品与法务共同确认、“不再询问”选项是否在所有触达渠道（含推送、邮件）生效，以及所在法域对同意撤回便利性的具体要求。",
    "image": {
      "src": "/images/nagging.webp",
      "alt": "一张虚构的 FIELDNOTES 界面插画：同一个权限提示堆叠成三层向远处延伸，每一层都带着一个已忽略的标记，而最前方又有新的一次同样的弹窗出现，旁边有一枚小小的警示三角。"
    },
    "searchTerms": [
      "anti-pattern",
      "repeated interruption",
      "consent fatigue",
      "declined-request tracking",
      "permission prompt"
    ]
  }
}
