COR-1641: CLI-02: Scan-Level Metadata Tagging - #124
Merged
leenk7991 merged 5 commits intoJul 22, 2026
Conversation
leenk7991
requested review from
Ibrahimrahhal,
asadeddin,
juangaitanv,
tabualhsan and
yhoztak
July 13, 2026 11:59
Ibrahimrahhal
left a comment
Member
There was a problem hiding this comment.
What is the use case for this? why do we need to store these tags
Member
Author
i think it's one of the requirements from the meeting with TransUnion: https://linear.app/corgea/issue/COR-1641/cli-02-scan-level-metadata-tagging |
…to cor-1641-scan-metadata-tagging
Ibrahimrahhal
approved these changes
Jul 20, 2026
Ibrahimrahhal
left a comment
Member
There was a problem hiding this comment.
LGTM in terms of code, but I think its worth checking with Ahmad or Allan to see what is there use cases, we want to avoid implementing specs that is auto generated from dennis as he might not really get the context from the transcript
…to cor-1641-scan-metadata-tagging
…-tagging Keep --metadata tagging; drop --skip-if-scanned removed on the base branch. Co-authored-by: Cursor <cursoragent@cursor.com>
leenk7991
added a commit
that referenced
this pull request
Jul 22, 2026
* COR-1639: CLI-01: Scan Optimization (SHA Tracking) * Address PR review: tighten skip-if-scanned guards and fix CI clippy Reject skip with partial-scan/output flags, case-insensitive complete status, and satisfy clippy::question_mark on CI's Rust 1.97. Co-authored-by: Cursor <cursoragent@cursor.com> * Fix cargo audit: bump quick-xml and crossbeam-epoch Address RUSTSEC-2026-0194/0195 (quick-xml >=0.41) and RUSTSEC-2026-0204 (crossbeam-epoch >=0.9.20). Update Fortify parser for the quick-xml 0.41 API. Co-authored-by: Cursor <cursoragent@cursor.com> * COR-1639: address comments and other updates * COR-1639: log error instead of print * COR-1639: use repository discover and include submodule status in dirty check * COR-1639: check repo root and other updates * COR-1639: drop --skip-if-scanned; keep scan SHA surfacing Remove the opt-in skip path and unused list filters. Retain git_sha on scan responses/list output, plus get_repo_info discover for subdirectory SHA. Co-authored-by: Cursor <cursoragent@cursor.com> * chore: drop no-op whitespace from blast scan Co-authored-by: Cursor <cursoragent@cursor.com> * COR-1639: address comments * COR-1641: CLI-02: Scan-Level Metadata Tagging (#124) * COR-1641: CLI-02: Scan-Level Metadata Tagging * COR-1641: serde skip if none --------- Co-authored-by: Cursor <cursoragent@cursor.com> --------- Co-authored-by: Cursor <cursoragent@cursor.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add repeatable
--metadata KEY=VALUEoncorgea scanso CI can tag a blast scan; the CLI sends it as a JSONmetadatamultipart part on upload.Changes
src/main.rs--metadata KEY=VALUE(repeatable, blast-only)--skip-if-scanned(same rule as--policy/--scan-type/ …)src/scanners/blast.rsmetadata_json_from_pairs: parse pairs → JSON object string (=split on first occurrence; duplicate keys last-wins)Option<String>into uploadsrc/utils/api.rsupload_zip(..., metadata: Option<String>)— addmetadatamultipart part when presentScanResponse.metadataforcorgea list --jsonparityNotes
cor-1639-scan-sha-tracking); retarget base tomainafter feat(COR-1639): surface scan git SHA in list output #123 merges.metadatamultipart field.Screenshots