fix: 修复历史卦象列表无法显示及六爻解卦提示词逻辑错误

后端 Pydantic schema 添加 Hant 繁体字段支持(guaNameHant,
targetGuaNameHant, spiritNameHant, relationNameHant),解决
DerivedDivinationData extra=forbid 拒绝 AI 输出的繁体字段导致
agent_output 解析失败、历史记录为空的问题。

六爻解卦提示词修复:增加静卦五行生克链分析、假破假空降权、
六冲中性判断、用神核对防捏造、空亡数据对照等硬约束。

前端 Dart model 同步添加 Hant 字段(反向兼容,缺省为空字符串)。

其他:硬币翻转动画修复、弹窗单按钮居中、起卦按钮布局调整、
繁体 l10n 清理、pre-commit 排除集成测试。
This commit is contained in:
qzl
2026-04-14 12:37:19 +08:00
parent 97976b20bf
commit 55bac03eb0
14 changed files with 126 additions and 313 deletions
@@ -599,15 +599,18 @@ class _YaoPickerCard extends StatelessWidget {
],
),
const SizedBox(height: AppSpacing.lg),
FilledButton(
onPressed: canShake ? onStartShake : null,
style: FilledButton.styleFrom(
backgroundColor: isSpinning
? colors.surfaceContainerHighest
: colors.primary,
fixedSize: const Size(120, 40),
Align(
alignment: Alignment.center,
child: FilledButton(
onPressed: canShake ? onStartShake : null,
style: FilledButton.styleFrom(
backgroundColor: isSpinning
? colors.surfaceContainerHighest
: colors.primary,
minimumSize: const Size(120, 40),
),
child: Text(buttonText),
),
child: Text(buttonText),
),
],
),
@@ -704,19 +704,21 @@ class _FlippingCoinState extends State<_FlippingCoin>
animation: _animation,
builder: (context, child) {
final angle = _animation.value * pi;
return Transform(
alignment: Alignment.center,
transform: Matrix4.identity()
..setEntry(3, 2, 0.001)
..rotateY(angle),
child: ClipOval(
child: Image.asset(
_showHua
? 'assets/images/qigua/hua.jpg'
: 'assets/images/qigua/zi.jpg',
return ClipOval(
child: Transform(
alignment: Alignment.center,
transform: Matrix4.identity()
..setEntry(3, 2, 0.001)
..rotateY(angle),
child: SizedBox(
width: 80,
height: 80,
fit: BoxFit.cover,
child: Image.asset(
_showHua
? 'assets/images/qigua/hua.jpg'
: 'assets/images/qigua/zi.jpg',
fit: BoxFit.cover,
),
),
),
);