130 lines
7.3 KiB
Markdown
130 lines
7.3 KiB
Markdown
# Current App Status
|
||
|
||
Updated: 2026-07-11 — current-build live-smoke checkpoint for the
|
||
English-default renderer, local artifact removal, shared-clock timing evidence,
|
||
and visually reviewed OCR corpus corrections.
|
||
|
||
Historical live evidence remains documented in
|
||
[NATIVE_SCANNER_LIVE_ACCEPTANCE_2026-07-10.md](NATIVE_SCANNER_LIVE_ACCEPTANCE_2026-07-10.md).
|
||
The current checkpoint and its explicit remaining release gates are documented
|
||
in
|
||
[LOCALIZATION_LOCAL_DELETION_TIMING_CHECKPOINT_2026-07-11.md](LOCALIZATION_LOCAL_DELETION_TIMING_CHECKPOINT_2026-07-11.md).
|
||
The fresh current-build smoke is documented in
|
||
[NATIVE_SCANNER_LIVE_SMOKE_2026-07-11.md](NATIVE_SCANNER_LIVE_SMOKE_2026-07-11.md).
|
||
|
||
## What It Can Do
|
||
|
||
- Read-only Artifact scanning remains scoped to the accepted English 16:9
|
||
Genshin Artifact inventory with a visible detail card. The scanner guards the
|
||
target process/window, foreground state, stop controls, and input safety.
|
||
- The native path captures card crops while bounded OCR/parse/evaluation workers
|
||
stream ordered safe results into the session rail. Review, roll efficiency,
|
||
crop evidence, parser confidence, and local promotion/review actions remain
|
||
separate concepts.
|
||
- Artifacts can be browsed, filtered, sorted, and inspected with local crop,
|
||
parser, IK, review, and value evidence. Explicit 1–4★ native results remain
|
||
excluded/manual-review entries; they do not become a salvage or Quick Select
|
||
workflow.
|
||
- The Builds surface reads only the newest complete native run and shows at
|
||
most three read-only, source-bound evidence suggestions. It is not an
|
||
optimizer, DPS score, ownership inference, or game-action surface.
|
||
- The application UI now defaults to English. German is selectable in Settings
|
||
and persists locally. The preference updates the renderer/document language
|
||
only; it does not change the English-Genshin Smart Capture contract.
|
||
- Artifact detail now has a confirmed local-delete action for a wrong scan,
|
||
screenshot, or Store row. Native deletion appends a tombstone, keeps raw
|
||
`scan-results.json` evidence intact, deletes only a PNG proven to be within
|
||
the selected run directory, and can remove only an explicitly chosen exact
|
||
linked Store record. It never focuses Genshin, invokes the input helper, or
|
||
performs an in-game action.
|
||
- Native runs now write `run-timing.json` using
|
||
`native-scanner-run-timing-v1`. It records first-observed request, scanner,
|
||
capture, processing, durable-result, and reconciliation milestones so the
|
||
end-to-end duration is measured from one shared clock.
|
||
- The former 136-item full-inventory Review set has been visually audited for
|
||
the current corpus work: 128 are explicit 1–4★ entries, six have the same
|
||
exact duplicated-decimal OCR defect, one requires slot-safe name resolution,
|
||
and one incomplete crop intentionally remains `Review`.
|
||
- The review-corpus exporter now exposes only safe capture/run references and
|
||
prioritizes candidates with a retrievable local crop. The confirmation
|
||
preparer refuses OCR-only records, so a parser guess cannot become ground
|
||
truth without retained visual evidence.
|
||
|
||
## Verified Evidence
|
||
|
||
The historical scanner acceptance is still useful regression evidence, but it
|
||
does not certify the current change set by itself:
|
||
|
||
- Historical dev runs completed 5/20/50/100 with zero Review, errors, and Store
|
||
writes; the historical packaged paths include bounded 5/8/20 and the 2,211
|
||
full-owned-inventory soak.
|
||
- The saved 50-artifact evidence set still validates at `50/50`, with zero
|
||
replay issues, zero Review, zero unknown, and no projection failures.
|
||
- The current checkpoint has focused coverage for locale persistence/catalog
|
||
parity, artifact Store removal, native-result tombstones/crop containment,
|
||
shared-clock timing validation, and the new confirmed OCR corpus cases.
|
||
- The final current-build offline gate passed: `npm run acceptance:offline`
|
||
completed TypeScript, 72 test files / 444 tests, OCR evaluation, saved-run
|
||
validation, package verification (27/27), both dependency audits, and the
|
||
diff check.
|
||
- The built-renderer Builds/UI acceptance passed with stable semantic hooks:
|
||
fresh English, German selection, restored English, Builds context/focus,
|
||
reduced motion, overflow, and native plus Store local-delete confirmation
|
||
probes. This is deliberately not described as an elevated packaged-executable
|
||
run.
|
||
- The elevated development current-build smoke `20260711-154827` passed with
|
||
50/50 target/capture/click/queue/parse/load reconciliation, 0 Review,
|
||
0 processing errors, 0 Store writes, `persist=false`, and a complete
|
||
`native-scanner-run-timing-v1` record. Request-to-reconciliation was
|
||
`28,022 ms` (`~1.78 Artifacts/s`); that is a functional/safety result, not a
|
||
3/s performance claim.
|
||
- The follow-on review-evidence workflow passed focused exporter/preparer
|
||
checks plus `npm run lint`, `npm test` (72 files / 446 tests), and
|
||
`npm run build`. A read-only export of the current local queue found 177
|
||
records and three retrievable crops; all three are already-confirmed
|
||
`native-review-approved` cases, so no new label was promoted.
|
||
|
||
## What Still Needs Testing
|
||
|
||
- If making a current package-runtime claim, separately launch the elevated
|
||
packaged executable and verify UAC, preload bridge, helper, and renderer
|
||
behavior. The passing built-renderer acceptance does not prove that boundary.
|
||
- Repeat the passing native and Store local-delete confirmation probes during an
|
||
elevated packaged-executable acceptance if a package-runtime release claim is
|
||
needed.
|
||
Unit coverage already protects the authoritative tombstone, active-run,
|
||
containment, and exact-Store boundaries.
|
||
- Do not claim German Genshin OCR/capture support: only the application UI is
|
||
localized. Non-16:9 layouts, other Genshin UI languages, and other inventory
|
||
categories remain outside accepted scanner scope.
|
||
|
||
## Known Limitations
|
||
|
||
- OCR can still fail on a new game layout or unreadable crop. The app must route
|
||
uncertainty to `Review`; it must not relax matching thresholds or invent a
|
||
canonical name from ambiguous text.
|
||
- The current parser fixes only the observed exact duplicate decimal punctuation
|
||
and uses slot-based artifact-name resolution only when independent
|
||
high-confidence slot evidence gives one valid match. The incomplete audited
|
||
crop stays `Review` by design.
|
||
- Build-Fit remains evidence ranking, not character/build optimization. Team,
|
||
weapon, rotation, character ownership, and unsourced aggregate values are not
|
||
inferred from Artifacts.
|
||
- The current live 50-artifact smoke measured `28,022 ms` request-to-result
|
||
reconciliation (`~1.78 Artifacts/s`). The functional gate passed, but the
|
||
separate 3/s performance target remains unproven.
|
||
|
||
## Next Priorities
|
||
|
||
1. Keep the passing built-renderer acceptance distinct from the optional
|
||
elevated packaged-executable runtime/UAC check.
|
||
2. The generated workspace outputs were cleaned and the coherent checkpoint
|
||
was committed and pushed as `8b9f948` on 2026-07-11. The active admin
|
||
runtime's locked log was intentionally left untouched.
|
||
3. Re-export future Review cases and only label candidates marked with
|
||
retrievable visual evidence. No currently retrievable local candidate needs
|
||
a new corpus label.
|
||
4. Continue the next quality phase with fail-closed parser behavior,
|
||
profile-source refreshes, and packaged UI regression coverage. Do not
|
||
broaden game-category scope or add in-game mutation.
|