Commit Graph
10 Commits
Author SHA1 Message Date
Kris AndersonandBret Mogilefsky 5db2c1a2d4 docs(highway_3d): cross-link to repo-root real-time scoring docs
The 3D highway is one of the renderers consuming the note-state
provider contract. Point AI maintainers landing in this CLAUDE.md
at the repo-root docs that cover the contract itself, so they can
ground a request like "make the sustain glow brighter" in the full
data flow rather than just the rendering code.

Signed-off-by: Kris Anderson <topkoa@gmail.com>
(cherry picked from commit 1f4c6a02bf218332c5a1981f01f40e2206cb5ff1)
2026-06-17 23:41:43 -07:00
Kris AndersonandBret Mogilefsky 1246c290f1 docs: add real-time scoring + hit-feedback pipeline docs
Three new docs in docs/ that consolidate the path from audio detection
through to the highway, plus small cross-links in CLAUDE.md for
discoverability.

- realtime-scoring-pipeline.md: end-to-end trace with diagrams and a
  concrete chord-strum example walked through every layer (engine,
  IPC, note_detect, highway core, renderer).
- note-state-provider.md: full reference for setNoteStateProvider /
  bundle.getNoteState (slopsmith#254). Return values, alpha ownership,
  the time_string_fret keying convention, 'hit' vs 'active' sustain
  semantics, common pitfalls.
- visualization-feedback-guide.md: practical walkthrough for a plugin
  author adding hit feedback to a custom viz. Minimal 2D Canvas example
  plus a troubleshooting decision tree.

The note-state provider contract was previously documented in three
places with different angles and assumed cross-reading. These docs
consolidate it into one coherent narrative + focused API reference +
how-to. The pipeline doc also documents the engine-verifier path
(audio:setChart / audio:getNoteVerdicts) which was previously only
described in NoteVerifier source comments.

Companion PR against byrongamatos/slopsmith-desktop covers the
engine-side internals.

Signed-off-by: Kris Anderson <topkoa@gmail.com>
(cherry picked from commit c8ec371813bf36c686f1884f3b2340f4a94f11a8)
2026-06-17 23:41:43 -07:00
byrongamatosandClaude Opus 4.8 cad78857fb Remove the v3 Support Us! donate button (no funding surface)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-17 11:52:44 +02:00
byrongamatosandClaude Opus 4.8 edf8f46866 Repoint dead slopsmith URLs -> got-feedback
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-17 11:02:04 +02:00
byrongamatosandClaude Opus 4.8 97a1e5fbf5 Fix two regressions in the terminology purge
- diagnostics_redact: keep '.psarc' in the song-filename scrub regex.
  The purge swapped it for '.archive' (not a real extension), which
  would leak real .psarc filenames still on users' disks into
  diagnostic bundles. This is a redaction allow-list, not brand text.
- sloppak: the legacy lyrics-source alias was a no-op
  ({"notechart": "notechart"}), so old manifests with
  lyrics_source=="sng" fell back to "xml" instead of migrating.
  Map {"sng": "notechart"} so the rename stays back-compatible.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-16 21:19:16 +02:00
Sin c1870a0597 Improve wording in terminology cleanup
Replace the placeholder noun left by the previous pass with context-fit
phrasing (arrangement XML, chart, custom songs, etc.).
2026-06-16 19:43:45 +01:00
Sin 4148b0e72e Purge external-format terminology from code, tests and docs
Reword comments/docstrings/strings and rename identifiers that referenced
the external game and its file formats:

- format-id "psarc" -> "archive"; local vars psarc_path -> song_path,
  psarc_base -> tone_base
- lyrics provenance value "sng" -> "notechart" (legacy "sng" still accepted)
- highway_3d fret-ghost scope value "rocksmith" -> "chords" (invalid/legacy
  values fall back to the default, preserving behaviour)
- neutralise references in prose, test names/data, .gitattributes and docs

No functional change beyond the renamed identifiers; all Python compiles.
2026-06-16 19:36:53 +01:00
Sin bc0e83c345 Make the library loader sloppak/loose-only
Remove the vestigial encrypted-archive ingestion path that the loader can
no longer service:

- scanner no longer lists .psarc files; library is sloppaks + loose folders
- upload endpoint accepts .sloppak only (drop .psarc + magic-byte branch)
- delete endpoint handles sloppak/loose only
- drop the psarc_platform (pc/mac) setting, its validation and tests
- default CONFIG_DIR no longer references an external game data folder
- drop the now-unused pycryptodome dependency (no module imports it)
- correct stale comments that described scanning as archive decryption

Updates test_settings_api / test_settings_export to match (scan fixtures
now build .sloppak stubs).
2026-06-16 19:09:53 +01:00
Sin fca0137989 Remove unused binary test fixture; correct stale scan comments
Drop an orphaned 4 MB binary fixture that no test references, and fix
two docstrings that inaccurately described the scanner as performing
archive decryption. The loader is sloppak/loose-folder only and does
not decode proprietary archives (see lib/scan_worker.py).
2026-06-16 18:49:40 +01:00
byrongamatos 6c110398b4 Clean release snapshot 2026-06-16 18:47:13 +02:00