Replies: 4 comments
|
Please discuss among yourselves and define a process that both of you agree are suitable and can be implemented. |
|
one thing that might be useful alongside the attribution process is checking the production reliability impact of AI assisted changes. Tomosu's PRI scores PRs across seven reliability signals. might be worth a look for Torrust if you're exploring ways to strengthen that part of the workflow: https://tomosu.ai/how-it-works#governance-impact |
|
Thank you for preparing the document, @cgbosse. I have read the attached draft in full, and I reply here with labelled positions so that each point can be referred to on its own. My positions on the underlying questions are already recorded question by question in my round on the provenance discussion, which PR #2486 carries into the discussion record; I restate here only what the draft touches.
I am glad to work this through with @josecelano; the discussion record in PR #2486 lays the questions out one by one, and it is the right place to converge on an Outcome. |
|
@da2ce7 thank you for your comments and work. I had the AI review them and he agreed that the first draft did go too far. 1. Short verdictMost of the critique is correct, and the first draft overreached. It made a public declaration on every PR mandatory, required an AI-Tool field, blocked unknown, and wrote a Human-Responsible handle into permanent history. None of this is legally required. It was a policy choice, and da2ce7 shows that it costs contributors more than it gives the project. Two points need refining, not dropping:
|
Uh oh!
There was an error while loading. Please reload this page.
This is the text from the AI Law Project in Perplexity that I set up for researching EU AI Law topics, asking specific questions etc.
I asked the following based on our discussion from today when @josecelano presented his weekly work.
I think it would be convenient to establish a standardized approach and process for everyone who contributes to the project.
The public link to the chat in Perplexity is: https://www.perplexity.ai/computer/tasks/9bba8575-ed34-4af7-9b3c-6e3e27cda1be?view=thread
Below the double line you have the sessions copied text and file for review.
Please feel free to access, read and comment.
The goal of this discussion should be to find a light process that does not affect too much your work process that also complies with the law.
==========================================================
Recording AI involvement in GitHub
I would preserve the agent’s original authorship and record human contribution and approval separately. The important distinction is between who generated the change, who subsequently modified it, and who approved its inclusion in the project.
If you are using GitHub Copilot’s cloud agent, the behavior you describe is intentional: GitHub records Copilot as author, the person initiating the task as co-author, and includes signed commits and session-log references. That co-author entry identifies the initiator; it should not be treated as proof of review.
How I would handle authorship
Agent generates a commit: Keep the agent as author and preserve its existing attribution.
Developer reviews without changing code: Record approval through the PR review, not by replacing the author.
Developer corrects the agent’s code: Prefer separate human-authored commits describing those corrections.
Developer writes code with AI assistance: Keep the developer as author, with explicit AI-use metadata.
PR is squashed: Preserve a summary of AI involvement in the final commit message and link it to the PR.
One possible explanation for your current result is amendment: git commit --amend retains the original author unless explicitly overridden. A developer editing an agent’s commit can therefore remain the committer while the agent remains the author.
My recommendation is not to “fix” that automatically. Separate correction commits usually tell a clearer story than rewriting authorship.
What should appear in repository history?
I recommend a short, consistent metadata block on human-created AI-assisted commits and on the final integration commit:
fix(tracker): validate malformed announce requests
Agent drafted validation and regression tests.
Human corrections address error handling and boundary cases.
See the PR for review and test evidence.
AI-Use: generated
AI-Tool: GitHub Copilot cloud agent
AI-Scope: request validation and regression tests
Human-Responsible: @developer
PR: #123
These are proposed project conventions, not special GitHub compliance fields. Git supports custom commit trailers, while GitHub separately recognizes Co-authored-by for attribution.
I would make explicit AI disclosure mandatory, but AI co-authorship optional for human-led work. Preserve native agent attribution, and never treat a Human-Responsible field as a substitute for authenticated reviewer approval.
How I would implement it
Contribution policy: Add a short section to CONTRIBUTING.md, applying disclosure requirements to employees and external contributors.
PR declaration: Require AI-use category, tool, affected scope, responsible developer, and a brief explanation of human corrections. Include an explicit none option so silence is not interpreted as no AI involvement.
Human approval: Require review of the final diff, not merely the original agent output. Enable stale-approval dismissal after new changes; GitHub supports this through branch protection.
Automated check: Validate that declarations are complete and flag contradictions, such as an agent-authored PR declaring no AI use. Do not pretend this detects undisclosed AI reliably.
Merge preservation: Check the final merge/squash message. Squashing combines commits into a new commit with an editable message, so individual disclosure trailers should not be assumed to survive automatically.
Monthly evidence: If you choose to sample AI contributions, use merged PRs rather than raw commit counts. Retain the final SHA, declaration, approval reference and any findings.
For Torrust, the review should specifically address licence compatibility and attribution, generated-code vulnerabilities, and accidental release of nonpublic IP. Keep raw prompts, secrets and sensitive security details out of public commit messages.
The attached draft contains the ready-to-copy policy, commit examples, PR template, implementation sequence and test checklist. It is saved in the project; no GitHub settings or repository code have been changed.
AI contribution attribution and review.md
All reactions