games-development-ai/game-cloud/scripts/p3bB_scaffold_gen9307.sql
zizi 238ec2dbe8 test(aigc-3b-B): 视觉终局达成——真游戏真玩入 feed(亲眼验);一句话现生成腿缺口=tap类driver:none→L1
3b-B 重跑视觉终局(mini-desktop·证据 wg1/gen-worker/evidence-3bB-final/):

 视觉终局达成(亲眼复核截图):feed 里一款真渲+真玩有进展的井字棋(gameId=9306/versionId=93112)——
  空盘「轮到X」→ 落子填盘 X·O → 「X 胜!」+ 重新开始(latch 终态);feed 真玩门 10/11 过
  (no_demo_fallback/engine_rendered/lively_interactive 全 true,唯一 false=play_start 遥测非阻断)。
  经真 HMAC 回调写链落库(验签通过 engineBundleLen=210891→建版本→组包 checksum 自洽→翻 feed)。

走兜底路(诚实标注):主路一句话现生成两次均失败,故取已验证过九门样板 tictactoe(便宜模型 flash 真生成、
  verdict A-I 全 pass)的 engineBundle 经派发面真回调路落 feed,DB bundle 与样板 sha256 字节级一致。
  仍是便宜模型真生成的过门游戏,只是非本次现生成。

★ 主路两次 fresh 失败真因(非模型壁垒,铁证):design agent 在 dispatch 面 run_studio(play_spec={}) 下
  均给 driver:{type:none}→harness 盲打打不中目标→moves/score 恒 0→H_progress 挂+latch 不触发,repairs=5
  耗尽。游戏本体全对(gen9306/9307 verdict 8/9 门过,targetX/Y/radius·board·moves 导出正确,G_input/
  I_control/F_wiring 均过)。样板过门靠 lane brief 手供 play_spec.driver=tap-targets。
  → 蒸馏入 cheap-model §7:DESIGN_SYSTEM 须对离散点击类强制产 tap-targets driver(纯 L1 生成域,
  moat『一句话现生成』腿的真·临门一脚)。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-15 00:48:50 +00:00

