Commit graph

20 commits

Author SHA1 Message Date
Kurt Partridge
b094372bd6 Remove MainLogBuffer#setSuggest()
multi-project commit with Ia98b1406fc2ee11a96893c77ea58d800fece7624

Change-Id: I8bc3d07b83dbe7d8fc56a618de07dade7f510b13
2013-03-01 13:32:11 -08:00
Kurt Partridge
5ee261a990 [TestPrep17] Allow fake dictionary for testing
Currently ResearchLog requires a full dictionary to perform privacy-related checks.
This makes testing difficult.  This change allows a fake dictionary to be used instead.

Change-Id: Ifca5bd8647475a6b84e4324117e0faa0a35479ee
2013-02-26 19:22:55 -08:00
Kurt Partridge
ab0bda1499 [TestPrep5] Parameterize MainLogBuffer
Change-Id: I6d84f490922cd1f40e44ca4f95c9d950fba38290
2013-02-20 19:37:12 -08:00
Kurt Partridge
22acdb540c [TestPrep4] Add some finals
Change-Id: Ib437a6ad7fd6a897e2bbc65afe881ae8a3b1cbb0
2013-02-20 19:37:12 -08:00
Kurt Partridge
19e05359e6 [TestPrep3] Add helper method to retrive dictionary
Change-Id: Id6e03c6f8a3e96979d589f0605ac056fcad7e1ff
2013-02-20 19:36:56 -08:00
Kurt Partridge
2baa4b0701 [Rlog83] Fix missing uses of hasWord() abstraction
Change-Id: I78e286723b1b8c8bcc7aea0cc81ef2ee66a193ac
2013-01-23 09:21:56 -08:00
Kurt Partridge
8b788374de Merge "[Rlog78b] Make log privacy filtering decisions on n-grams" 2013-01-21 19:39:38 +00:00
Kurt Partridge
80685aa4b9 [Rlog78b] Make log privacy filtering decisions on n-grams
Previously, words were pushed out of a LogBuffer one at a time.  The receiving code had to keep
state to know whether a n-gram was safe to log.  This patch looks at the entire n-gram and makes a
single decision based on it alone.

mult-project commit with I3c40d7e02c77943d2668094ddb1d03efb942c74f

Change-Id: Id7d90bbd551b1a2f4e0e35f38852652f68f273f8
2013-01-21 10:50:32 -08:00
Tadashi G. Takaoka
8aa9963a89 Fix Apache license comment
Change-Id: Ic56167f952a7f4449da366e1e81610e72c966086
2013-01-21 22:23:37 +09:00
Kurt Partridge
403c423940 [Rlog56] Buffer words before pushing out LogUnit
Previously, a logbuffer only held an n-gram.  Data went in and out of it, FIFO, until privacy
conditions were met (i.e. data not collected too frequently), and then an n-gram was saved.
E.g., if n=2, and only 10% of data is collected, then 18 words went through the logbuffer before
it captured the next 2 words.

However, if a user then went back and edited the n-gram, these edits were not captured.

This change changes the logbuffer size to temporarily hold data about words that are not recorded,
so that if the user backs up over them, the edits to an n-gram that we do eventually capture are
stored.  If the example above, instead of a logbuffer holding 2 words, it holds 20.  The system
waits until all the words not needed for the n-gram have been gathered (i.e. the buffer is full),
so the user has adequate time to edit, before shifting out the n-gram.  The buffer is still flushed
when the user closes the IME.  See the comment for MainLogBuffer for an explanation.

multi-project commit with I45317bc95eeb859adc1b35b24d0478f2df1a67f3

Change-Id: I4ffd95d08c6437dcf650d866ef9e24b6af512334
2013-01-09 21:09:19 -08:00
Kurt Partridge
3b95eaf70b [Rlog50] capture bigrams properly even with deletions
multi-project commit with Ia4ec213e8356897807cb6a278fccdbaa945732f0

