{
  "_description": "Generated from data/ — edit the sources, not this file. The agent access guide explains the evidence boundary of every field.",
  "schemaVersion": "1.0.0",
  "kind": "entry",
  "locale": "en",
  "id": "determinate-progress",
  "name": {
    "zh": "确定进度条",
    "en": "Determinate Progress Bar"
  },
  "page": "https://designvocabulary.com/en/entries/determinate-progress/",
  "self": "https://designvocabulary.com/en/entries/determinate-progress.json",
  "alternates": {
    "zh-CN": "https://designvocabulary.com/zh/entries/determinate-progress.json",
    "en": "https://designvocabulary.com/en/entries/determinate-progress.json"
  },
  "site": {
    "catalogSchemaVersion": "0.1.0",
    "entries": 158,
    "index": "https://designvocabulary.com/en/entries/index.json",
    "query": "https://designvocabulary.com/api/query?lang=en",
    "guide": "https://designvocabulary.com/en/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.requirements",
      "entry.relations",
      "entry.implementationNote",
      "entry.behavior"
    ],
    "scope": "Definitions reference these sources. Digital specimens, selection advice, relationships, and recipes are editorial work and have not been validated through user research.",
    "editorialStatus": "sample-reviewed",
    "specimenData": "fictional",
    "specimenNote": "Original fictional specimens. Definitions cite sources; usage advice and recipes are editorial.",
    "sources": [
      {
        "id": "carbon-progress",
        "url": "https://carbondesignsystem.com/components/progress-bar/usage/",
        "title": "Carbon · Progress bar",
        "checkedAt": "2026-09-15",
        "archive": {
          "status": "available",
          "confirmed": true,
          "url": "https://web.archive.org/web/20260915165300/https://carbondesignsystem.com/components/progress-bar/usage/",
          "capturedAt": "2026-09-15T16:53:00Z",
          "lookupUrl": "https://web.archive.org/web/20260915*/https://carbondesignsystem.com/components/progress-bar/usage/"
        }
      }
    ],
    "lists": [
      {
        "id": "M-C",
        "edition": "classic",
        "seat": 2,
        "origin": "editorial-reconstruction",
        "page": "https://designvocabulary.com/en/lists/M-C/",
        "json": "https://designvocabulary.com/en/lists/M-C.json"
      }
    ],
    "ordered": false,
    "listDisclaimer": "Seat numbers are editorial positions, not scores, rankings, or popularity measurements. A list that is not filled is left as it is."
  },
  "entry": {
    "id": "determinate-progress",
    "type": "micro",
    "name": {
      "zh": "确定进度条",
      "en": "Determinate Progress Bar"
    },
    "aliases": [
      "Progress Bar",
      "百分比进度",
      "可测进度"
    ],
    "granularity": "state",
    "intents": [
      "wait-for-content",
      "track-progress"
    ],
    "tags": [
      "loading",
      "upload",
      "measured progress",
      "percentage",
      "progress"
    ],
    "definition": "Represent the actual completed proportion with a progress bar when both total work and completed work are known.",
    "boundary": "The percentage must correspond to completed work. This specimen uses a manually advanced simulated task, not real network speed.",
    "signature": [
      "An explicit task name",
      "Measurable completed work and total work",
      "A completed or failed end state"
    ],
    "when": [
      "The system provides real completed-work and total-work values",
      "People need to know how far a task has progressed"
    ],
    "when_not": [
      "Using a timer to invent percentages when progress is unknown",
      "Treating upload completion as server-side processing completion"
    ],
    "tradeoff": "Progress is more concrete, but the total and measurement method must be reliable across task stages.",
    "comparison": {
      "focus": "Showing how much is complete",
      "mechanism": "Actual completed work divided by total work",
      "cost": "Depends on reliable progress data"
    },
    "sources": [
      {
        "id": "carbon-progress",
        "title": "Carbon · Progress bar",
        "url": "https://carbondesignsystem.com/components/progress-bar/usage/",
        "claim": "Distinguishes determinate and indeterminate progress; the determinate form represents quantifiable progress.",
        "checkedAt": "2026-09-15",
        "archive": {
          "lookupUrl": "https://web.archive.org/web/20260915*/https://carbondesignsystem.com/components/progress-bar/usage/",
          "status": "available",
          "checkedAt": "2026-09-15T16:51:23.998Z",
          "jobId": "spn2-6e1e1bb11e36ab96223035765b5f0c213507b98b",
          "url": "https://web.archive.org/web/20260915165300/https://carbondesignsystem.com/components/progress-bar/usage/",
          "timestamp": "20260915165300"
        }
      }
    ],
    "relations": [
      {
        "target": "skeleton",
        "kind": "alternative",
        "condition": "Presenting a waiting state",
        "reason": "Do not choose a definite percentage without reliable completed-work data.",
        "basis": "editorial"
      },
      {
        "target": "calm-technology",
        "kind": "composes_with",
        "condition": "Progress requires no immediate response",
        "reason": "Use a status presentation that does not interrupt the task.",
        "basis": "editorial"
      }
    ],
    "rules": [
      {
        "when": "Real completed-work data is unavailable",
        "instruction": "Do not display a fabricated determinate percentage.",
        "strength": "must",
        "basis": "editorial"
      },
      {
        "when": "The task completes",
        "instruction": "Show completion and explain the next step.",
        "strength": "must",
        "basis": "editorial"
      }
    ],
    "requirements": [
      {
        "fact": "measurable_progress",
        "value": true,
        "reason": "Determinate progress requires reliable completed-work and total-work values."
      }
    ],
    "behavior": {
      "states": [
        "idle",
        "progress",
        "success",
        "error"
      ],
      "a11y": [
        "The progress indicator has an accessible name",
        "Use native progress; avoid announcing every percentage point"
      ],
      "motion": "Manual advancement, with no automatic animation"
    },
    "demo": "determinate-progress",
    "version": "0.1.0",
    "editorialStatus": "sample-reviewed",
    "demoCapabilities": [
      "keyboard",
      "reduced_motion"
    ],
    "implementationNote": "Capability tags describe this specimen only; verify the implementation again in a real product.",
    "searchTerms": [
      "加载",
      "上传",
      "真实进度",
      "百分比",
      "progress"
    ]
  }
}