71 lines
5.4 KiB
SQL
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- ============================================================================
-- P3·W-G1 派发面终局 e2e·gameId=9307 主路尝试#2井字棋·已验证过九门题型tap-targets driver
-- 缘由:主路#1(gen9306 whack-style)栽于 driver-coveragedesign agent 给 driver:none、未导出 targets 数组→
-- harness 盲打打不中随机目标→score 恒 0、latch 不触发8/9 门过仅 H 挂,非模型壁垒)。
-- #2 换【已实证过九门】的井字棋题型brief 显式要求导出 targets[{x,y,idx,occupied}] 数组 + 携 tap-targets
-- play_specdesign agent 据此产适配性 driverharness 读格位自动点空格真玩 → moves↑ + 终局 latch。
-- IDgameId=9307 / 占位 versionId=93070 / pkgId=93070 / feedRankId=93070 / trace_id='wg1-3bB-gen9307-001'
-- 用法docker exec -i game-staging-mysql mysql --default-character-set=utf8mb4 -uroot -p"$MYSQL_ROOT_PASSWORD" < 本文件
-- ============================================================================
USE `ruoyi-vue-pro`;
SET NAMES utf8mb4;
START TRANSACTION;
DELETE FROM game_aigc_task WHERE trace_id = 'wg1-3bB-gen9307-001';
DELETE FROM game_feed_rank WHERE game_id = 9307;
DELETE FROM game_runtime_package WHERE game_id = 9307;
DELETE FROM game_version WHERE game_id = 9307;
DELETE FROM game_project WHERE id = 9307;
INSERT INTO game_project
(id, creator_user_id, title, summary, cover_url, tags, template_id, age_rating,
status, current_version_id, launch_zone_id, featured, play_count, like_count,
creator, create_time, updater, update_time, deleted, tenant_id)
VALUES
(9307, 1, '井字棋(generic 真生成·回调入feed)', 'P3 W-G1 派发面视觉终局#2井字棋经 worker 真生成 GameHostFactory 过九门(tap-targets 适配真玩),回调携 engineBundle 入 feed 真玩',
'data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==',
'P3,3b-B,dispatch,generic,real-gen,tic-tac-toe', 'generic', 'all',
4, 93070, NULL, b'0', 0, 0,
'0', NOW(), '0', NOW(), b'0', 0);
INSERT INTO game_version
(id, game_id, version_no, gen_task_id, package_url, bundle_size, checksum,
status, creator, create_time, updater, update_time, deleted, tenant_id)
VALUES
(93070, 9307, 1, NULL, '', 0, '', 3, '0', NOW(), '0', NOW(), b'0', 0);
INSERT INTO game_runtime_package
(id, game_id, version_id, template_id, package_url, entry, runtime_version, preload_policy,
bundle_size, checksum, sandbox_attr, allow_origins, status,
creator, create_time, updater, update_time, deleted, tenant_id, package_json)
VALUES
(93070, 9307, 93070, 'generic', '', 'index.html', '1.0.0', 'eager',
0, '', 'allow-scripts', '', 1, '0', NOW(), '0', NOW(), b'0', 0, NULL);
INSERT INTO game_feed_rank
(id, game_id, version_id, zone_id, quality_score, boost, sort_score, pinned, status,
creator, create_time, updater, update_time, deleted, tenant_id)
VALUES
(93070, 9307, 93070, 0, 0.0000, 0.0000, 0.0000, 0, 1, '0', NOW(), '0', NOW(), b'0', 0);
INSERT INTO game_aigc_task
(creator_user_id, game_id, version_id, template_id, prompt, prompt_hash,
status, progress, quality_score, failure_reason, result_package_url, retry_of, trace_id,
creator, create_time, updater, update_time, finish_time, deleted, tenant_id)
VALUES
(1, 9307, NULL, 'generic',
'做经典井字棋(三连棋)。竖屏逻辑视口390×844,深色背景铺满。居中3×3棋盘:左上约(30,255)边长约330,每格约110×110,亮色线条画网格;三列中心x≈85/195/305,三行中心y≈310/420/530。玩家执X:点【空】格落X(亮色居中);随后AI执O,用受控random在剩余空格选一格落O(简单AI即可);点已占格忽略。胜负:任一行/列/对角线三格同色=该方胜;九格满且无三连=平局。顶部单行文本HUD:对局中显示轮到谁("X走"/"O走"),终局显示结果("X胜"/"O胜"/"平局")。【终态契约】分胜负或平局即进终态:把_forensicsView().state().phase置\'gameover\'并【驻留】,绝不自动重开/不下一帧复位回playing(宿主每500ms轮询phase);gameover下点棋盘一律忽略不重置。【务必导出可测状态】_forensicsView().state()返回纯只读实时真值,除phase外额外导出:result(null|\'X\'|\'O\'|\'draw\'),moves(整数,已落子数,开局0每落子+1),board(长9数组,行优先,元素null|\'X\'|\'O\'),targets(长9数组,元素{x,y,idx,occupied}:x/y为该格中心逻辑像素坐标、idx0..8、occupied是否已落子布尔)。harness依targets自动点空格真玩、依moves/phase验进展与终局。反馈:每次落子触发getEngine().particles.spawnEmitter粒子+getEngine().audio.synth.synthSfx音效;分胜负时额外明显反馈。网格线/X/O/文字均亮色实心,X与O视觉区分清晰。',
'0000000000000000000000000000000000000000000000000000000000009307',
0, 0, NULL, '', '', NULL, 'wg1-3bB-gen9307-001',
'0', NOW(), '0', NOW(), NULL, b'0', 0);
COMMIT;
SELECT 'project' k, id, status, current_version_id FROM game_project WHERE id=9307
UNION ALL SELECT 'version', id, status, game_id FROM game_version WHERE id=93070
UNION ALL SELECT 'runtime_pkg', id, status, version_id FROM game_runtime_package WHERE id=93070
UNION ALL SELECT 'feed_rank', id, status, version_id FROM game_feed_rank WHERE id=93070;
SELECT 'aigc_task' k, id, status, game_id, template_id, LEFT(prompt,24) prompt24, trace_id
FROM game_aigc_task WHERE trace_id='wg1-3bB-gen9307-001';