Commit graph

71 commits

Author SHA1 Message Date
Joshua Horton
a08390750f refactor(web): track traversal history on search node, not calculation object 2025-08-27 16:08:27 -05:00
Joshua Horton
129470c5ca docs(web): processSubsetEdge comment enhancements 2025-08-25 11:17:17 -05:00
Joshua Horton
c573f26e23 docs(web): clean up comments added during subset-batch PR work 2025-08-25 10:54:11 -05:00
Joshua Horton
0c3c58ae5d docs(web): adds PartialSearchEdge type doc comment 2025-08-25 10:48:04 -05:00
Joshua Horton
057b6cbc1b refactor(web): place all partial-edge properties under single object-based property 2025-08-25 08:48:48 -05:00
Joshua Horton
aa9df34623 feat(web): batch correction-search paths by related subsets
This change should dramatically cut down on the number of heavily-mismatched paths that the correction-search engine builds during operation.  Now, whenever input characters are being matched against a character from the lexicon, they're all replaced, **together**, with a single sentinel character instance that represents them all together - with their exact accumulated probability mass.

Doing so dramatically cuts down on the rate of memory use expansion during correction-search's operation... and likely cuts down on execution time on average, allowing for more potential corrections to be considered.
2025-08-22 18:23:13 -05:00
Joshua Horton
e20bd8ebd9 feat(web): adds transform subset-building methods to predictive-text worker
These methods place a set of input Transforms into multiple subsets with common properties.  They're designed for use in upcoming enhancements to the predictive-text worker's correction-search approach.
2025-08-22 15:38:55 -05:00
Joshua Horton
e17e014815 docs(web): improve documentation for SearchSpace and SearchNode 2025-08-19 10:49:15 -05:00
Marc Durdin
81c807c257 chore(common): Merge branch 'master' into maint/common/14453-move-ci-scripts 2025-08-19 10:46:11 +02:00
Joshua Horton
6d27c3468d Merge branch 'refactor/web/apply-suggestion-casing' into maint/web/convert-worker-thread-tests 2025-08-14 11:01:39 -05:00
Joshua Horton
51fc6f636f Merge branch 'fix/web/suggestion-typing' into refactor/web/apply-suggestion-casing 2025-08-14 11:00:11 -05:00
Joshua Horton
aa77e4ca0b fix(web): remove unneeded sort from unit test 2025-08-14 10:59:45 -05:00
Joshua Horton
981905717a change(web): add MAX_PROB constant for use in 'keep'-suggestion construction 2025-08-14 08:23:40 -05:00
Joshua Horton
ae469ed1b4
change(web): apply suggestion from code-review
Co-authored-by: Marc Durdin <marc@durdin.net>
2025-08-14 20:19:53 +07:00
Joshua Horton
c3124ec685 change(web): use contextTracker getter internally 2025-08-13 10:57:16 -05:00
Joshua Horton
ec888dd751 Merge branch 'refactor/web/apply-suggestion-casing' into maint/web/convert-worker-thread-tests 2025-08-13 10:52:57 -05:00
Joshua Horton
519e39e327 refactor(web): move applySuggestionCasing to standalone exportable method 2025-08-13 10:45:15 -05:00
Joshua Horton
e24deefdb8 fix(web): improve typing accuracy for suggestions & suggestion-generation
Also adds doc-comments to a couple of the related types
2025-08-13 10:27:13 -05:00
Joshua Horton
a01211efa4 change(web): improve exposure of once-private members 2025-08-13 08:49:41 -05:00
Joshua Horton
e9a1f6c349 maint(web): converts worker-thread tests to TS 2025-08-12 15:38:53 -05:00
Marc Durdin
942b06afdd
Merge pull request #14451 from keymanapp/maint/common/14447-node.inc.sh
maint(common): rename and move node-related script functions into node.inc.sh 🐸
2025-08-12 10:41:18 +07:00
Marc Durdin
a81138c62b
Merge pull request #14449 from keymanapp/maint/common/14065-consolidate-builder-scripts
maint(common): consolidate builder scripts 🐸
2025-08-12 10:41:09 +07:00
Marc Durdin
f95b26ac1f
Merge pull request #14446 from keymanapp/maint/common/14275-rename-and-cleanup-shellHelperFunctions.sh
maint(common): rename shellHelperFunctions.sh to utils.inc.sh 🐸
2025-08-12 10:40:59 +07:00
Joshua Horton
09611146dc fix(web): legacy model unit tests should use an actual legacy model 2025-08-05 10:27:48 -05:00
Marc Durdin
f3fb3ac87b maint(common): move build-utils-ci.inc.sh to ci/ci-publish.inc.sh
Removes a number of unused functions from the file, renames remaining
functions to match our builder script prefix patterns, removes unused
imports from various build scripts (e.g. Android).

Fixes: #14453
2025-08-05 12:54:56 +10:00
Marc Durdin
2726050601 maint(common): rename and move node-related script functions into node.inc.sh
Consolidates the node-related script functions into node.inc.sh, as part
of cleaning up the build scripts and making them easier to maintain into
the future.

