diff --git a/.claude/skills/replay-gpx/SKILL.md b/.claude/skills/replay-gpx/SKILL.md
index 33e30ea13e..a4fe8b5026 100644
--- a/.claude/skills/replay-gpx/SKILL.md
+++ b/.claude/skills/replay-gpx/SKILL.md
@@ -32,8 +32,8 @@ Argent の MCP ツールには位置情報を注入するものが無いため
| `assets/gpx/SampleJY.gpx` | 山手線。実走行ログ |
| `assets/gpx/SampleTohokuShinkansen.gpx` | 東北新幹線 盛岡→仙台。最高 320km/h |
| `assets/gpx/KeioSpecialExpress.gpx` | 京王線 特急 新宿→京王八王子。種別グループから生成 |
-| `assets/gpx/KatamachiRapid.gpx` | 片町線 快速 京田辺→木津。駅間 2.3km・最高 95km/h |
-| `assets/gpx/SobuRapid.gpx` | 総武快速線 錦糸町→津田沼。最高 120km/h |
+| `assets/gpx/KatamachiRapid.gpx` | 片町線 快速 京田辺→木津。駅間 2.3km 前後の全駅停車 |
+| `assets/gpx/SobuRapid.gpx` | 総武快速線 錦糸町→津田沼。駅間 3.6〜7.6km の全駅停車 |
| `assets/gpx/FLinerSeibu.gpx` | Fライナー相当 元町・中華街→飯能。地下鉄の電波環境入り |
新しい経路は `npm run gpx:generate` で作る。詳細は `docs/location-simulation.md`。
@@ -52,7 +52,7 @@ npm run gpx:generate -- --line 1004 --from 100418 --to 100411 --max-speed 320 \
寄せる。詳細と数値の根拠は `docs/location-simulation.md`。
```bash
-npm run gpx:generate -- --line-group 152 --max-speed 80 \
+npm run gpx:generate -- --line-group 152 \
--signal-profile subway --subway-lines 99310,22003 \
--out assets/gpx/FLinerSeibu.gpx
```
@@ -62,11 +62,12 @@ npm run gpx:generate -- --line-group 152 --max-speed 80 \
列車種別の停車パターンをそのまま走らせたいときは `--line-group` を使う。通過駅は
`stopCondition` から自動判定されるので `--skip` を手で並べなくてよく、直通で複数
-路線にまたがる経路もそのまま扱える。`lineGroupId` は駅から辿る。
+路線にまたがる経路もそのまま扱える。`lineGroupId` は駅から辿る。区間の時間は
+StationAPI の到着時間推定 (`trainRoute` の `model: Estimated`) に合わせる。
```bash
npm run gpx:generate -- --list-train-types 2400101
-npm run gpx:generate -- --line-group 71 --max-speed 110 --out assets/gpx/KeioSpecialExpress.gpx
+npm run gpx:generate -- --line-group 71 --out assets/gpx/KeioSpecialExpress.gpx
```
### 2. アプリを対象の路線に入れる
diff --git a/android/app/build.gradle b/android/app/build.gradle
index e7834d1b48..c349207777 100644
--- a/android/app/build.gradle
+++ b/android/app/build.gradle
@@ -170,12 +170,12 @@ android {
dimension "environment"
applicationId "me.tinykitten.trainlcd.dev"
versionNameSuffix "-dev"
- versionCode 100000831
+ versionCode 100000833
versionName "10.17.0"
}
prod {
dimension "environment"
- versionCode 100000831
+ versionCode 100000833
versionName "10.17.0"
}
// ストア配信する dev (Canary) と applicationId を分けた、ローカル検証専用のフレーバー。
@@ -186,7 +186,7 @@ android {
dimension "environment"
applicationId "me.tinykitten.trainlcd.local"
versionNameSuffix "-local"
- versionCode 100000831
+ versionCode 100000833
versionName "10.17.0"
}
}
diff --git a/android/wearable/build.gradle.kts b/android/wearable/build.gradle.kts
index 95ccd4fa4b..03baf4fda2 100644
--- a/android/wearable/build.gradle.kts
+++ b/android/wearable/build.gradle.kts
@@ -85,12 +85,12 @@ android {
dimension = "environment"
applicationIdSuffix = ".dev"
versionNameSuffix = "-dev"
- versionCode = 100000832
+ versionCode = 100000834
versionName = "10.17.0"
}
create("prod") {
dimension = "environment"
- versionCode = 100000832
+ versionCode = 100000834
versionName = "10.17.0"
}
// :app の local フレーバーと対になるローカル検証専用フレーバー。Wear の Data Layer は
@@ -100,7 +100,7 @@ android {
dimension = "environment"
applicationIdSuffix = ".local"
versionNameSuffix = "-local"
- versionCode = 100000832
+ versionCode = 100000834
versionName = "10.17.0"
}
}
diff --git a/app.config.ts b/app.config.ts
index b017658d84..95bfa7e484 100644
--- a/app.config.ts
+++ b/app.config.ts
@@ -64,7 +64,7 @@ export default {
userInterfaceStyle: 'automatic',
// Expo SDK 57 の各モジュール(expo / expo-modules-core ほか)は podspec で iOS 16.4 以上を要求する
deploymentTarget: '16.4',
- buildNumber: '2945',
+ buildNumber: '2946',
scheme: IS_DEV ? 'CanaryTrainLCD' : 'ProdTrainLCD',
bundleIdentifier: IS_DEV
? 'me.tinykitten.trainlcd.dev'
@@ -78,7 +78,7 @@ export default {
? 'me.tinykitten.trainlcd.dev'
: 'me.tinykitten.trainlcd',
permissions: [],
- versionCode: 100000831,
+ versionCode: 100000833,
},
owner: 'trainlcd',
experiments: {
diff --git a/assets/gpx/FLinerSeibu.gpx b/assets/gpx/FLinerSeibu.gpx
index 2733841098..c677d00a68 100644
--- a/assets/gpx/FLinerSeibu.gpx
+++ b/assets/gpx/FLinerSeibu.gpx
@@ -4,385 +4,285 @@
48
-
+
429
-
+
589
-
+
333
-
+
325
-
+
528
-
+
611
-
+
286
-
+
546
-
+
490
-
+
542
-
+
389
-
+
375
-
+
262
-
+
466
-
+
294
-
+
443
-
+
510
-
+
360
-
+
369
-
+
487
-
-
-564
-
-
-
-521
-
-
-
-569
-
-
-
-582
-
-
-
-518
-
-
-
-342
-
-
-
-370
-
-
-
-509
-
-
-
-417
-
-
-
-513
-
-
-
-494
-
-
-
-557
-
-
-
-375
-
-
-
-467
-
-
-
-386
-
-
-
-32
-
-
-
-47
-
-
-
-30
-
-
-
-28
-
-
-
-51
-
-
-
-58
-
-
-
-27
-
-
-
-60
-
-
-
-33
-
-
-
-43
-
-
+
-37
+564
-
+
-42
+521
-
+
-51
+569
-
+
-32
+582
-
+
-50
+518
-
+
-53
+342
-
+
-47
+370
-
+
-26
+509
-
+
-41
+417
-
+
-55
+513
-
+
-27
+494
-
+
-34
+557
-
+
-31
+375
-
+
-35
+467
-
+
-58
+386
-
+
-48
+337
-
+
-43
+486
-
+
-39
+308
-
+
-47
+290
-38
+527
-51
+58
-45
+27
-42
+60
-35
+33
-60
+43
-45
+37
-38
+42
-37
+51
-41
+32
-38
+50
-55
+53
-52
+47
-48
+26
-51
+41
-37
+55
-30
+27
-50
+34
-50
+31
-46
+35
-28
+58
-51
+48
-39
+43
-42
+39
-48
+47
-53
+38
-32
+51
-40
+45
-28
+42
-38
+35
-58
+60
@@ -390,15 +290,15 @@
-32
+38
-38
+37
-53
+41
@@ -406,395 +306,267 @@
-46
+55
-
+
-405
+52
-
+
-598
+493
-
+
-473
+526
-
+
-456
+382
-
+
-489
+316
-
+
-318
+513
-
+
-534
+513
-
+
-402
+481
-
+
-384
+291
-
+
-298
+531
-
+
-333
+405
-
+
-463
+431
-
+
-327
+495
-
+
-486
+545
-
+
-260
+329
-
+
-425
+411
-
+
-267
+292
-
+
-513
+397
-
+
-534
+598
-
+
-355
+469
-
-
-616
-
-
-
-485
+
+
+335
-
-
-266
+
+
+399
-
-
-273
+
+
+543
-
-
-261
+
+
+397
-
-
-467
+
+
+471
-
-
-445
+
+
+405
-
-
-516
+
+
+598
-
-
-586
+
+
+473
-
-
-536
+
+
+456
-
-
-567
+
+
+489
-
-
-609
+
+
+318
-
-
-586
+
+
+534
-
-
-522
+
+
+402
-
-
-309
+
+
+384
-
-
-27
+
+
+298
-
-
-30
+
+
+333
-
-
-41
-
-
-
-47
-
-
-
-59
-
-
-
-41
-
-
-
-42
-
-
-
-46
-
-
-
-48
-
-
-
-44
-
-
-
-27
-
-
-
-53
-
-
-
-27
-
-
-
-40
-
-
-
-29
-
-
-
-35
-
-
-
-33
-
-
-
-45
-
-
-
-47
-
-
-
-49
-
-
-
-56
-
-
-
-34
-
-
-
-35
-
-
-
-46
-
-
-
-60
-
-
-
-31
-
-
-
-32
-
-
-
-41
-
-
-
-37
-
-
-
-51
-
-
-
-47
-
-
-
-45
-
-
-
-30
-
-
+
-45
+463
-
+
-50
+327
-
+
-32
+486
-
+
-30
+260
-33
+425
-38
+26
-28
+50
-59
+52
-47
+34
-37
+60
-44
+47
-36
+26
-53
+26
-31
+25
-36
+45
-39
+43
-35
+50
-45
+57
-41
+52
-60
+55
-34
+59
-47
+57
-37
+50
-41
+30
-42
+27
-48
+30
-34
+41
-31
+47
-56
+59
@@ -802,99 +574,99 @@
-35
+42
-53
+46
-38
+48
-18
+44
-11
+27
-14
+53
-9
+27
-20
+40
-15
+29
-11
+35
-17
+33
-18
+45
-13
+15
-10
+16
-17
+19
-14
+11
-18
+11
-14
+15
-18
+20
-12
+10
-13
+10
-17
+13
-11
+12
-19
+17
@@ -902,11 +674,11 @@
-17
+15
-16
+10
@@ -914,27 +686,27 @@
-8
+17
-13
+10
-20
+10
-10
+11
-14
+12
-18
+9
@@ -942,16794 +714,17238 @@
-19
+16
-18
+12
-17
+15
-17
+12
-9
+18
-13
+10
-14
+12
-15
+13
-14
+11
-11
+15
-9
+13
-13
+20
-18
+11
-18
+16
-
+
-18
+12
-
+
-20
+14
-
+
-20
+14
-
+
-18
+16
-
+
-15
+11
-
+
-17
+10
-
+
19
-
+
13
-
+
-18
+11
-
+
18
-
+
12
-
+
-20
+18
-
+
-14
+11
-
+
-13
+14
-
+
-19
+9
-
+
-11
+20
-
+
-18
+15
-
+
-18
+11
-
+
17
-
+
-17
+18
-
+
-14
+13
-
+
-19
+10
-
+
-10
+17
-
+
-8
+14
-
+
-10
+18
-
+
-13
+14
-
+
-16
+18
-
+
-10
+12
-
+
-9
+13
-
+
-19
+17
-
+
-10
+11
-
+
19
-
+
-17
+15
-
+
-11
+17
-
+
-11
+16
-
+
-19
+15
-
+
-19
+8
-
+
-14
+13
-
+
-12
+20
-
+
-12
+10
-
+
-19
+14
-
+
18
-
+
-11
+20
-
+
-20
+19
-
+
-14
+18
-
+
-10
+17
-
+
-18
+17
-
+
-13
+9
-
+
-9
+13
-
+
-11
+14
-
+
-13
+15
-
+
-9
+14
-
+
-14
+11
-
+
-17
+9
-
+
-12
+13
-
+
-12
+18
-
+
-17
+18
-
+
-19
+18
-
+
-8
+20
-
+
-10
+20
-
+
-16
+18
-
+
-17
+15
-
+
-15
+17
-
+
-17
+19
-
+
-9
+13
-
+
-11
+18
-
+
-20
+18
-
+
-20
+12
-
+
-10
+20
-
+
-12
+14
-
+
-10
+13
-
+
-11
+19
-
+
-12
+11
-
+
-16
+18
-
+
-12
+18
-
+
-13
+17
-
+
-18
+17
-
+
-9
+14
-
+
-13
+19
-
+
-17
+10
-
+
-16
+8
-
+
-16
+10
-
+
-9
+13
-
+
-9
+16
-
+
-13
+10
-
+
-14
+9
-
+
-11
+19
-
+
-16
+10
-
+
-20
+19
-
+
-9
+17
-
+
-14
+11
-
+
-17
+11
-
+
-17
+19
-
+
-13
+19
-
+
-10
+14
-
+
-14
+12
-
+
-15
+12
-
+
-15
+19
-
+
-16
+18
-
+
-14
+11
-
+
-18
+20
-
+
-13
+14
-
+
-11
+10
-
+
-10
+18
-
+
-20
+13
-
+
-19
+9
-
+
-15
+11
-
+
13
-
+
-15
+9
-
+
-16
+14
-
+
-10
+17
-
+
-16
+12
-
+
-13
+12
-
+
-9
+17
-
+
-18
+19
-
+
-19
+8
-
+
-19
+10
-
+
-15
+16
-
+
-12
+17
-
+
-13
+15
-
+
-10
+17
-
+
-14
+9
-
+
-18
+11
-
+
-18
+20
-
+
20
-
+
-20
+10
-
+
-13
+12
-
+
-15
+10
-
+
-16
+11
-
+
-16
+12
-
+
-19
+16
-
+
-20
+12
-
+
13
-
+
-9
+18
-
+
9
-
+
-15
+13
-
+
-16
+17
-
+
16
-
+
-9
+16
-
+
-13
+9
-
+
-11
+9
-
+
-19
+13
-
+
-17
+14
-
+
-16
+11
-
+
-19
+16
-
+
20
-
+
-16
+9
-
+
-18
+14
-
+
17
-
+
-16
+17
-
+
-16
+13
-
+
-15
+10
-
+
14
-
+
-12
+15
-
+
15
-
+
-10
+16
-
+
-12
+14
-
+
-9
+18
-
+
-17
+13
-
+
-18
+11
-
+
-17
+10
-
+
-19
+20
-
+
-20
+19
-
+
-20
+15
-
+
-11
+13
-
+
-16
+15
-
+
-17
+16
-
+
-12
+10
-
+
-18
+16
-
+
13
-
+
-14
+9
-
+
-17
+18
-
+