Logging Format & Events
Typing Logs
note
This is where we derived metrics from in paper 1.
Event Types
| Event Name | Description |
|---|---|
| SUGGESTION_GENERATE | Triggered when a suggestion is generated based on the current user input. |
| SUGGESTION_SHOWN | Fired when a generated suggestion is finshed rendering on VSCode and should be shown to the user. |
| SUGGESTION_TAB_ACCEPT | Occurs when the user accepts a suggestion by pressing the Tab key. |
| SUGGESTION_LINE_REJECT | The user does not type or accept any part of the suggestion. 🔥 This is never used 🔥 |
| RUN | This event is triggered when the IDE run button is clicked. |
| TYPING | Indicates that the user is actively typing input with snapshots saved. |
Log Shape and Examples
| log_id | created_at | event | raw_text | shown_bug | correct_line | incorrect_line |
|---|---|---|---|---|---|---|
| adad0171-b567-4272-81d2-069379855ea2 | 2025-12-07 18:37:00.157008 +00:00 | RUN | // Warmup Assignment: Longest Word Finder
//
// Write a few lines of code that prompts the user to enter a series of words,
// stopping when the user has entered the word "quit". The program should then
// print the length of the longest word entered or "no words entered" if no
// words other than "quit" were entered.
//
// Example:
// Input: hello world programming quit
// Output: 11
//
// Example:
// Input: quit
// Output: no words entered
public class Warmup {
public static void main(String[] args) {
// TODO: Implement the program here
✍️
}
}
| null | null | null |
| aada1eb8-9d89-4fa6-93e0-b2431601d266 | 2025-12-07 18:37:27.342097 +00:00 | TYPING | // Warmup Assignment: Longest Word Finder
//
// Write a few lines of code that prompts the user to enter a series of words,
// stopping when the user has entered the word "quit". The program should then
// print the length of the longest word entered or "no words entered" if no
// words other than "quit" were entered.
//
// Example:
// Input: hello world programming quit
// Output: 11
//
// Example:
// Input: quit
// Output: no words entered
public class Warmup {
public static void main(String[] args) {
// TODO: Implement the program here
✍️
}
}
| null | null | null |
| 5c9c0b88-f1f9-4b31-ad3f-713fdaecffcf | 2025-12-07 18:37:31.346670 +00:00 | SUGGESTION_GENERATE | // Warmup Assignment: Longest Word Finder
//
// Write a few lines of code that prompts the user to enter a series of words,
// stopping when the user has entered the word "quit". The program should then
// print the length of the longest word entered or "no words entered" if no
// words other than "quit" were entered.
//
// Example:
// Input: hello world programming quit
// Output: 11
//
// Example:
// Input: quit
// Output: no words entered
public class Warmup {
public static void main(String[] args) {
// TODO: Implement the program here
✍️
}
}
| false | Scanner scanner = new Scanner(System.in); | Scanner scanner = new Scanner(string.in); |
| 98893d3b-713b-4f41-b1b2-26ca2674ddf2 | 2025-12-07 18:37:31.521456 +00:00 | SUGGESTION_SHOWN | // Warmup Assignment: Longest Word Finder
//
// Write a few lines of code that prompts the user to enter a series of words,
// stopping when the user has entered the word "quit". The program should then
// print the length of the longest word entered or "no words entered" if no
// words other than "quit" were entered.
//
// Example:
// Input: hello world programming quit
// Output: 11
//
// Example:
// Input: quit
// Output: no words entered
public class Warmup {
public static void main(String[] args) {
// TODO: Implement the program here
✍️
}
}
| false | Scanner scanner = new Scanner(System.in); | Scanner scanner = new Scanner(string.in); |
| 6e8ffa60-b8fe-463a-a6a1-ee2f5b487e12 | 2025-12-07 18:37:33.144596 +00:00 | SUGGESTION_TAB_ACCEPT | // Warmup Assignment: Longest Word Finder
//
// Write a few lines of code that prompts the user to enter a series of words,
// stopping when the user has entered the word "quit". The program should then
// print the length of the longest word entered or "no words entered" if no
// words other than "quit" were entered.
//
// Example:
// Input: hello world programming quit
// Output: 11
//
// Example:
// Input: quit
// Output: no words entered
public class Warmup {
public static void main(String[] args) {
// TODO: Implement the program here
Scanner scanner = new Scanner(System.in);
✍️
}
}
| false | Scanner scanner = new Scanner(System.in); | Scanner scanner = new Scanner(string.in); |
danger
Suggestion Logs (will be deprecated)
These were not used for metrics in CLover and were only used on the Clover Website. V2 will consolidate these, typing_log should be considered source of truth and this is here purely for archival reference.
Event Types
| Event Name | Description |
|---|---|
| SUGGESTION_LINE_ACCEPT | Triggered when the user accepts a line suggestion using the Tab key. |
| SUGGESTION_LINE_REJECT | Fired when the user types instead of hitting the Tab key. |
| SUGGESTION_SHOWN | Fired when a generated suggestion is finshed rendering on VSCode and should be shown to the user. |
| SUGGESTION_TAB_ACCEPT | Triggered when the user accepts a suggestion using the Tab key. |
| TYPING | Indicates that the user is actively typing input. |