Skip to content

Port the Assisted-by attribution counter from ThreadX #76

Description

@fdesbiens

This repository has no way to count its AI attributions correctly. Git's own trailer parser happens to agree with a whole-body count on dev today, 10 and 10, but only because no squash merge here has yet buried one. The exposure is structural rather than hypothetical: the same command reports 4 of 43 on ZoneX, 2 of 17 on GUIX and 148 of 196 on ThreadX.

Git reads trailers only from a block at the very end of a commit message. A squash merge concatenates the branch's commit messages, so every trailer but the last is left buried mid-message, and an indented trailer is skipped for the same reason. Both forms are real attributions and both are invisible to the parser.

This matters beyond tidiness. The Assisted-by trailer exists because the Eclipse Foundation's Generative AI Usage Guidelines oblige committers to be transparent about their use of generative AI, and the trailer is the per-change, dated record that obligation rests on. A count that silently misses most of them cannot answer the question it was put there to answer.

ThreadX added scripts/count_assisted_by.sh in eclipse-threadx/threadx#775. It reads whole commit bodies instead of relying on git's trailer parser, so the count is complete:

scripts/count_assisted_by.sh                # HEAD, grouped by value
scripts/count_assisted_by.sh dev            # a branch
scripts/count_assisted_by.sh dev -- <path>  # limited to a path
scripts/count_assisted_by.sh --list dev     # one line per commit

Port that script here. It is plain bash with nothing repository-specific in it, so it should need no change beyond the copyright header.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions