fix: pass validation reason into STEP-051 style builder
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
This commit is contained in:
@@ -56,3 +56,12 @@ TIME/NORMAL validation 入口现可选择 production-like source(UI 状态标
|
||||
旧 `UNIFORM EAST`、`UNIFORM NORTH`、`VORTEX` 与 TIME 控件仍保留。Host 仅触发低频 style/resource 命令;没有新增 JNI command、Android Timer、Timeline、Window 或 MIX state。状态栏在 production 模式显示 `PRODUCTION · TL ...`,日志仍由 Core 输出 `PRODUCTION_FEED_LOAD`、`SNAPSHOT_SUBMIT` 和 Timeline 事件。
|
||||
|
||||
本次没有修改 C++ Core、Timeline、Runtime Field Window、Renderer、Adapter contract、MIX observability 或 Rotation/Viewport。Android Gradle/APK/ADB/实机验证仍由用户执行;状态继续为 `IMPLEMENTED / WAITING_ANDROID_VALIDATION`。
|
||||
|
||||
## Android Validation Host Kotlin 编译修复
|
||||
|
||||
- 错误:`ParticleCoreLayerValidationActivity.kt:418` 的 `Unresolved reference 'reason'`。
|
||||
- 根因:`loadValidationStyle()` 调用 `validationStyle()` 时未透传已有的 `reason` 参数。
|
||||
- 修复:将调用改为 `validationStyle(active, enabled, reason)`,并将函数签名增加 `reason: String`。
|
||||
- `PRODUCTION FEED → field-00.json` 与 `INVALID PROD → field-invalid.json` 的判断逻辑保持不变。
|
||||
- 未修改 Core、Timeline、Runtime、Renderer 或 production metadata contract;Android build 尚待用户手工复验。
|
||||
- STEP-051 状态仍为:`IMPLEMENTED / WAITING_ANDROID_VALIDATION`。
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
# STEP-051 Android Validation Host Kotlin 编译修复 — Codex 完成报告
|
||||
|
||||
## 基线
|
||||
|
||||
- Starting HEAD:`c94c9c5bd4cce0322c9e7beb95e67385ae085720`
|
||||
- branch:`particle/main`
|
||||
- 任务范围:仅修复 `reason` 参数透传。
|
||||
|
||||
## 修复
|
||||
|
||||
在 `ParticleCoreLayerValidationActivity.kt` 中:
|
||||
|
||||
- `loadValidationStyle()` 调用改为 `validationStyle(active, enabled, reason)`。
|
||||
- `validationStyle()` 签名增加 `reason: String`。
|
||||
- 保留 `INVALID_PRODUCTION_METADATA` 判断:正常入口使用 `field-00.json`,`INVALID PROD` 使用 `field-invalid.json`。
|
||||
- 未新增全局 reason、状态变量、Timer 或第二套 production state。
|
||||
|
||||
未修改 Core Adapter、Descriptor、Snapshot、Snapshot Submit Bridge、Timeline、Runtime Field Window、RasterParticleLayer、Renderer、JNI、Network 或 Provider Framework。
|
||||
|
||||
## 检查与边界
|
||||
|
||||
- 所有 `validationStyle(` 调用点:已检查,唯一调用点传入三个参数。
|
||||
- `PRODUCTION FEED` / `INVALID PROD` 菜单:仍存在。
|
||||
- `git diff --check`:PASS。
|
||||
- Android Gradle/APK/ADB/App:未执行。
|
||||
- Jest:未执行、未修改。
|
||||
- Rotation/Viewport:未修改。
|
||||
- 无关 untracked 文件:未修改、未 stage、未提交。
|
||||
|
||||
## Git
|
||||
|
||||
- commit hash:待提交后回填。
|
||||
- commit message:`fix: pass validation reason into STEP-051 style builder`
|
||||
- push result:待执行。
|
||||
- remote branch:`origin/particle/main`
|
||||
- Final HEAD:待 push 后回填。
|
||||
|
||||
当前 STEP-051 状态保持:`IMPLEMENTED / WAITING_ANDROID_VALIDATION`。用户后续手工执行 Android OpenGL Debug build,首要门槛为 `BUILD SUCCESSFUL`。
|
||||
@@ -228,7 +228,7 @@ class ParticleCoreLayerValidationActivity : AppCompatActivity() {
|
||||
styleReady = false
|
||||
styleLoadEpoch += 1
|
||||
Log.i(TAG, "ParticleGPU: event=STYLE_LOAD epoch=$styleLoadEpoch reason=$reason")
|
||||
maplibreMap.setStyle(Style.Builder().fromJson(validationStyle(active, enabled))) {
|
||||
maplibreMap.setStyle(Style.Builder().fromJson(validationStyle(active, enabled, reason))) {
|
||||
styleReady = true
|
||||
if (timeWindowMode) timelineState = "READY"
|
||||
status.text = statusText()
|
||||
@@ -396,7 +396,7 @@ class ParticleCoreLayerValidationActivity : AppCompatActivity() {
|
||||
return "$mask · $runtime · $fields$playback · MIX ${(timeMix * 100).toInt()}% · $particleCount · W ${"%.1f".format(lineWidth)} L ${"%.3f".format(particleLength)} O ${(particleOpacity * 100).toInt()} T ${(trailOpacity * 100).toInt()} F ${(trailFade * 100).toInt()} C ${if (speedColorEnabled) "ON" else "OFF"}"
|
||||
}
|
||||
|
||||
private fun validationStyle(active: Boolean, enabled: Boolean): String {
|
||||
private fun validationStyle(active: Boolean, enabled: Boolean, reason: String): String {
|
||||
val fixtureId = fixtureId()
|
||||
val nextFixtureId = if (timeWindowMode) {
|
||||
if (fixtureMode == FIXTURE_UNIFORM_NORTH) "vortex" else "uniform-north"
|
||||
|
||||
Reference in New Issue
Block a user