Fixes: #14447
2025-08-02 13:34:29 +10:00
Marc Durdin
f394245636 maint(common): consolidate builder scripts
Clarifies the confusing builder.inc.sh / build-utils.sh distinction by
giving the scripts more appropriate names. Most build scripts should use
builder-full.inc.sh; some helper scripts can use builder-basic.inc.sh.
Documented in resources/build/README.md.

Renames:
* resources/build/builder.inc.sh to resources/build/builder-full.inc.sh
* resources/build/build-utils.sh to resources/build/builder-basic.inc.sh

Other changes:
* Moves Android-specific functions out of builder-basic.inc.sh and into
  android/build.sh.
* Renames functions in builder-basic.inc.sh

More functions may be moved from builder-basic.inc.sh into utils.inc.sh
or other scripts in the future.

Fixes: #14065
Build-bot: build all
Test-bot: skip
2025-08-02 08:11:24 +10:00
Marc Durdin
65158a0526 maint(common): rename shellHelperFunctions.sh to utils.inc.sh
Adds documentation for various functions, removes unused functions (a
couple of simple, very lightly used functions were unDRYed; these could
go back the other way across all shell scripts if necessary). TODO items
noted for follow-up refactoring.

Fixes: #14275
Relates-to: #14269
Build-bot: build all
Test-bot: skip
2025-08-02 06:58:40 +10:00
Joshua Horton
155c1a2b12 maint: update mocha
Some of the npm audit warnings left after #13897 require an updated `mocha` version to remedy.  As we only really use `mocha` to do unit-testing, it should be safe to update if all of our existing tests pass with the new version.

Test-bot: skip
2025-05-13 14:02:02 +07:00
Joshua Horton
a783fbc902 maint(web): also fixes worker-thread inspectable browser test call 2025-05-13 12:44:26 +07:00
Joshua Horton
1438704ee0
Merge pull request #13819 from keymanapp/maint/web/use-builder_is_ci_build
chore(web): replace --ci flag with builder_is_ci_build
2025-05-06 08:16:37 +07:00
Joshua Horton
e382bf45ce
Merge pull request #13785 from keymanapp/change/web/drop-usvstring-alias
change(web): replace USVString with string in predictive-text engine
2025-05-06 08:16:28 +07:00
Joshua Horton
cb5e3035a7 chore(web): replace --ci flag with builder_is_ci_build
Fixes: #12640
2025-05-02 09:39:39 +07:00
Joshua Horton
e601d59b59 change(web): replace USVString with string in predictive-text engine
Fixes: #12046

It was only ever an alias (for `string`!) for its intended use, with actual `USVString` typing being unavailable in the browser.
2025-04-29 10:47:20 +07:00
Joshua Horton
dc450cde9e chore(web): finalize removal of side-effect KMWString implementation 2025-04-22 11:40:57 +07:00
Joshua Horton
f8ea902fd9 refactor(web): refactor _kmwCharAt 2025-04-22 11:40:57 +07:00
Joshua Horton
70c1920854 refactor(web): refactor _kmwSlice, _kmwSubstr, _kmwSubstring 2025-04-22 11:40:57 +07:00
Joshua Horton
418f3d6aec chore(web): update all Web engine uses of kmwLength, kmwCodePointToCodeUnit, kmwCodeUnitToCodePoint 2025-04-22 10:17:07 +07:00
Joshua Horton
b2598e76ba chore(web): fix coverage-reporting artifact
Fixes: #13195
2025-02-12 15:56:54 +07:00
Joshua Horton
0e7b47e075
Merge pull request #12927 from keymanapp/fix/web/context-match-applied-suggestions
fix(web): correctly track context transitions caused by applying suggestions 🖲️
2025-02-03 15:11:01 +07:00
Joshua Horton
3c7ae5d7f6
Merge pull request #12925 from keymanapp/fix/web/context-match-path-ordering
fix(web): correct edit-path ordering at source 🖲️
2025-02-03 15:10:50 +07:00
Joshua Horton
316395a180
Merge pull request #12911 from keymanapp/change/web/context-tracker-backspaces-and-alignment
change(web): add context tracker bksp handling, alignment-offset calculations 🖲️
2025-02-03 15:10:36 +07:00
Joshua Horton
e97cd3094f fix(web): disabled correction state should prevent predictive corrections
Fixes: #12214
2025-01-29 10:12:53 +07:00
Joshua Horton
ce705500d7 chore(web): better cloning of cloned object's values 2025-01-22 08:27:20 +07:00
Joshua Horton
44cb4044df fix(web): clone token replacement arrays properly 2025-01-21 09:06:27 +07:00
Joshua Horton
5a0e6a3b01 change(web): minor tweak in constructor for clarity 2025-01-21 09:04:52 +07:00
Joshua Horton
5633b9ca36 fix(web): track shifts in context across applied suggestions 2025-01-17 10:40:56 +07:00
Joshua Horton
9b48385095 fix(web): correct edit-path ordering at source 2025-01-17 10:26:01 +07:00
Joshua Horton
817adffc70 fix(web): prevent array aliasing during context-token cloning 2025-01-17 10:15:18 +07:00
Joshua Horton
d798083c76 feat(web): track token shift counts during context tracking 2025-01-16 10:58:32 +07:00