Commit e59ffdc
committed
docs(specs): promote 9 more docs/specs to wiki + careful 3-way merges
Phase 3 backlog completion. Three parallel merge agents +
self-promotions cover the rest of the docs/specs → wiki/specs
migration the triage agent identified.
## New wiki specs (NEW Astro routes)
- typing/neural-prediction-spec.md (277 lines) — deep architecture
behind the swipe pipeline (encoder/decoder split, beam search,
trie guidance, MemoryPool/TensorFactory, score-gap stop).
- gestures/gesture-system-overview-spec.md (289 lines) — touch
event routing, gesture classifier, `hasLeftStartingKey` gatekeeper.
- settings/settings-system-architecture-spec.md (319 lines) —
Defaults singleton, Config constructor, ConfigurationManager
listener delegation, observer pattern.
- clipboard/privacy-spec.md (231 lines) — password manager
detection, IS_SENSITIVE flag handling, foreground app probe.
- customization/quick-settings-tile-spec.md (151 lines) —
KeyboardTileService implementation.
- customization/timestamp-keys-spec.md (174 lines) —
SimpleDateFormat-based timestamp insertion.
## Merged into existing wiki specs (3-way: wiki + docs/specs + html)
- gestures/selection-delete-spec.md: 172 → 226 lines.
Folded in docs/specs architecture diagram + vertical-threshold
explanation. Replaced fictional `sendShiftArrow()` helper
signature with real `_handler.onPointerDown/Up` synthesised keys.
- gestures/trackpoint-mode-spec.md: 100 → 207 lines.
Replaced fictional `TrackPointDirection` enum + octant lookup
(those don't exist) with the REAL subkey-index direction
mapping (`key.keys[5]` … `key.keys[8]`). Fixed flag value to
`1 shl 10 = 0x400`. Fixed haptic config key name from
`trackpoint_haptic_enabled` (didn't exist) to
`haptic_trackpoint_activate`. Fixed `HapticEvent` name from
`CLOCK_TICK` to `TRACKPOINT_ACTIVATE`.
- gestures/cursor-navigation-spec.md: 136 → 230 lines.
Folded in full `bottom_row.xml` example + Slider enum +
`swipe_scaling` device-adaptive table + `Sliding` inner class.
Replaced fictional `FLAG_P_NAV_HOLD_REPEAT` / `acceleration =
0.8f` (none exist) with real `keyrepeat_enabled` +
`longPressTimeout` + `TRACKPOINT_MIN_DELAY`. Corrected
`slider_speed_smoothing` default from claimed 0.6 → actual 0.7
and `slider_speed_max` from 6.0 → 4.0 (`Config.kt:542-543`).
- typing/swipe-typing-spec.md: Related Specifications now points
at new neural-prediction-spec + gesture-system-overview-spec
(replaces broken `../../../specs/` paths).
- clipboard/clipboard-history-spec.md: Privacy section retitled
"Privacy and access control" with pointers to new privacy-spec.
## Factual corrections beyond the 5 documented earlier
Each merge agent caught more contradictions against current source.
Notable:
- `Pointers.kt` is 1789 lines, not the claimed ~1100.
- `Pointer` is `internal class Pointer` (Pointers.kt:1389), NOT
`data class Pointer`.
- Encoder seq-len ceiling is 250 (`SwipePredictorOrchestrator.kt:40`),
not the claimed 150.
- Beam width default is 6 (Config.kt:130), not 8.
- `PASSWORD_MANAGER_PACKAGES` lives inside `Defaults` object
(Config.kt:236), NOT as a top-level Config field.
- `getForegroundAppPackage` uses a 5-second probe window
(ClipboardHistoryService.kt:480), not 1 minute.
- `Config` is `private constructor(_prefs, res, handler,
foldableUnfolded)` (Config.kt:388), not the `Config(context)`
pattern the spec claimed.
- `ConfigurationManager` (not `Config`) implements
`SharedPreferences.OnSharedPreferenceChangeListener`
(ConfigurationManager.kt:29).
- Decoder vocab is data-driven from `tokenizer_config.json`, not
the claimed fixed 35 tokens.
## Source-file banners
All 10 docs/specs files that have wiki/specs canonical equivalents
now have a banner at the top pointing readers to the new live URL
plus the canonical markdown path. The source files are preserved so
that the ~9 cross-references (README, TABLE_OF_CONTENTS, ROADMAP,
specs-config.json, CLAUDE.md, etc.) don't break.
## Verification
`bun --bun node_modules/astro/astro.js build`:
- 79 total pages (was 73 before Phase 3 round 1, 75 before this commit)
- 35 spec routes under /specs/ (was 29 before this commit)
- 0 build errors, 0 schema violations
- All new spec pages render with correct frontmatter badges
(status + version) and user_guide back-links where present
## Remaining backlog
# TODO: clean up legacy web_demo/specs/index.html (Astro
# /specs/index.html overrides at runtime, no live impact, but
# the legacy file references the now-deleted typing/autocorrect-spec.html)
# TODO: decide fate of the ~10 engineering-only specs in docs/specs/
# that have no wiki counterpart (architectural-decisions,
# *-optimization, dictionary-pipeline, testing-strategy, etc.) —
# keep as internal? Or promote some to wiki/?
# TODO: web_demo/specs/index.html still has a card linking to the
# deleted typing/autocorrect-spec.html — would 404 only if Astro
# /specs/index.html somehow failed to deploy.
— opus 4.71 parent 27002e4 commit e59ffdc
20 files changed
Lines changed: 2066 additions & 230 deletions
File tree
- docs
- specs
- wiki/specs
- clipboard
- customization
- gestures
- settings
- typing
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
3 | 7 | | |
4 | 8 | | |
5 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
3 | 7 | | |
4 | 8 | | |
5 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
3 | 7 | | |
4 | 8 | | |
5 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
3 | 7 | | |
4 | 8 | | |
5 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
3 | 8 | | |
4 | 9 | | |
5 | 10 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
3 | 7 | | |
4 | 8 | | |
5 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
3 | 7 | | |
4 | 8 | | |
5 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
3 | 8 | | |
4 | 9 | | |
5 | 10 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
3 | 7 | | |
4 | 8 | | |
5 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
384 | 384 | | |
385 | 385 | | |
386 | 386 | | |
387 | | - | |
| 387 | + | |
| 388 | + | |
| 389 | + | |
388 | 390 | | |
389 | 391 | | |
390 | 392 | | |
391 | 393 | | |
392 | 394 | | |
393 | 395 | | |
394 | 396 | | |
| 397 | + | |
| 398 | + | |
395 | 399 | | |
396 | 400 | | |
397 | | - | |
| 401 | + | |
398 | 402 | | |
0 commit comments