Skip to content

fix(contract): the report header names the producer once - #43

Merged
modusensus merged 2 commits into
mainfrom
fix/report-header-doubled-name
Oct 21, 2026
Merged

modusensus merged 2 commits into
mainfrom
fix/report-header-doubled-name

Conversation

@modusensus

@modusensus modusensus commented Oct 20, 2026 •

Copy link
Copy Markdown
Member

Summary

  • src/contract.js:206 rendered the report title as `euthyna ${producer.name}` while the
    producer name is already euthyna-history / euthyna-audit, so every run printed
    euthyna euthyna-audit —. 0.9.0 ships that header. The title is now the producer name as the
    contract emits it, which is also the string --json carries in producer — the human line and
    the machine field say the same thing.
  • Swept in the same pass: the four 真实捕获 / real capture sample outputs in
    .agents/skills/euthyna{,-en}/references/fact-producers.md quote the header, so they were
    stale the moment the render changed. A repo-wide grep for the doubled form now matches nothing
    except the comment in the new test that explains the defect.
  • package.json's description named two of the three producers and none of the adjudication
    half; it now covers deleted-code provenance, symbol invocations and dependency pins, plus the
    six gates and the downgrade rule.

Verification

  • RED first: the new i18n case failed on the Chinese title names the producer once, then
    node --test test/i18n.test.js → 17 tests / 17 pass / 0 fail.
  • node --test on this branch: 325 tests, 324 pass, 0 fail, 1 skip.
  • Rendered from the working tree, both languages:
    euthyna-history — 被删除代码的来源归属与安全分类 and
    euthyna-history — attribution and security classification of deleted code;
    euthyna-audit — 变更面审计:…; --json still reports producer.name = euthyna-audit.

What this check does not see

The skill-parity guard compares structure and identifiers between the two editions, and the
doubled title kept its identifiers on both sides — so it stayed green while both samples were
wrong. Nothing mechanical pins a quoted sample to the tool's real output; that is a reading job,
and the grep is the channel that found it.

Summary by CodeRabbit

  • Documentation

    • Updated history and coverage output examples with clearer command-specific headers.
    • Revised the package description to present Euthyna as an audit framework for AI coding agents that produces deterministic evidence and evaluates claims through six gates.
  • Bug Fixes

    • Corrected terminal report headers to display producer names without a duplicated prefix.
    • Verified English and Chinese report titles retain the producer name once and include the localized purpose.

@coderabbitai

coderabbitai Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 13b2cc3c-393d-4e22-83e8-ccb60b23aa37
📥 Commits

Reviewing files that changed from the base of the PR and between af4aa79 and 7a5f8b0.

📒 Files selected for processing: 5
  • .agents/skills/euthyna-en/references/fact-producers.md
  • .agents/skills/euthyna/references/fact-producers.md
  • package.json
  • src/contract.js
  • test/i18n.test.js

Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.

📝 Walkthrough

The report header and history and coverage examples no longer duplicate the euthyna prefix. The package description now covers additional audit functions, and a bilingual regression test checks the rendered title.

Changes: Producer Output and Package Description

Layer / File(s) Summary
Producer header, examples, and package description
src/contract.js, test/i18n.test.js, .agents/skills/euthyna*/references/fact-producers.md, package.json
renderReport uses the producer name directly, and the bilingual regression test checks the rendered title. The history and coverage examples remove the duplicated prefix. The package description now covers AI-agent audit evidence and six-gate claim adjudication.

Priority: ⬇️ Low

Estimated code review effort: 2 (Simple) | ~8 minutes

Change: Bug fix

Merge Risk: ⚪ Minimal · up to 7a5f8

The producer headers, bilingual examples, regression test, and package description are aligned for merge.

Pre-merge checks: Passed 4 · Failed 1

Failed Failed checks: 1 warning

Check name Status Explanation Resolution
Docstring Coverage Warning Docstring coverage is 50.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 2 functions across 2 files. (3 skipped: 3… Write docstrings for the functions missing them to satisfy the coverage threshold.
Passed Passed checks: 4 passed
Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check Passed The title clearly and concisely describes the main change: the report header now names the producer once.
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

Docstring coverage is 50.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 2 functions across 2 files. (3 skipped: 3 unsupported.)

Resolution

Write docstrings for the functions missing them to satisfy the coverage threshold.

✨ Finishing Touches: 💡 1
📝 Generate docstrings: 💡
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@modusensus
modusensus merged commit e51168b into main Oct 21, 2026
10 checks passed
@modusensus
modusensus deleted the fix/report-header-doubled-name branch October 21, 2026 04:05
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