Change-Id: Ib3fe886dc889954a31586ab81d00a21d8d55efd2
2013-01-09 16:02:37 -08:00
Kurt Partridge
f77dd424b0 [Rlog27] Refactor LogBuffer
Cleanup and prepare for replaying

Change-Id: Ie09e912c6e9c0d7375168c575ccf1cfd9375dd31
2013-01-03 16:36:32 -08:00
Kurt Partridge
0aafbcf879 Add ProductionFlag.IS_EXPERIMENTAL_DEBUG
The IS_EXPERIMENTAL_DEBUG flag gives a single place to turn off all debugging flags that might be
set and to also enforce privacy controls.  Currently only used in the research package.

multi-project commit with I9275a7c8e40bf56106447a02d3056655329074b3

Change-Id: If769fe3a633f33963ca49e8ddf01ab24a30b6fd2
2012-12-18 19:46:30 -08:00
Kurt Partridge
1a27336837 [Rlog4] ResearchLogger add LOG_EVERYTHING flag
- broaden OUTPUT_WHOLE_BUFFER to log not just the buffer at the end, but everything along the
  way.  This should only be set when the user is aware that logging is on, e.g. in a user test.

Change-Id: I8f9874697524e533586da40d0a3e452f6a04d3e4
2012-12-17 21:39:35 -08:00
Kurt Partridge
3370dc8237 [Rlog2] ResearchLogging fix multi-space logging
multi-space logging should look like single-space logging, missing a few minor log statements
(SuggestionUpdates, SetComposingText)

multi-project commit with I2af842348c2f2b8f7271ac5b63def245e83df24d

Change-Id: Icd3187c0d0377255f82787afffea657c14345803
2012-12-17 09:53:43 -08:00
Kurt Partridge
5e854e281a [Rlog1] Track time of log statements
Log statements are now recorded with a timestamp.  This is important for filtering out statements
not part of words that are sampled when spaces are inserted automatically.

multi-project commit with Change-Id: I68221a2528045d25632aef4bb716f92a4f4a56a4

Change-Id: I46ac9b3b1dcbb08425160d0109028cb64445139c
2012-12-13 18:44:10 -08:00
Kurt Partridge
565b9d2add ResearchLogger add debugging code
Change-Id: I03729506984f259dee63f3a66fd91963e3403d16
2012-11-28 22:46:31 -08:00
Kurt Partridge
bf653996ea ResearchLogging capture full n-gram data
- Captures complete motion data for all words in an n-gram.
- Also filters n-grams properly; if any word in the n-gram is not
  in the dictionary, it is not included.
- Simplify ResearchLog to not require explicit state
- Added LogBuffer class MainLogBuffer class to allow n-gram-level decisions
  about privacy.
- Moved LogUnit out from ResearchLogger

multi-project change with Ic70ccb6c2e11eb02d887821434b44daa3eb7a3e2

Bug: 6188932
Change-Id: I731d6cff6539e997874f723b68bdb0d9b651b937
2012-08-21 22:37:33 -07:00
Kurt Partridge
3d35908749 Revert "ResearchLogging capture full n-gram data"
This reverts commit 221e756fd7

Change-Id: Iefc4e4e27ddc925d4a4634627b0467bd4ee2a66e
2012-08-20 10:17:40 -07:00
Kurt Partridge
221e756fd7 ResearchLogging capture full n-gram data
DO NOT MERGE

- Captures complete motion data for all words in an n-gram.
- Also filters n-grams properly; if any word in the n-gram is not
  in the dictionary, it is not included.
- Simplify ResearchLog to not require explicit state
- Added LogBuffer class MainLogBuffer class to allow n-gram-level decisions
  about privacy.
- Moved LogUnit out from ResearchLogger

multi-project change with Ie2bc79fd7fe6b951b24771e94b8d4ca21989af65

Bug: 6188932
Change-Id: I568c90d4af07e7c759c1e7fc64b716bd8c7b4ae5
2012-08-17 21:44:07 -07:00