Skip to content

chore: fill or remove RSR template placeholders - #30

Merged
hyperpolymath merged 5 commits into
mainfrom
fix/rsr-placeholders
Jul 28, 2026
Merged

chore: fill or remove RSR template placeholders#30
hyperpolymath merged 5 commits into
mainfrom
fix/rsr-placeholders

Conversation

@hyperpolymath

Copy link
Copy Markdown
Owner

openssf-compliance.yml fails when any of the thirteen files it checks still contains a {{PLACEHOLDER}} token. This clears them, with no invention.

  • Deleted the TEMPLATE INSTRUCTIONS (delete this block before publishing) comment — the template says to delete it, and it is where every legend line lived, so a large share of the reported tokens were the file documenting its own placeholders.
  • Filled what the repository itself supplies: owner and repo from the git remote, project name, year, forge, main branch, contact email.
  • Removed PGP and website lines. https://github.com/<user>.gpg returns HTTP 200 for every account; with no key uploaded the body is a stub reading "This user hasn't uploaded any GPG keys". No key is published for either account, and commit signing here is SSH — unrelated. The template sanctions this: "Optional: Remove sections that don't apply (e.g. PGP if you don't use it)."\n\nA security policy telling a researcher to encrypt to a key that does not exist is worse than one that does not mention encryption.\n\nWhere applicable, this also fixes a misrouted advisory URL. A previous just init copied already-filled templates out of squisher-corpus, so 51 repositories directed vulnerability reports to hyperpolymath/squisher-corpus — a repository unrelated to the code being reported, meaning the affected maintainer never saw them. Repointed from this repository's own git remote.

hyperpolymath and others added 4 commits July 26, 2026 14:42
openssf-compliance.yml fails when any of the thirteen files it checks
still contains a {{PLACEHOLDER}} token. This clears them.

Three kinds of change, no invention:

The "TEMPLATE INSTRUCTIONS (delete this block before publishing)" comment
is deleted. The template says to delete it, and it is where every legend
line lives -- so a large share of the reported tokens were the file
documenting its own placeholders, not real unfilled fields.

Tokens derivable from the repository are filled: owner and repo from the
git remote, project name, year, forge, main branch, contact email.

PGP and website lines are removed rather than filled, because nothing
true could go in them. https://github.com/<user>.gpg returns HTTP 200 for
every account; with no key uploaded the body is a stub reading "This user
hasnt uploaded any GPG keys". No key is published for either account
here, and commit signing in this estate is SSH, which is unrelated. Only
one repository in the estate has a domain, so {{WEBSITE}} likewise has no
correct value. The template sanctions this: "Optional: Remove sections
that dont apply (e.g. PGP if you dont use it)." A security policy telling
a researcher to encrypt to a key that does not exist is worse than one
that does not mention encryption.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Signed-off-by: Jonathan D.A. Jewell <6759885+hyperpolymath@users.noreply.github.com>
@gitar-bot

gitar-bot Bot commented Jul 28, 2026

Copy link
Copy Markdown

Note

Automatic reviews are paused because your trial's included automatic processing has been used for this period. Upgrade now, or comment "Gitar review" to run a review anytime.
Learn more

CI failed: CI failures occurred due to unfilled RSR template placeholders in a K9 contract file, an invalid A2ML manifest missing required identity fields, and a CodeQL configuration error stemming from missing JavaScript/TypeScript source files.

Overview

Analysis of 3 failed CI jobs revealed three distinct issues: unfilled template placeholders causing K9 contract validation to fail, an A2ML manifest validation failure due to a missing required identity field, and a CodeQL configuration error resulting from analyzing JavaScript/TypeScript on a repository with no JS/TS source files.

Failures

K9 Contract Validation Failure (confidence: high)

  • Type: build
  • Affected jobs: 90326080949
  • Related to change: yes
  • Root cause: The file .machine_readable/contractiles/k9/template-hunt.k9.ncl still contains unfilled RSR template placeholders (TODO: component-name, TODO: describe component type, etc.).
  • Suggested fix: Edit .machine_readable/contractiles/k9/template-hunt.k9.ncl to replace all TODO placeholders with valid component details and metadata.

A2ML Manifest Validation Failure (confidence: high)

  • Type: build
  • Affected jobs: 90326081063
  • Related to change: yes
  • Root cause: A2ML manifest validation failed because a scanned manifest file is missing required identity fields (such as agent-id, name, or project).
  • Suggested fix: Update the corresponding .a2ml manifest file to include the required identity fields.

CodeQL Configuration Error (confidence: high)

  • Type: configuration
  • Affected jobs: 90326081232
  • Related to change: no
  • Root cause: The CodeQL workflow is configured to analyze JavaScript/TypeScript, but the repository contains no valid JavaScript or TypeScript source files.
  • Suggested fix: Remove javascript-typescript from the CodeQL workflow matrix languages if the repository does not use JavaScript/TypeScript.

Summary

  • Change-related failures: 2 failures (unfilled K9 contract template placeholders and missing A2ML manifest identity fields).
  • Infrastructure/flaky failures: 0 failures.
  • Recommended action: Fill in the remaining RSR template placeholders in .machine_readable/contractiles/k9/template-hunt.k9.ncl, supply missing identity fields in the .a2ml manifests, and adjust the CodeQL workflow configuration to exclude unused languages.
Code Review ✅ Approved 2 resolved / 2 findings

Replaces template placeholders across repository documentation and metadata, but guix.scm still identifies the package as squisher-corpus and SECURITY.md retains a PGP fingerprint placeholder.

✅ 2 resolved
Bug: guix.scm identifies package as squisher-corpus, not dictask

📄 guix.scm:2 📄 guix.scm:10 📄 guix.scm:14 📄 guix.scm:15 📄 guix.scm:16
This PR's stated goal is to fix metadata that was wrongly copied from squisher-corpus, yet the rewritten guix.scm names the package squisher-corpus, describes it as such, and sets home-page to https://github.com/hyperpolymath/squisher-corpus — a different repository than this one (hyperpolymath/dictask). The package identity and home-page are wrong for this repo. Replace squisher-corpus with dictask in the header comment, name, synopsis, description, and home-page.

Edge Case: SECURITY.md still has PGP fingerprint placeholder

📄 .github/SECURITY.md:44
The PR summary states PGP lines were removed because no key is published, but the Encrypted Email section still contains a Fingerprint row with the placeholder [PGP fingerprint not set]. This leaves a dangling reference to encryption with no usable key. Remove the Fingerprint row (or the whole encrypted-email fallback) to match the stated intent.

Tip

Comment Gitar fix CI to trigger a fix.

Options

Display: compact → Showing less information.

Comment with these commands to change the behavior for this request:

Compact
gitar display:verbose         

Was this helpful? React with 👍 / 👎 | Gitar

Comment thread guix.scm
Comment thread .github/SECURITY.md
@sonarqubecloud

Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
C Security Rating on New Code (required ≥ A)

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

@hyperpolymath
hyperpolymath merged commit 21b1c2c into main Jul 28, 2026
19 of 23 checks passed
@hyperpolymath
hyperpolymath deleted the fix/rsr-placeholders branch July 28, 2026 17:13
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