You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 1099711
Browse filesBrowse the repository at this point in the historyBrowse files
The owner decided to deploy publicly only once the end-to-end flow works: a
user uploads a recording and sees which moves caused their failures. Hosting
then has to be chosen once, with the real needs of video upload (object
storage, background processing, upload limits, retention and privacy) known.
- V5 Milestone 4 is now Public Deployment, after the video upload and failure
report. The later V5 milestones move up by one (5-8). It asks for a private
rehearsal once the upload work begins.
- V4 Milestone 8 (boss expansion) becomes Milestone 7.
- v4.0.0 is the proven pipeline, the castle Genichiro catalog confirmed by
the owner, and product integration.
- The attempts.user_id NOT NULL migration moves to V4 Milestone 6.
- CLAUDE.md keeps its section numbers; section 33 now describes the V5
deployment. README, ROADMAP (both languages) and the Genichiro plan agree.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: CLAUDE.md
+24-16Lines changed: 24 additions & 16 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -139,7 +139,7 @@ V4 Milestone 1 is done, and Milestone 2 has proven the runtime bridge for castle
139
139
140
140
V3 is released. Sections 7–17 remain the reference for how the current product is built; their product rules (lightweight attempt recording, honest analytics, per-user isolation, one language per page) still apply.
141
141
142
-
Public deployment is V4 Milestone 7.
142
+
Public deployment is part of V5: it waits until a user can upload a recording and see which moves caused their failures (section 33).
143
143
144
144
V4 covers vanilla Sekiro only. All Resurrection mod work is deferred until after `v4.0.0` (section 35).
145
145
@@ -1105,6 +1105,7 @@ Only after the research schema stabilizes:
1105
1105
- improve phase mappings
1106
1106
- sync verified semantic content
1107
1107
- preserve attempt foreign-key integrity
1108
+
- make `attempts.user_id` NOT NULL through a migration. V3 left it nullable so attempts recorded before accounts existed could stay ownerless until claimed with `python -m scripts.claim_attempts <username>`. The migration should fail loudly if any ownerless attempts remain.
1108
1109
- consider adding ruleset support
1109
1110
- consider adding engine-action mappings
1110
1111
@@ -1123,19 +1124,20 @@ Let the actual research data determine the relational model.
1123
1124
1124
1125
---
1125
1126
1126
-
# 33. V4 Milestone 7 — Public Deployment
1127
+
# 33. Public Deployment (V5)
1127
1128
1128
-
Public deployment is intentionally deferred until V4.
1129
+
Public deployment moved from V4 to V5 (owner decision, 2026-10-12). The public product starts with the end-to-end flow: a user uploads a recording and sees their failures and the moves that caused them. It comes right after the video upload and failure report (section 38).
1129
1130
1130
1131
Before deployment ensure:
1131
1132
1133
+
- the upload → failure report flow works and has passed reliability validation
1132
1134
- authentication works reliably
1133
-
- user isolation is tested
1135
+
- user isolation is tested, uploaded recordings included
1134
1136
- bilingual UI works
1135
1137
- database migrations are reproducible
1136
1138
- verified content is distinguishable from uncertain content
1137
-
- at least one ground-truth vertical slice is integrated
1138
-
-`attempts.user_id` is made NOT NULL through a migration. V3 left it nullable so attempts recorded before accounts existed could stay ownerless until claimed with `python -m scripts.claim_attempts <username>`. The migration should fail loudly if any ownerless attempts remain.
1139
+
1140
+
Rehearse with a private deployment once the upload work begins. A small invite-only deployment is fine if outside feedback is needed sooner.
1139
1141
1140
1142
Production concerns may include:
1141
1143
@@ -1148,14 +1150,18 @@ Production concerns may include:
1148
1150
- deployment workflow
1149
1151
- logging
1150
1152
- recovery
1153
+
- object storage for uploaded recordings
1154
+
- background processing for video analysis, and its cost
1155
+
- upload size limits
1156
+
- retention and privacy rules for users' recordings
1151
1157
1152
1158
Choose infrastructure based on actual hosting requirements.
castle Genichiro move catalog confirmed by the project owner
1218
1224
+
1219
-
stable public deployment
1225
+
verified production integration
1220
1226
```
1221
1227
1228
+
Public deployment is not part of `v4.0.0`; it comes in V5 (section 33).
1229
+
1222
1230
Then expand boss coverage through:
1223
1231
1224
1232
```text
@@ -1271,10 +1279,11 @@ Use:
1271
1279
→ look back → identify the move → merge one failure → failure report)
1272
1280
2. Reliability validation on independent recordings
1273
1281
3. Video upload and failure report (failure counts per move)
1274
-
4. Whole-fight move detection (short clips first, then temporal segmentation)
1275
-
5. Player-response detection
1276
-
6. True per-move analytics
1277
-
7. Recommendations
1282
+
4. Public deployment (section 33)
1283
+
5. Whole-fight move detection (short clips first, then temporal segmentation)
1284
+
6. Player-response detection
1285
+
7. True per-move analytics
1286
+
8. Recommendations
1278
1287
```
1279
1288
1280
1289
At first the system proposes move candidates and a person confirms them. Recordings made with the dev-menu overlay are labelled reference data; mask the overlay when training or evaluating.
@@ -1616,11 +1625,10 @@ V3 is released. V4 order:
1616
1625
Then, to complete `v4.0.0`:
1617
1626
1618
1627
```text
1619
-
6. Product integration (V4 Milestone 6)
1620
-
7. Public deployment (V4 Milestone 7)
1628
+
5. Product integration (V4 Milestone 6)
1621
1629
```
1622
1630
1623
-
Boss expansion (V4 Milestone 8) follows in v4.1.x. Resurrection is deferred until after `v4.0.0` (section 35).
1631
+
Boss expansion (V4 Milestone 7) follows in v4.1.x. Public deployment comes in V5, after the upload → failure report flow works (section 33). Resurrection is deferred until after `v4.0.0` (section 35).
1624
1632
1625
1633
Keep the released V3 product working: fix product bugs on `dev` as they appear, and do not change the production schema for ground-truth research until V4 Milestone 6.
Copy file name to clipboardExpand all lines: README.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -181,7 +181,7 @@ V2 runs locally with Docker Compose.
181
181
182
182
#### Deferred or Skipped
183
183
184
-
***Public deployment** was deferred: without accounts, a public instance would let anyone record attempts. V3 adds accounts, and public hosting is now planned for V4, once boss content is backed by verified game data.
184
+
***Public deployment** was deferred: without accounts, a public instance would let anyone record attempts. V3 adds accounts. Public hosting is now planned for V5, once a player can upload a recording and see which moves caused their failures.
185
185
***Boss search and filtering** was skipped, because 8 bosses fit comfortably on one page.
186
186
187
187
---
@@ -211,13 +211,13 @@ The full plan is in [ROADMAP.md](ROADMAP.md). In short:
211
211
V1 What killed me? → manual attempt analytics
212
212
V2 Where am I improving or struggling? → structured relational analytics
213
213
V3 Can different players use it? → multi-user product foundation
214
-
V4 What moves actually exist? → combat ground truth + public deployment
215
-
V5 What happened in the fight? → gameplay video analysis
214
+
V4 What moves actually exist? → combat ground truth
215
+
V5 What happened in the fight? → gameplay video analysis + public deployment
216
216
V6 Can this work across games? → multi-game platform
217
217
```
218
218
219
-
***V4** builds verified boss data from the game itself, through runtime instrumentation and targeted reverse engineering, starting with Genichiro. The app is then deployed publicly.
220
-
***V5** analyzes uploaded gameplay to detect boss moves and player responses. Knowing how often each move actually occurred makes true per-move success rates and practice recommendations possible.
219
+
***V4** builds verified boss data from the game itself, through runtime instrumentation and targeted reverse engineering, starting with Genichiro.
220
+
***V5** analyzes uploaded gameplay, starting with the failures in a recording and the moves that caused them; the app is deployed publicly once that works. It then detects every boss move and the player's responses. Knowing how often each move actually occurred makes true per-move success rates and practice recommendations possible.
221
221
***V6** extends the platform beyond Sekiro, starting with Black Myth: Wukong.
222
222
223
223
The long-term goal is to turn gameplay footage into trustworthy, explainable boss-practice analytics with as little manual input as possible.
Copy file name to clipboardExpand all lines: ROADMAP.md
+46-40Lines changed: 46 additions & 40 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -739,6 +739,7 @@ Once the ground-truth schema is stable enough:
739
739
- expose provenance where useful
740
740
- optionally expose verification status internally
741
741
- preserve existing attempt references safely
742
+
- make `attempts.user_id` NOT NULL through a migration, after confirming no ownerless pre-account attempts remain
742
743
743
744
Only now should production schema changes for engine-action mappings be considered.
744
745
@@ -755,37 +756,7 @@ Do not introduce them until actual research demonstrates the required cardinalit
755
756
756
757
---
757
758
758
-
# V4 Milestone 7 — Public Deployment
759
-
760
-
Public deployment moves here from V3.
761
-
762
-
Deployment should happen only after:
763
-
764
-
- authentication is stable
765
-
- personal data isolation is tested
766
-
- bilingual UI works
767
-
- the application clearly distinguishes verified vs. uncertain combat content
768
-
- at least one complete ground-truth vertical slice is integrated
769
-
- database migration strategy is stable
770
-
-`attempts.user_id` is made NOT NULL, after confirming no ownerless pre-account attempts remain
771
-
772
-
Production concerns include:
773
-
774
-
- HTTPS
775
-
- production PostgreSQL
776
-
- environment secrets
777
-
- database backups
778
-
- migration execution
779
-
- secure cookies
780
-
- deployment from `main`
781
-
- recovery procedures
782
-
- observability appropriate to the actual hosting environment
783
-
784
-
Do not introduce infrastructure that is not required by the selected deployment platform.
785
-
786
-
---
787
-
788
-
# V4 Milestone 8 — Expand Boss-by-Boss
759
+
# V4 Milestone 7 — Expand Boss-by-Boss
789
760
790
761
Starts after `v4.0.0` (see the release strategy below).
791
762
@@ -862,13 +833,13 @@ v4.0.0
862
833
=
863
834
ground-truth pipeline proven
864
835
+
865
-
Genichiro complete vertical slice
836
+
castle Genichiro move catalog confirmed by the project owner
866
837
+
867
838
production integration
868
-
+
869
-
public deployment
870
839
```
871
840
841
+
Public deployment is not part of V4. It waits for the V5 end-to-end flow, where a user uploads a recording and sees which moves caused their failures (V5 Milestone 4).
842
+
872
843
Then expand verified coverage incrementally:
873
844
874
845
```text
@@ -978,7 +949,42 @@ PostgreSQL should store metadata and references.
978
949
979
950
---
980
951
981
-
## V5 Milestone 4 — Automatic Move Detection
952
+
## V5 Milestone 4 — Public Deployment
953
+
954
+
Public deployment moves here from V4. The public product starts with the end-to-end flow: a user uploads a recording and sees their failures and the moves that caused them.
955
+
956
+
Deploy only after:
957
+
958
+
- the upload → failure report flow works and has passed reliability validation (Milestones 1–3)
959
+
- authentication is stable
960
+
- personal data isolation is tested, uploaded recordings included
961
+
- bilingual UI works
962
+
- the application clearly distinguishes verified vs. uncertain combat content
963
+
- database migration strategy is stable
964
+
965
+
Rehearse first: once Milestone 3 work begins, deploy privately so hosting problems surface early. A small invite-only deployment is fine if outside feedback is needed sooner.
966
+
967
+
Production concerns include:
968
+
969
+
- HTTPS
970
+
- production PostgreSQL
971
+
- environment secrets
972
+
- database backups
973
+
- migration execution
974
+
- secure cookies
975
+
- deployment from `main`
976
+
- recovery procedures
977
+
- observability appropriate to the actual hosting environment
978
+
- object storage for uploaded recordings
979
+
- background processing for video analysis, and its cost
980
+
- upload size limits
981
+
- retention and privacy rules for users' recordings
982
+
983
+
Choose hosting from these actual requirements. Do not introduce infrastructure that is not required by the selected deployment platform.
984
+
985
+
---
986
+
987
+
## V5 Milestone 5 — Automatic Move Detection
982
988
983
989
Detect every boss move in a fight, not only the ones before a failure. Move occurrences are the denominator that true per-move rates need.
984
990
@@ -1001,7 +1007,7 @@ Expand coverage from what the system could not attribute in users' recordings: a
1001
1007
1002
1008
---
1003
1009
1004
-
## V5 Milestone 5 — Player Response Detection
1010
+
## V5 Milestone 6 — Player Response Detection
1005
1011
1006
1012
Detect or infer responses such as:
1007
1013
@@ -1018,7 +1024,7 @@ Only calculate metrics supported by observed events.
1018
1024
1019
1025
---
1020
1026
1021
-
## V5 Milestone 6 — True Per-Move Analytics
1027
+
## V5 Milestone 7 — True Per-Move Analytics
1022
1028
1023
1029
Once move occurrences and outcomes are observable:
1024
1030
@@ -1036,7 +1042,7 @@ This is fundamentally different from V1–V3 failure-count analytics.
1036
1042
1037
1043
---
1038
1044
1039
-
## V5 Milestone 7 — Practice Recommendations
1045
+
## V5 Milestone 8 — Practice Recommendations
1040
1046
1041
1047
Practice recommendations move here from the old V3 roadmap.
1042
1048
@@ -1126,11 +1132,11 @@ Can different players reliably use it?
0 commit comments