Skip to content

spec: metadata.trimmed and metadata.sanitized provenance markers#54

Open
kgilpin wants to merge 1 commit into
masterfrom
feat/trim-sanitize-metadata
Open

spec: metadata.trimmed and metadata.sanitized provenance markers#54
kgilpin wants to merge 1 commit into
masterfrom
feat/trim-sanitize-metadata

Conversation

@kgilpin

@kgilpin kgilpin commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Optional metadata written by the AppMap CLI's trim and sanitize commands, recording what was applied to the file: the tool version plus the truncation cap (trim) or the verbatim-allowed values (sanitize). Both operations are one-way, so repeated runs record what still holds: the smallest cap, and the allowlist intersection.

Optional metadata written by the AppMap CLI's trim and sanitize
commands, recording what was applied to the file: the tool version plus
the truncation cap (trim) or the verbatim-allowed values (sanitize).
Both operations are one-way, so repeated runs record what still holds:
the smallest cap, and the allowlist intersection.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@kgilpin kgilpin requested a review from dividedmind July 9, 2026 13:25
Comment thread README.md
* **max_length** *Required* maximum captured-value string length the file was truncated to.
* **sanitized** *Optional* provenance of value masking applied to this file (the AppMap CLI's `sanitize` command). Every captured value string has been replaced with an equality-preserving token; masking is one-way, and after repeated runs `allow_values` records the intersection of the allowlists applied.
* **version** *Required* version of the tool that sanitized the file.
* **allow_values** *Required* values kept verbatim (exact whole-value matches), beyond the tool's built-in enumerable values (`true`, `false`, `null`, etc).

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.

I wonder, how is this field useful? If we see a value then obviously it was excluded.

Also, if we do have this field, shouldn't we include all the values (including built-in) so the file is self-contained and can be interpreted without hunting down the source code for a particular version?

@kgilpin

kgilpin commented Jul 9, 2026 via email

Copy link
Copy Markdown
Contributor Author

@dividedmind

Copy link
Copy Markdown
Contributor

I think it’s good for provenance.

Yeah, but isn't it just noise? Up to you I suppose, I don't have a strong opinion.

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.

2 participants