Skip to content

Autograding log anonymizer drops generated_output entries #12690

Description

@vimla01

Describe the bug
While looking through sbin/anonymize_autograding_logs.py, I noticed that it only handles autograding log entries whose job path matches term/course/submissions/gradeable/user/version. Valid log entries for generated_output jobs, such as term/course/generated_output/gradeable, do not match that format and are silently skipped during anonymization.

As a result, anonymized autograding logs can lose valid entries.

Expected behavior
The anonymizer should preserve valid generated_output log entries instead of dropping them. Since those entries do not include a student username, they could either be copied through unchanged or handled separately, but they should still appear in the output.

To Reproduce
Steps to reproduce the behavior:

  1. Create a file containing this valid autograding log line:
    2026-03-30 12:00:00 | ABC123 | | zip | f24/sample/generated_output/lab1 | wait: 1.000 sec | ok
  2. Run:
    python3 sbin/anonymize_autograding_logs.py file /tmp/generated_input.txt /tmp/generated_output.txt XX
  3. Open /tmp/generated_output.txt
  4. See that the output file is empty, even though the input line is a valid log entry

Configuration

  • OS: Linux
  • Browser: N/A

Screenshots
N/A

Additional context
This script is used to anonymize autograding logs before sharing them for debugging or performance experiments. While reviewing/testing the script, I noticed it only supports submissions/... paths. I then checked the autograder code and found that valid generated_output/... job names are also written to the autograding log, and confirmed with a small repro that those entries are silently dropped by the anonymizer.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Awaiting TriageBrand New Issue - not yet reviewed & prioritized by the Submitty Project Managersbug

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions