override spike-first(创始人 06-23 裁),全栈铺 Phaser tier2 引擎。recon→契约→6模块并行→集成 workflow 产出 ~60 文件,全 6c6g 静态校验过、红线零碰 Tier0/1 产线: - 契约(6):tier2-source-project.schema / tier2-verdict.schema(fork·round放开·三层校验+富游戏门)/ toolkit 签名 / 探针钩子 / boot-phaser-host.d.ts / mini-肥鹅 fixture 规格 - M1 Phaser scaffold+装载 host+引擎能力面(19;logic-smoke 13/13:五耦合点真接线+赢输双路径+latch不回弹) - M2 CDP 探针 Phaser 重写+business-sim driver+九门+富游戏三门(5;verdict 过 schema) - M3 Python 单写 ReAct agent loop+9 工具 toolkit+M3 Anthropic接法+四熔断(9;mini-desktop 真 2.0.2 venv 验:import/9工具/中间件注册 OK) - M4 datatable schema+金标+资产占位(4)/ M5 prompt+Phaser skill+rag(13)/ M6 成本 RecordingChatModel+trace adapter(3) - 集成:run_engine.py 入口 + 接线断点已修 + RUN-ON-MINI-DESKTOP.md 待 mini-desktop 真跑(esbuild build + CDP 九门 + M3 生成 = 本质即 0号 spike)。AgentScope 2.0.2 API 逐条对 /root/oss/agentscope 源码核验。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
214 lines
10 KiB
JSON
214 lines
10 KiB
JSON
{
|
||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||
"$id": "https://wanxiang.ai/tier2/fixtures/mini-fei-e/datatable.schema.json",
|
||
"title": "MiniFeiEDataTable",
|
||
"description": "mini-肥鹅(G2 靶子游戏)数据表 schema —— spike 第一段『便宜/中等模型自治能不能稳定填出富游戏数据表』的填值靶。【这份是什么】把 mini-肥鹅 三系统(资源/合成/订单)的可填数值表钉成机器可校验形状:items(12 物品)/ mergeChains(6 合成链)/ orders(5 订单)/ currencies(2 货币:coins 金币 + ingredients 食材库存)。platform 骨架(scaffold_init,A7)预建为留空模板(data/datatable.empty.json),LLM 自治循环往里填值;人工预建『金标』样例(data/datatable.gold.json)供 driver/门(D 三层校验 + A5 富游戏三门)做对照测试,不依赖 LLM。【与 A3 关系】本份是 fixture 内部的品类数据表 schema,不是 A3 源项目契约(那份认整个 Phaser 工程);这张表会作为 fileTree 里一个 role=config(平衡参数表)的工程内文件被 build 进 bundle。【三门判据来源】mergeChains 必须有向无环(dagAcyclic 门);order.requires 的物品必须落在 mergeChains 可产出集合里(requiresReachable 门);完单真调 addCoins、合成真调 consumeIngredient(F 门级真接线,本表不约束运行时调用、只约束数据自洽,真接线由探针在真玩时取证)。详见 tier2/contracts/mini-fei-e-fixture-spec.md。状态=建(待 0号 spike;directional v1,字段随 spike 实证收窄)。",
|
||
"type": "object",
|
||
"required": ["currencies", "items", "mergeChains", "orders", "winCondition", "loseCondition"],
|
||
"additionalProperties": false,
|
||
"properties": {
|
||
"schemaVersion": {
|
||
"description": "数据表版本(独立于 A3 源项目契约版本)。directional v1;spike 跑通后随实证收窄。",
|
||
"const": "mini-fei-e-1.0"
|
||
},
|
||
"_note": {
|
||
"description": "内联文档字段(可选;留空模板/金标里写人读说明,不参与运行)。沿用仓内 manifest.json note 字段惯例。",
|
||
"type": "string"
|
||
},
|
||
"_filledByLlm": {
|
||
"description": "可选标记位:LLM 自治填值后置 true(留空模板为 false/缺省)。供 build 前快检『模板是否还是空壳』。",
|
||
"type": "boolean"
|
||
},
|
||
"currencies": {
|
||
"description": "系统一·资源系统:两种货币的开局/配置。coins=金币(单值,完单产出、解锁消耗);ingredients=食材库存(per-itemId 计数,合成消耗/产出)。命令式 API(addCoins/spendCoins/consumeIngredient/addIngredient)由 platform 骨架实现,本表只配开局数值。",
|
||
"type": "object",
|
||
"required": ["coins", "ingredients"],
|
||
"additionalProperties": false,
|
||
"properties": {
|
||
"coins": {
|
||
"description": "金币货币配置。",
|
||
"type": "object",
|
||
"required": ["initial"],
|
||
"additionalProperties": false,
|
||
"properties": {
|
||
"id": {
|
||
"description": "货币 id(恒 'coins',订单 reward / 解锁 cost 都按它结算)。",
|
||
"const": "coins"
|
||
},
|
||
"initial": {
|
||
"description": "开局金币(fixture 钉死 20;赢线 = 攒到 100)。",
|
||
"type": "integer",
|
||
"minimum": 0
|
||
},
|
||
"label": {
|
||
"description": "显示名(表现层 UI 用,如 '金币')。",
|
||
"type": "string"
|
||
}
|
||
}
|
||
},
|
||
"ingredients": {
|
||
"description": "食材库存货币配置(per-itemId 计数表)。",
|
||
"type": "object",
|
||
"required": ["initial"],
|
||
"additionalProperties": false,
|
||
"properties": {
|
||
"id": {
|
||
"description": "货币 id(恒 'ingredients')。",
|
||
"const": "ingredients"
|
||
},
|
||
"initial": {
|
||
"description": "开局各食材库存量映射 { itemId: 数量 };key 必须 ∈ items[].id。可空对象(全 0 起手)。",
|
||
"type": "object",
|
||
"additionalProperties": {
|
||
"type": "integer",
|
||
"minimum": 0
|
||
}
|
||
},
|
||
"label": {
|
||
"description": "显示名(如 '食材')。",
|
||
"type": "string"
|
||
}
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"items": {
|
||
"description": "12 个物品(钉死 minItems/maxItems=12)。每个物品参与合成链(作为 from 被消耗或作为 to 被产出)、被订单 requires 引用、有图标资产引用(接 query_asset 占位池)。id 全表唯一。",
|
||
"type": "array",
|
||
"minItems": 12,
|
||
"maxItems": 12,
|
||
"items": {
|
||
"type": "object",
|
||
"required": ["id", "name", "tier"],
|
||
"additionalProperties": false,
|
||
"properties": {
|
||
"id": {
|
||
"description": "物品 id(全表唯一,小写短横线 slug,如 'wheat'、'dough'。mergeChains.from/to、orders.requires、ingredients.initial 都按它引用)。",
|
||
"type": "string",
|
||
"pattern": "^[a-z][a-z0-9-]*$",
|
||
"minLength": 1
|
||
},
|
||
"name": {
|
||
"description": "物品显示名(中文,表现层棋盘格/订单面板渲染用)。",
|
||
"type": "string",
|
||
"minLength": 1
|
||
},
|
||
"tier": {
|
||
"description": "合成层级(1=基础原料 / 2=半成品 / 3=成品)。供表现层分色与平衡校对;不参与门判定。",
|
||
"type": "integer",
|
||
"minimum": 1,
|
||
"maximum": 3
|
||
},
|
||
"assetId": {
|
||
"description": "图标资产 id(可选,接 query_asset 占位池 assets/placeholder-manifest.json 的 id;缺省走程序化回退方块)。",
|
||
"type": "string"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"mergeChains": {
|
||
"description": "系统二·合成系统:6 条合成链(钉死 minItems/maxItems=6,覆盖 12 物品)。点两个相同 from → 消耗(consumeIngredient)→ 产出上一级 to(addIngredient)。【门约束】① dagAcyclic:from→to 构成的有向图必须无环(judge 静态拓扑校验);② 覆盖:6 条链的 from/to 并集应覆盖全部 12 物品(spec 钉死『6 条覆盖 12 物品』)。from≠to。",
|
||
"type": "array",
|
||
"minItems": 6,
|
||
"maxItems": 6,
|
||
"items": {
|
||
"type": "object",
|
||
"required": ["from", "to", "cost"],
|
||
"additionalProperties": false,
|
||
"properties": {
|
||
"from": {
|
||
"description": "被合成的下级物品 id(消耗源;必须 ∈ items[].id)。点两个相同 from 触发本链。",
|
||
"type": "string",
|
||
"pattern": "^[a-z][a-z0-9-]*$",
|
||
"minLength": 1
|
||
},
|
||
"to": {
|
||
"description": "产出的上级物品 id(必须 ∈ items[].id,且 ≠ from;DAG 边 from→to)。",
|
||
"type": "string",
|
||
"pattern": "^[a-z][a-z0-9-]*$",
|
||
"minLength": 1
|
||
},
|
||
"cost": {
|
||
"description": "本次合成消耗的 from 数量(经营平衡参数;典型 2 = 两个相同合一个上级)。",
|
||
"type": "integer",
|
||
"minimum": 1
|
||
},
|
||
"unlockCoins": {
|
||
"description": "金币门控解锁阈值(可选;>0 表示该高阶合成链要攒够金币 spendCoins 才解锁,对应耦合点5『金币门控解锁』)。",
|
||
"type": "integer",
|
||
"minimum": 0
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"orders": {
|
||
"description": "系统三·订单系统:5 个订单模板(钉死 minItems/maxItems=5)。每单要一组物品(requires)给一笔金币(reward),耐心(patience)耗尽则流失。【门约束】requiresReachable:每个 order.requires 的 itemId 必须落在 mergeChains 可产出集合(to 并集 ∪ tier1 基础料)里 —— 证『订单要的东西合成系统造得出来』。完单 → consumeIngredient 扣物品 + addCoins 给金币(真接线由探针取证,非本表约束)。",
|
||
"type": "array",
|
||
"minItems": 5,
|
||
"maxItems": 5,
|
||
"items": {
|
||
"type": "object",
|
||
"required": ["id", "requires", "reward", "patience"],
|
||
"additionalProperties": false,
|
||
"properties": {
|
||
"id": {
|
||
"description": "订单 id(全表唯一,如 'order-1')。",
|
||
"type": "string",
|
||
"pattern": "^[a-z][a-z0-9-]*$",
|
||
"minLength": 1
|
||
},
|
||
"requires": {
|
||
"description": "完单需要的物品映射 { itemId: 数量 }(至少 1 项;key 必须 ∈ items[].id 且应可被合成系统产出 —— requiresReachable 门)。",
|
||
"type": "object",
|
||
"minProperties": 1,
|
||
"additionalProperties": {
|
||
"type": "integer",
|
||
"minimum": 1
|
||
}
|
||
},
|
||
"reward": {
|
||
"description": "完单产出金币(addCoins;经济门:正循环靠它把金币从 20 推到 100)。",
|
||
"type": "integer",
|
||
"minimum": 1
|
||
},
|
||
"patience": {
|
||
"description": "耐心(帧数或秒,平台骨架口径;耗尽则订单流失,计入连续流失计数 —— 输线 = 连续 3 流失)。",
|
||
"type": "integer",
|
||
"minimum": 1
|
||
},
|
||
"customerAssetId": {
|
||
"description": "顾客头像资产 id(可选,接占位池)。",
|
||
"type": "string"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"winCondition": {
|
||
"description": "赢条件(经济门盈利路判据):金币攒到 target(fixture 钉死 100)→ readState().phase 焊 'win' latch。",
|
||
"type": "object",
|
||
"required": ["coinsTarget"],
|
||
"additionalProperties": false,
|
||
"properties": {
|
||
"coinsTarget": {
|
||
"description": "赢线金币阈值(fixture=100)。",
|
||
"type": "integer",
|
||
"minimum": 1
|
||
}
|
||
}
|
||
},
|
||
"loseCondition": {
|
||
"description": "输条件(经济门破产路判据):连续 consecutiveOrderFails 个订单流失(fixture 钉死 3)→ phase 焊 'lose' latch。",
|
||
"type": "object",
|
||
"required": ["consecutiveOrderFails"],
|
||
"additionalProperties": false,
|
||
"properties": {
|
||
"consecutiveOrderFails": {
|
||
"description": "连续订单流失上限(fixture=3)。",
|
||
"type": "integer",
|
||
"minimum": 1
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|