Skip to content

fix(copyright): recover narrative author attributions - #1417

Merged
mstykow merged 1 commit into
mainfrom
fix/narrative-author-attributions
Sep 3, 2026
Merged

fix(copyright): recover narrative author attributions#1417
mstykow merged 1 commit into
mainfrom
fix/narrative-author-attributions

Conversation

@mstykow

@mstykow mstykow commented Sep 3, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • recover contactless passive, first-person, and provenance-style author credits when the candidate has person-name structure
  • join bounded wrapped first-person credits and remove incomplete initial-only prefixes once the full name is known
  • preserve explicit narrative credits through the scanner source-code guard without weakening arbitrary source-code rejection

Issues

Scope and exclusions

  • Included: rewritten by, as authored by me, Name, and artifact provenance such as documentation is taken from ... by Name
  • Explicit exclusions: tool names, generated artifacts, generic teams, numeric product identities, and arbitrary contactless by prose

How to verify

  • Scan Perl 5.38.4 with --copyright: exactly three author records are added over the parent—Nicholas Clark, Ozan S. Yigit, and Marc Lehmann—with no copyright or holder changes.
  • Repeat on InfoZIP 3.0, musl, Dancer2, and Valgrind 3.25.1: author, copyright, and holder results are identical to the parent.
  • Full common-profile compare artifacts: .provenant/compare-runs/20260903T040653Z-perl-5.38.4-58241 and .provenant/compare-runs/20260903T040825Z-zip30-58597.

Intentional differences from Python

  • Provenant keeps the explicit Ozan S. Yigit credit that ScanCode misses and reports Marc Lehmann from the direct documentation provenance statement, while rejecting ScanCode author noise such as product names and prose fragments.
  • Provenant keeps GPL references in InfoZIP change history as clues rather than treating removed GPL code as an applicable file license.

Follow-up work

  • Created or intentionally deferred: the common-profile InfoZIP review exposed one valid abbreviated-name credit (Chr. Spieler) still missing; that is isolated to the next stacked layer.

Expected-output fixture changes

  • Files changed: none
  • Why the new expected output is correct: focused detector and scanner contracts cover the new behavior without changing checked-in golden output.

An error occurred while trying to automatically change base from fix/contact-backed-action-credits to fix/bounded-author-action-credits September 3, 2026 11:04
Signed-off-by: Maxim Stykow <maxim.stykow@gmail.com>
@mstykow
mstykow force-pushed the fix/narrative-author-attributions branch from 98ab327 to 3c35605 Compare September 3, 2026 11:06
@mstykow
mstykow changed the base branch from fix/contact-backed-action-credits to main September 3, 2026 11:06
@mstykow

mstykow commented Sep 3, 2026

Copy link
Copy Markdown
Collaborator Author

@greptileai review

@mstykow
mstykow merged commit 87c752d into main Sep 3, 2026
12 of 23 checks passed
@mstykow
mstykow deleted the fix/narrative-author-attributions branch September 3, 2026 11:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant