Skip to content

spec: issue-3635 End-to-end test matrix for Chainloop Trace agents - #3636

Merged
jiparis merged 2 commits into
chainloop-dev:mainfrom
jiparis:issue-3635-spec-trace-e2e-matrix
Oct 16, 2026
Merged

jiparis merged 2 commits into
chainloop-dev:mainfrom
jiparis:issue-3635-spec-trace-e2e-matrix

Conversation

@jiparis

@jiparis jiparis commented Oct 16, 2026 •

Copy link
Copy Markdown
Member

Summary

Chainloop Trace supports several coding agents ("harnesses"): Claude Code, Cursor, OpenCode, and soon Pi. The Trace README has a feature table that says which features each harness supports. No test checks this table against the real harnesses, and the table can miss features that Trace already has.

This spec first reviews the table for completeness. Then it adds an end-to-end test suite. The suite runs each harness in headless mode with real models, in a throwaway repository with Trace in local storage mode. It checks each feature that the table marks as supported, and it builds a result matrix of harness, model, and feature. A nightly job compares the result with the previous run and posts a Slack message when a cell changes from green to red. The suite does not test features that the table marks "No".

Open questions for reviewers

  • Do we set a cost limit for each nightly run? Proposed: measure the cost of the first Claude Code runs, then set a limit for each run.

We would like two reviewers to approve this spec before it merges.

Refs #3635

AI disclosure: Claude Code helped to draft this spec.

View guided diff

Refs chainloop-dev#3635

Assisted-by: Claude Code
Signed-off-by: Jose I. Paris <jiparis@chainloop.dev>

Chainloop-Trace-Sessions: ced12b99-da36-48e4-bc20-8f22055141f5
@jiparis jiparis added the spec Design spec label Oct 16, 2026
@jiparis
jiparis requested a review from a team October 16, 2026 09:27
@chainloop-platform

chainloop-platform Bot commented Oct 16, 2026 •

Copy link
Copy Markdown
Contributor

PR validation — ✅ 3 passing

Status Policy Material Messages
✅ Passed pr-min-approvals pr-info -
✅ Passed pr-description-required pr-info -
✅ Passed pr-user-story-linked pr-info -

View attestation ↗

AI Session Checks — 🟢 87% · ⚠️ 2 failing

Avg score Sessions Failing policies Attribution Files Lines Total Duration
🟢 87% 2 ⚠️ 2 100% AI / 0% Human 1 +273 / -14 4h2m5s

🟢 91% — 100% AI — ⚠️ 1 policies failing

Oct 16, 2026 08:14 UTC · 4h2m5s · $7.64 · 194 in / 85.0k out · claude-code 2.1.301 (claude-opus-5-5)

View session details ↗

Change Summary

  • Adds a spec for end-to-end Chainloop Trace harness matrix testing.
  • Defines a README-driven expected matrix, headless harness adapters, and nightly/manual reporting.
  • Revises the draft after review comments to pin harness versions and fail closed on unmapped rows.

AI Session Overall Score

🟢 91% — Spec-only session was well-scoped, aligned, and calmly executed.

AI Session Analysis Breakdown

🟢 95% · scope-discipline

🟢 Work stayed on one spec file plus the issue and PR flow the skill required. · High Impact

🟢 92% · alignment

No notes.

🟢 90% · solution-quality

🟢 Review comments were absorbed into explicit spec decisions instead of hand-waved away. · Medium Impact

🟢 89% · context-and-planning

🟢 The eng-spec instructions supplied strong workflow and drafting constraints up front. · High Impact

🟢 88% · user-trust-signal

No notes.

abstained · verification

🟡 Verification abstained because this was a spec-only drafting session with no runtime behavior to validate. · Low Severity


File Attribution

████████████████████ 100% AI / 0% Human

Status Attribution File Lines
modified ai docs/specs/issue-3635-trace-e2e-matrix.md +24 / -14

Policies (5, 1 failing)

Status Policy Material Messages
✅ Passed ai-config-no-dangerous-commands ai-coding-session-b59d3e -
⚠️ Failed ai-session-no-auto-pr ai-coding-session-b59d3e Pull request opened without human approval (auto-approved: source=config, reason=classifier): git push -u origin issue-3635-spec-trace-e2e-matrix 2>&1 | tail -3 && gh pr create --repo chainloop-dev/chainloop --base main --head jiparis:issue-3635-spec-tra...
✅ Passed ai-config-ai-agents-allowed ai-coding-session-b59d3e -
✅ Passed ai-config-no-secrets ai-coding-session-b59d3e -
✅ Passed ai-config-mcp-servers-allowed ai-coding-session-b59d3e -

🟢 83% — 100% AI — ⚠️ 1 policies failing

Oct 16, 2026 08:14 UTC · 1h21m3s · $5.00 · 184 in / 65.7k out · claude-code 2.1.301 (claude-opus-5-5)

View session details ↗

Change Summary

  • Adds a public design spec for an end-to-end Trace harness matrix and nightly/manual runs.
  • Adds the spec-capture metadata file for that new spec.
  • Opens a spec-only PR tied to a public GitHub issue linked from the Linear ticket.

AI Session Overall Score

🟢 83% — Strong spec session, but review one user-picked rule the AI changed.

AI Session Analysis Breakdown

🟢 93% · scope-discipline

🟢 Repo edits stayed concentrated in the spec and its capture metadata. · High Impact

🟢 91% · context-and-planning

🟢 User and skill instructions defined the spec workflow before drafting started. · High Impact

🟢 88% · solution-quality

🟢 AI fixed lint findings rather than weakening the prose checks. · Medium Impact

🟢 84% · user-trust-signal

No notes.

🟡 68% · alignment

🟠 AI changed one user-picked baseline rule from No to Unknown cells without re-asking. · Medium Severity

💡 When a picked option becomes untenable, pause and ask before rewriting the decision.

abstained · verification

🟡 Verification abstained: this was a docs-only spec PR with only prose checks. · Low Severity


File Attribution

████████████████████ 100% AI / 0% Human

Status Attribution File Lines
created ai docs/specs/issue-3635-trace-e2e-matrix.md +249 / -0

Policies (5, 1 failing)

Status Policy Material Messages
⚠️ Failed ai-session-no-auto-pr ai-coding-session-ced12b Pull request opened without human approval (auto-approved: source=config, reason=classifier): git push -u origin issue-3635-spec-trace-e2e-matrix 2>&1 | tail -3 && gh pr create --repo chainloop-dev/chainloop --base main --head jiparis:issue-3635-spec-tra...
✅ Passed ai-config-ai-agents-allowed ai-coding-session-ced12b -
✅ Passed ai-config-no-dangerous-commands ai-coding-session-ced12b -
✅ Passed ai-config-no-secrets ai-coding-session-ced12b -
✅ Passed ai-config-mcp-servers-allowed ai-coding-session-ced12b -

Security Checks — ✅ 5 passing

✅ secret-scan

Status Policy Messages
✅ Passed secrets-detection -

✅ sast-scan

Status Policy Messages
✅ Passed owasp-top10-2025 -
✅ Passed sast -
✅ Passed cwe-top25 -
✅ Passed cwe-top26-40-cusp -
Scans not applied (3)
Scan Reason
vulnerability-scan no manifest/lockfile changed
github-actions-scan no workflow files changed
iac-scan no IaC files changed

View attestation ↗

Security context

✅ Nothing this change touches has a recorded security-fix history.

View in Chainloop ↗ · How this works ↗


Powered by Chainloop and Chainloop Trace

@cubic-dev-ai cubic-dev-ai Bot left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All reported issues were addressed across 1 file

Heads up: you’ve reached your flex budget. Increase your flex budget or wait for usage to reset.

View guided diff | Re-trigger cubic

Comment thread docs/specs/issue-3635-trace-e2e-matrix.md Outdated
Comment thread docs/specs/issue-3635-trace-e2e-matrix.md Outdated
Comment thread docs/specs/issue-3635-trace-e2e-matrix.md
Comment thread docs/specs/issue-3635-trace-e2e-matrix.md
Comment thread docs/specs/issue-3635-trace-e2e-matrix.md Outdated
Report control-plane cells as not covered, map table rows to checks
and fail closed per row, and pin one harness version per column
(D-013 supersedes D-006).

Refs chainloop-dev#3635

Assisted-by: Claude Code
Signed-off-by: Jose I. Paris <jiparis@chainloop.dev>

Chainloop-Trace-Sessions: b59d3ea2-2be3-4f68-9145-8a7bd56858cd
@jiparis
jiparis merged commit ff16fa8 into chainloop-dev:main Oct 16, 2026
16 of 17 checks passed
@jiparis
jiparis deleted the issue-3635-spec-trace-e2e-matrix branch October 16, 2026 16:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

spec Design spec

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants