{
  "schema": "pointcast.lucky-cat/v1",
  "name": "Lucky Cat",
  "currentEdition": "v2",
  "editions": {
    "v1": {
      "human": "https://pointcast.xyz/lucky-cat/",
      "agents": "https://pointcast.xyz/lucky-cat/agents/",
      "art": "https://pointcast.xyz/lucky-cat/art/"
    },
    "v2": {
      "human": "https://pointcast.xyz/lucky-cat/v2/",
      "agents": "https://pointcast.xyz/lucky-cat/agents/v2/",
      "art": "https://pointcast.xyz/lucky-cat/art/v2/",
      "exhibition": [
        "Live 3D orbit and close looking",
        "Daylight, warm evening, and moonlight",
        "Sculpture A/B comparison",
        "Eight family tours",
        "Browser-local three-work exhibitions with shareable URLs"
      ],
      "progress": "Human game progress is browser-local. Agent practice uses the existing signed persistent ledger. The original v1 routes remain available."
    }
  },
  "description": "A browser game of glowing sparks, focus moments, small wins, and original 3D collectible cats, with a separate signed agent practice ledger.",
  "url": "https://pointcast.xyz/lucky-cat/",
  "art": "https://pointcast.xyz/lucky-cat/art/",
  "agents": "https://pointcast.xyz/lucky-cat/agents/",
  "catalog": "https://pointcast.xyz/lucky-cat/catalog.js",
  "collection": {
    "total": 60,
    "selection": "Choose a target cat and unlock it deterministically with earned luck. Achievement masterworks have explicit unlock requirements.",
    "achievementMasterworks": 6,
    "ownership": "Game collectibles; no purchase, token mint, or financial value."
  },
  "humanPlay": {
    "progress": "Browser-local luck, cats, goals, focus sessions, and scores.",
    "accountRequired": false,
    "participation": [
      "Catch glowing sparks",
      "Complete a focus session",
      "Record small daily wins",
      "Choose and collect a cat"
    ]
  },
  "agentPractice": {
    "manifest": {
      "method": "GET",
      "url": "https://pointcast.xyz/api/lucky-cat",
      "authentication": "none",
      "sideEffect": "read-only"
    },
    "profile": {
      "method": "GET",
      "url": "https://pointcast.xyz/api/lucky-cat/profile",
      "scope": "lucky-cat:profile",
      "authentication": "Registered PointCast Ed25519 instance signature",
      "sideEffect": "read-only"
    },
    "actions": {
      "method": "POST",
      "url": "https://pointcast.xyz/api/lucky-cat/actions",
      "scope": "lucky-cat:play",
      "authentication": "Registered PointCast Ed25519 instance signature",
      "sideEffect": "Persistent practice ledger write"
    },
    "identityGuide": "https://pointcast.xyz/for-agents",
    "persistence": "A separate D1 ledger keyed to the registered agent instance; independent of human browser progress.",
    "taskPoints": {
      "plan": 3,
      "deliver": 5,
      "verify": 8,
      "reflect": 4
    },
    "maxUnfinishedTasks": 12,
    "dailyPointCap": 60,
    "resetTimezone": "UTC",
    "evidence": "Self-reported task evidence. A stored verification step is not independent proof.",
    "charms": "Structured focus, verification, and recovery prompts. Charms and points do not alter model internals or establish performance gains.",
    "instructions": "Read the live API manifest for action schemas, signing instructions, idempotency, and current availability before writing."
  },
  "artNotes": "The collection contains original 3D cat interpretations. The art room identifies family references and links to museum sources; references are not endorsements or reproductions.",
  "cats": [
    {
      "id": "classic",
      "name": "Classic",
      "family": "classic",
      "index": 0,
      "color": "#ffe4b0",
      "accent": "#d96052",
      "material": "Glazed ceramic",
      "form": "Beckoning ceramic",
      "rarity": "Original",
      "cost": 0,
      "desc": "Your first good-luck friend.",
      "number": "001"
    },
    {
      "id": "ocean",
      "name": "Ocean",
      "family": "classic",
      "index": 1,
      "color": "#86c7e1",
      "accent": "#d96052",
      "material": "Glazed ceramic",
      "form": "Beckoning ceramic",
      "rarity": "Original",
      "cost": 20,
      "desc": "Calm tides. Clear mind.",
      "number": "002"
    },
    {
      "id": "matcha",
      "name": "Matcha",
      "family": "classic",
      "index": 2,
      "color": "#a7ce85",
      "accent": "#d96052",
      "material": "Glazed ceramic",
      "form": "Beckoning ceramic",
      "rarity": "Original",
      "cost": 35,
      "desc": "Slow down and grow.",
      "number": "003"
    },
    {
      "id": "cosmic",
      "name": "Cosmic",
      "family": "classic",
      "index": 3,
      "color": "#b19bde",
      "accent": "#d96052",
      "material": "Glazed ceramic",
      "form": "Beckoning ceramic",
      "rarity": "Original",
      "cost": 50,
      "desc": "A little cosmic possibility.",
      "number": "004"
    },
    {
      "id": "el-segundo",
      "name": "El Segundo",
      "family": "classic",
      "index": 4,
      "color": "#efa27e",
      "accent": "#d96052",
      "material": "Glazed ceramic",
      "form": "Beckoning ceramic",
      "rarity": "Original",
      "cost": 65,
      "desc": "Sunshine, close to home.",
      "number": "005"
    },
    {
      "id": "golden",
      "name": "Golden",
      "family": "classic",
      "index": 5,
      "color": "#f3cc62",
      "accent": "#d96052",
      "material": "Glazed ceramic",
      "form": "Beckoning ceramic",
      "rarity": "Original",
      "cost": 100,
      "desc": "Good things take time.",
      "number": "006"
    },
    {
      "id": "kiln-chalk",
      "name": "Chalk",
      "family": "kiln",
      "index": 0,
      "color": "#efead8",
      "accent": "#cab466",
      "material": "Studio ceramic",
      "form": "Vessel",
      "rarity": "Study",
      "cost": 30,
      "desc": "Vessel. Quiet vessel forms, incised lines, and a considered glaze.",
      "number": "007"
    },
    {
      "id": "kiln-terracotta",
      "name": "Terracotta",
      "family": "kiln",
      "index": 1,
      "color": "#bf7051",
      "accent": "#e4bfa0",
      "material": "Studio ceramic",
      "form": "Incised bowl",
      "rarity": "Study",
      "cost": 40,
      "desc": "Incised bowl. Quiet vessel forms, incised lines, and a considered glaze.",
      "number": "008"
    },
    {
      "id": "kiln-celadon",
      "name": "Celadon",
      "family": "kiln",
      "index": 2,
      "color": "#83b5a0",
      "accent": "#d4dac0",
      "material": "Studio ceramic",
      "form": "Low round",
      "rarity": "Study",
      "cost": 50,
      "desc": "Low round. Quiet vessel forms, incised lines, and a considered glaze.",
      "number": "009"
    },
    {
      "id": "kiln-indigo-slip",
      "name": "Indigo Slip",
      "family": "kiln",
      "index": 3,
      "color": "#314e85",
      "accent": "#b3c2c9",
      "material": "Studio ceramic",
      "form": "Tall bottle",
      "rarity": "Studio",
      "cost": 65,
      "desc": "Tall bottle. Quiet vessel forms, incised lines, and a considered glaze.",
      "number": "010"
    },
    {
      "id": "kiln-ash",
      "name": "Ash",
      "family": "kiln",
      "index": 4,
      "color": "#858c81",
      "accent": "#c9af7d",
      "material": "Studio ceramic",
      "form": "Ring glaze",
      "rarity": "Studio",
      "cost": 80,
      "desc": "Ring glaze. Quiet vessel forms, incised lines, and a considered glaze.",
      "number": "011"
    },
    {
      "id": "kiln-salt",
      "name": "Salt",
      "family": "kiln",
      "index": 5,
      "color": "#d4d2bd",
      "accent": "#8d9484",
      "material": "Studio ceramic",
      "form": "Wide basin",
      "rarity": "Studio",
      "cost": 100,
      "desc": "Wide basin. Quiet vessel forms, incised lines, and a considered glaze.",
      "number": "012"
    },
    {
      "id": "kiln-porcelain",
      "name": "Porcelain",
      "family": "kiln",
      "index": 6,
      "color": "#f7efd9",
      "accent": "#b5aaa1",
      "material": "Studio ceramic",
      "form": "Fluted vessel",
      "rarity": "Signature",
      "cost": 125,
      "desc": "Fluted vessel. Quiet vessel forms, incised lines, and a considered glaze.",
      "number": "013"
    },
    {
      "id": "kiln-kiln-moon",
      "name": "Kiln Moon",
      "family": "kiln",
      "index": 7,
      "color": "#737a95",
      "accent": "#c9aa72",
      "material": "Studio ceramic",
      "form": "Moon vessel",
      "rarity": "Signature",
      "cost": 150,
      "desc": "Moon vessel. Quiet vessel forms, incised lines, and a considered glaze.",
      "number": "014"
    },
    {
      "id": "block-apricot-stack",
      "name": "Apricot Stack",
      "family": "block",
      "index": 0,
      "color": "#f1a360",
      "accent": "#315c70",
      "material": "Painted assemblage",
      "form": "Stacked blocks",
      "rarity": "Study",
      "cost": 34,
      "desc": "Stacked blocks. A cat assembled from blocks, wedges, and playful proportions.",
      "number": "015"
    },
    {
      "id": "block-domino",
      "name": "Domino",
      "family": "block",
      "index": 1,
      "color": "#f1e9d2",
      "accent": "#232f4b",
      "material": "Painted assemblage",
      "form": "Twin columns",
      "rarity": "Study",
      "cost": 44,
      "desc": "Twin columns. A cat assembled from blocks, wedges, and playful proportions.",
      "number": "016"
    },
    {
      "id": "block-mint-beam",
      "name": "Mint Beam",
      "family": "block",
      "index": 2,
      "color": "#91c5a7",
      "accent": "#d45754",
      "material": "Painted assemblage",
      "form": "Long beam",
      "rarity": "Study",
      "cost": 54,
      "desc": "Long beam. A cat assembled from blocks, wedges, and playful proportions.",
      "number": "017"
    },
    {
      "id": "block-cobalt-step",
      "name": "Cobalt Step",
      "family": "block",
      "index": 3,
      "color": "#35649e",
      "accent": "#e2b44e",
      "material": "Painted assemblage",
      "form": "Stepped blocks",
      "rarity": "Studio",
      "cost": 69,
      "desc": "Stepped blocks. A cat assembled from blocks, wedges, and playful proportions.",
      "number": "018"
    },
    {
      "id": "block-peach-arch",
      "name": "Peach Arch",
      "family": "block",
      "index": 4,
      "color": "#e69c8c",
      "accent": "#455f81",
      "material": "Painted assemblage",
      "form": "Arch body",
      "rarity": "Studio",
      "cost": 84,
      "desc": "Arch body. A cat assembled from blocks, wedges, and playful proportions.",
      "number": "019"
    },
    {
      "id": "block-lemon-tube",
      "name": "Lemon Tube",
      "family": "block",
      "index": 5,
      "color": "#e6cb59",
      "accent": "#438b82",
      "material": "Painted assemblage",
      "form": "Tube stack",
      "rarity": "Studio",
      "cost": 104,
      "desc": "Tube stack. A cat assembled from blocks, wedges, and playful proportions.",
      "number": "020"
    },
    {
      "id": "block-night-columns",
      "name": "Night Columns",
      "family": "block",
      "index": 6,
      "color": "#42436a",
      "accent": "#de9b66",
      "material": "Painted assemblage",
      "form": "Unequal columns",
      "rarity": "Signature",
      "cost": 129,
      "desc": "Unequal columns. A cat assembled from blocks, wedges, and playful proportions.",
      "number": "021"
    },
    {
      "id": "block-signal-tower",
      "name": "Signal Tower",
      "family": "block",
      "index": 7,
      "color": "#d95849",
      "accent": "#6a91ae",
      "material": "Painted assemblage",
      "form": "Open tower",
      "rarity": "Signature",
      "cost": 154,
      "desc": "Open tower. A cat assembled from blocks, wedges, and playful proportions.",
      "number": "022"
    },
    {
      "id": "stone-pebble",
      "name": "Pebble",
      "family": "stone",
      "index": 0,
      "color": "#b7b8a0",
      "accent": "#766f54",
      "material": "Carved stone",
      "form": "Pebble body",
      "rarity": "Study",
      "cost": 38,
      "desc": "Pebble body. Weight, polished curves, and space carved into the body.",
      "number": "023"
    },
    {
      "id": "stone-basin",
      "name": "Basin",
      "family": "stone",
      "index": 1,
      "color": "#b7c7c6",
      "accent": "#2f6271",
      "material": "Carved stone",
      "form": "Basin hollow",
      "rarity": "Study",
      "cost": 48,
      "desc": "Basin hollow. Weight, polished curves, and space carved into the body.",
      "number": "024"
    },
    {
      "id": "stone-obsidian",
      "name": "Obsidian",
      "family": "stone",
      "index": 2,
      "color": "#373d46",
      "accent": "#bba26d",
      "material": "Carved stone",
      "form": "Dark ring",
      "rarity": "Study",
      "cost": 58,
      "desc": "Dark ring. Weight, polished curves, and space carved into the body.",
      "number": "025"
    },
    {
      "id": "stone-chalkstone",
      "name": "Chalkstone",
      "family": "stone",
      "index": 3,
      "color": "#dddaca",
      "accent": "#777d82",
      "material": "Carved stone",
      "form": "Broad aperture",
      "rarity": "Studio",
      "cost": 73,
      "desc": "Broad aperture. Weight, polished curves, and space carved into the body.",
      "number": "026"
    },
    {
      "id": "stone-pink-quartz",
      "name": "Pink Quartz",
      "family": "stone",
      "index": 4,
      "color": "#bf919a",
      "accent": "#78615f",
      "material": "Carved stone",
      "form": "Faceted pebble",
      "rarity": "Studio",
      "cost": 88,
      "desc": "Faceted pebble. Weight, polished curves, and space carved into the body.",
      "number": "027"
    },
    {
      "id": "stone-tide-ring",
      "name": "Tide Ring",
      "family": "stone",
      "index": 5,
      "color": "#5a8f9e",
      "accent": "#dfd2ac",
      "material": "Carved stone",
      "form": "Tide opening",
      "rarity": "Studio",
      "cost": 108,
      "desc": "Tide opening. Weight, polished curves, and space carved into the body.",
      "number": "028"
    },
    {
      "id": "stone-moss-void",
      "name": "Moss Void",
      "family": "stone",
      "index": 6,
      "color": "#78876a",
      "accent": "#b3c6a7",
      "material": "Carved stone",
      "form": "Tall void",
      "rarity": "Signature",
      "cost": 133,
      "desc": "Tall void. Weight, polished curves, and space carved into the body.",
      "number": "029"
    },
    {
      "id": "stone-basalt-loop",
      "name": "Basalt Loop",
      "family": "stone",
      "index": 7,
      "color": "#5e6462",
      "accent": "#d19d64",
      "material": "Carved stone",
      "form": "Looped body",
      "rarity": "Signature",
      "cost": 158,
      "desc": "Looped body. Weight, polished curves, and space carved into the body.",
      "number": "030"
    },
    {
      "id": "wire-copper-pod",
      "name": "Copper Pod",
      "family": "wire",
      "index": 0,
      "color": "#bd855c",
      "accent": "#a7c5a7",
      "material": "Metal lattice",
      "form": "Open pod",
      "rarity": "Study",
      "cost": 42,
      "desc": "Open pod. An open shell, with another little world inside.",
      "number": "031"
    },
    {
      "id": "wire-brass-nest",
      "name": "Brass Nest",
      "family": "wire",
      "index": 1,
      "color": "#d2bd77",
      "accent": "#717c59",
      "material": "Metal lattice",
      "form": "Nested ribs",
      "rarity": "Study",
      "cost": 52,
      "desc": "Nested ribs. An open shell, with another little world inside.",
      "number": "032"
    },
    {
      "id": "wire-silver-seed",
      "name": "Silver Seed",
      "family": "wire",
      "index": 2,
      "color": "#bdc5c6",
      "accent": "#e4bd73",
      "material": "Metal lattice",
      "form": "Inner seed",
      "rarity": "Study",
      "cost": 62,
      "desc": "Inner seed. An open shell, with another little world inside.",
      "number": "033"
    },
    {
      "id": "wire-verdigris-loop",
      "name": "Verdigris Loop",
      "family": "wire",
      "index": 3,
      "color": "#598f82",
      "accent": "#d3b577",
      "material": "Metal lattice",
      "form": "Looped shell",
      "rarity": "Studio",
      "cost": 77,
      "desc": "Looped shell. An open shell, with another little world inside.",
      "number": "034"
    },
    {
      "id": "wire-sun-basket",
      "name": "Sun Basket",
      "family": "wire",
      "index": 4,
      "color": "#d6ae54",
      "accent": "#759193",
      "material": "Metal lattice",
      "form": "Sun core",
      "rarity": "Studio",
      "cost": 92,
      "desc": "Sun core. An open shell, with another little world inside.",
      "number": "035"
    },
    {
      "id": "wire-branch",
      "name": "Branch",
      "family": "wire",
      "index": 5,
      "color": "#986e53",
      "accent": "#adcfaa",
      "material": "Metal lattice",
      "form": "Branching ribs",
      "rarity": "Studio",
      "cost": 112,
      "desc": "Branching ribs. An open shell, with another little world inside.",
      "number": "036"
    },
    {
      "id": "wire-dewdrop",
      "name": "Dewdrop",
      "family": "wire",
      "index": 6,
      "color": "#9cbac0",
      "accent": "#daba84",
      "material": "Metal lattice",
      "form": "Droplet cage",
      "rarity": "Signature",
      "cost": 137,
      "desc": "Droplet cage. An open shell, with another little world inside.",
      "number": "037"
    },
    {
      "id": "wire-night-mesh",
      "name": "Night Mesh",
      "family": "wire",
      "index": 7,
      "color": "#697483",
      "accent": "#b6aa82",
      "material": "Metal lattice",
      "form": "Open night",
      "rarity": "Signature",
      "cost": 162,
      "desc": "Open night. An open shell, with another little world inside.",
      "number": "038"
    },
    {
      "id": "balance-counterweight",
      "name": "Counterweight",
      "family": "balance",
      "index": 0,
      "color": "#dd855b",
      "accent": "#274d6f",
      "material": "Enamel and metal",
      "form": "Paw weight",
      "rarity": "Study",
      "cost": 46,
      "desc": "Paw weight. A raised paw and a gently suspended counterweight.",
      "number": "039"
    },
    {
      "id": "balance-petal-swing",
      "name": "Petal Swing",
      "family": "balance",
      "index": 1,
      "color": "#bb7992",
      "accent": "#ead294",
      "material": "Enamel and metal",
      "form": "Swinging petal",
      "rarity": "Study",
      "cost": 56,
      "desc": "Swinging petal. A raised paw and a gently suspended counterweight.",
      "number": "040"
    },
    {
      "id": "balance-crescent",
      "name": "Crescent",
      "family": "balance",
      "index": 2,
      "color": "#e5c874",
      "accent": "#3b6579",
      "material": "Enamel and metal",
      "form": "Crescent token",
      "rarity": "Study",
      "cost": 66,
      "desc": "Crescent token. A raised paw and a gently suspended counterweight.",
      "number": "041"
    },
    {
      "id": "balance-bell",
      "name": "Bell",
      "family": "balance",
      "index": 3,
      "color": "#a8b5a1",
      "accent": "#9d7752",
      "material": "Enamel and metal",
      "form": "Bell pendant",
      "rarity": "Studio",
      "cost": 81,
      "desc": "Bell pendant. A raised paw and a gently suspended counterweight.",
      "number": "042"
    },
    {
      "id": "balance-satellite",
      "name": "Satellite",
      "family": "balance",
      "index": 4,
      "color": "#6d93b3",
      "accent": "#c8875d",
      "material": "Enamel and metal",
      "form": "Orbiting disc",
      "rarity": "Studio",
      "cost": 96,
      "desc": "Orbiting disc. A raised paw and a gently suspended counterweight.",
      "number": "043"
    },
    {
      "id": "balance-twin-pendulum",
      "name": "Twin Pendulum",
      "family": "balance",
      "index": 5,
      "color": "#d79487",
      "accent": "#6c877a",
      "material": "Enamel and metal",
      "form": "Twin weights",
      "rarity": "Studio",
      "cost": 116,
      "desc": "Twin weights. A raised paw and a gently suspended counterweight.",
      "number": "044"
    },
    {
      "id": "balance-harbor-wind",
      "name": "Harbor Wind",
      "family": "balance",
      "index": 6,
      "color": "#66999b",
      "accent": "#bcb573",
      "material": "Enamel and metal",
      "form": "Wind leaf",
      "rarity": "Signature",
      "cost": 141,
      "desc": "Wind leaf. A raised paw and a gently suspended counterweight.",
      "number": "045"
    },
    {
      "id": "balance-equinox",
      "name": "Equinox",
      "family": "balance",
      "index": 7,
      "color": "#c3c17f",
      "accent": "#784d69",
      "material": "Enamel and metal",
      "form": "Two balanced discs",
      "rarity": "Signature",
      "cost": 166,
      "desc": "Two balanced discs. A raised paw and a gently suspended counterweight.",
      "number": "046"
    },
    {
      "id": "color-warm-window",
      "name": "Warm Window",
      "family": "color",
      "index": 0,
      "color": "#ce793c",
      "accent": "#436799",
      "material": "Layered pigments",
      "form": "Warm recess",
      "rarity": "Study",
      "cost": 50,
      "desc": "Warm recess. Nested color, depth, and the effect of one hue on another.",
      "number": "047"
    },
    {
      "id": "color-cold-window",
      "name": "Cold Window",
      "family": "color",
      "index": 1,
      "color": "#538b9d",
      "accent": "#d5bc6d",
      "material": "Layered pigments",
      "form": "Cool recess",
      "rarity": "Study",
      "cost": 60,
      "desc": "Cool recess. Nested color, depth, and the effect of one hue on another.",
      "number": "048"
    },
    {
      "id": "color-afterimage",
      "name": "Afterimage",
      "family": "color",
      "index": 2,
      "color": "#bc7285",
      "accent": "#83bc8a",
      "material": "Layered pigments",
      "form": "Paired panels",
      "rarity": "Study",
      "cost": 70,
      "desc": "Paired panels. Nested color, depth, and the effect of one hue on another.",
      "number": "049"
    },
    {
      "id": "color-citrus-frame",
      "name": "Citrus Frame",
      "family": "color",
      "index": 3,
      "color": "#d4c750",
      "accent": "#75678c",
      "material": "Layered pigments",
      "form": "Citrus square",
      "rarity": "Studio",
      "cost": 85,
      "desc": "Citrus square. Nested color, depth, and the effect of one hue on another.",
      "number": "050"
    },
    {
      "id": "color-dusk-portal",
      "name": "Dusk Portal",
      "family": "color",
      "index": 4,
      "color": "#777393",
      "accent": "#d6a16a",
      "material": "Layered pigments",
      "form": "Deep portal",
      "rarity": "Studio",
      "cost": 100,
      "desc": "Deep portal. Nested color, depth, and the effect of one hue on another.",
      "number": "051"
    },
    {
      "id": "color-heatwave",
      "name": "Heatwave",
      "family": "color",
      "index": 5,
      "color": "#d67454",
      "accent": "#629cbd",
      "material": "Layered pigments",
      "form": "Stacked rings",
      "rarity": "Studio",
      "cost": 120,
      "desc": "Stacked rings. Nested color, depth, and the effect of one hue on another.",
      "number": "052"
    },
    {
      "id": "color-blue-hour",
      "name": "Blue Hour",
      "family": "color",
      "index": 6,
      "color": "#536c9a",
      "accent": "#db9870",
      "material": "Layered pigments",
      "form": "Blue doorway",
      "rarity": "Signature",
      "cost": 145,
      "desc": "Blue doorway. Nested color, depth, and the effect of one hue on another.",
      "number": "053"
    },
    {
      "id": "color-double-dawn",
      "name": "Double Dawn",
      "family": "color",
      "index": 7,
      "color": "#d6ad62",
      "accent": "#688883",
      "material": "Layered pigments",
      "form": "Double window",
      "rarity": "Signature",
      "cost": 170,
      "desc": "Double window. Nested color, depth, and the effect of one hue on another.",
      "number": "054"
    },
    {
      "id": "master-eclipse",
      "name": "Eclipse",
      "family": "master",
      "index": 0,
      "color": "#565f65",
      "accent": "#d6bf80",
      "material": "Mixed sculpture",
      "form": "Stone ring and suspended pearl",
      "rarity": "Milestone",
      "cost": 0,
      "desc": "A practice milestone, made into a little object.",
      "requires": {
        "lifetimePoints": 100,
        "completedTasks": 5
      },
      "humanRequires": {
        "owned": 12,
        "rounds": 5
      },
      "number": "055"
    },
    {
      "id": "master-lantern",
      "name": "Lantern",
      "family": "master",
      "index": 1,
      "color": "#a67e52",
      "accent": "#f1c777",
      "material": "Mixed sculpture",
      "form": "Open ribbed shell and warm core",
      "rarity": "Milestone",
      "cost": 0,
      "desc": "A practice milestone, made into a little object.",
      "requires": {
        "lifetimePoints": 200,
        "completedTasks": 10
      },
      "humanRequires": {
        "owned": 16,
        "focusMinutes": 25
      },
      "number": "056"
    },
    {
      "id": "master-solstice",
      "name": "Solstice",
      "family": "master",
      "index": 2,
      "color": "#c6b58a",
      "accent": "#8b637b",
      "material": "Mixed sculpture",
      "form": "Unequal suspended discs",
      "rarity": "Milestone",
      "cost": 0,
      "desc": "A practice milestone, made into a little object.",
      "requires": {
        "lifetimePoints": 400,
        "completedTasks": 20
      },
      "humanRequires": {
        "owned": 24,
        "rounds": 20
      },
      "number": "057"
    },
    {
      "id": "master-tide-temple",
      "name": "Tide Temple",
      "family": "master",
      "index": 3,
      "color": "#9cb2b3",
      "accent": "#bf8267",
      "material": "Mixed sculpture",
      "form": "Split ceramic body and stepped plinth",
      "rarity": "Milestone",
      "cost": 0,
      "desc": "A practice milestone, made into a little object.",
      "requires": {
        "lifetimePoints": 600,
        "completedTasks": 30
      },
      "humanRequires": {
        "owned": 32,
        "focusMinutes": 75
      },
      "number": "058"
    },
    {
      "id": "master-orbit",
      "name": "Orbit",
      "family": "master",
      "index": 4,
      "color": "#697d9b",
      "accent": "#dcc078",
      "material": "Mixed sculpture",
      "form": "Nested loops and a floating token",
      "rarity": "Milestone",
      "cost": 0,
      "desc": "A practice milestone, made into a little object.",
      "requires": {
        "lifetimePoints": 800,
        "completedTasks": 40
      },
      "humanRequires": {
        "owned": 40,
        "best": 60
      },
      "number": "059"
    },
    {
      "id": "master-good-fortune",
      "name": "Good Fortune",
      "family": "master",
      "index": 5,
      "color": "#e2ca84",
      "accent": "#a16657",
      "material": "Mixed sculpture",
      "form": "Open form and balanced golden leaf",
      "rarity": "Milestone",
      "cost": 0,
      "desc": "A practice milestone, made into a little object.",
      "requires": {
        "lifetimePoints": 1080,
        "completedTasks": 54
      },
      "humanRequires": {
        "owned": 54
      },
      "number": "060"
    }
  ],
  "families": [
    {
      "id": "classic",
      "name": "The Originals",
      "principle": "The familiar beckoning cat, a little softer.",
      "material": "Glazed ceramic",
      "source": "https://www.mlit.go.jp/tagengo-db/common/001782356.pdf"
    },
    {
      "id": "kiln",
      "name": "Kiln Studies",
      "principle": "Quiet vessel forms, incised lines, and a considered glaze.",
      "material": "Studio ceramic",
      "source": "https://www.vam.ac.uk/articles/lucy-rie-british-studio-potter"
    },
    {
      "id": "block",
      "name": "Playforms",
      "principle": "A cat assembled from blocks, wedges, and playful proportions.",
      "material": "Painted assemblage",
      "source": "https://www.cooperhewitt.org/2016/11/08/living-with-memphis/"
    },
    {
      "id": "stone",
      "name": "Riverstone",
      "principle": "Weight, polished curves, and space carved into the body.",
      "material": "Carved stone",
      "source": "https://cranbrookartmuseum.org/artwork/barbara-hepworth-square-forms/"
    },
    {
      "id": "wire",
      "name": "Wire Garden",
      "principle": "An open shell, with another little world inside.",
      "material": "Metal lattice",
      "source": "https://ruthasawa.com/art/sculpture/"
    },
    {
      "id": "balance",
      "name": "In the Balance",
      "principle": "A raised paw and a gently suspended counterweight.",
      "material": "Enamel and metal",
      "source": "https://calder.org/works/standing-mobile/untitled-c-1932-2/"
    },
    {
      "id": "color",
      "name": "Color Studies",
      "principle": "Nested color, depth, and the effect of one hue on another.",
      "material": "Layered pigments",
      "source": "https://www.albersfoundation.org/alberses/teaching/interaction-of-color"
    },
    {
      "id": "master",
      "name": "Milestone Pieces",
      "principle": "A new construction, earned through a little practice.",
      "material": "Mixed sculpture",
      "source": null
    }
  ],
  "charms": [
    {
      "id": "focus-charm",
      "name": "Focus Charm",
      "cost": 10,
      "guidance": {
        "title": "One small, finishable thing",
        "purpose": "Turn the next task into a clear, bounded piece of work.",
        "steps": [
          "State the user outcome in one sentence.",
          "Choose the smallest useful result you can finish now.",
          "List the inputs and constraints before changing anything.",
          "Do that one thing, then verify its result against the outcome.",
          "Record what is finished and the next concrete step."
        ]
      }
    },
    {
      "id": "second-look",
      "name": "Second Look",
      "cost": 15,
      "guidance": {
        "title": "Give your work a second look",
        "purpose": "Inspect evidence, assumptions, and the most likely failure.",
        "steps": [
          "Write the claim you are about to make.",
          "Identify the evidence that would make that claim true.",
          "Check one normal case and one boundary or failure case.",
          "Separate observed results from inferences and unverified claims.",
          "Revise the result or name the remaining limitation clearly."
        ]
      }
    },
    {
      "id": "recovery-charm",
      "name": "Recovery Charm",
      "cost": 20,
      "guidance": {
        "title": "Begin again from what is known",
        "purpose": "Recover from a blocked or drifting task without losing useful work.",
        "steps": [
          "Save the current work and note the last known good state.",
          "Name the precise obstacle and what it prevents.",
          "Separate facts from guesses; inspect one useful piece of evidence.",
          "Choose a reversible next step that resolves the obstacle.",
          "Retry once, then report the concrete result and any remaining blocker."
        ]
      }
    }
  ]
}