Skip to content

RFC-0009: Add implementation details and drop provenance - #53

Open
mprahl wants to merge 2 commits into
mlflow:mainfrom
mprahl:add-implementation-0009
Open

mprahl wants to merge 2 commits into
mlflow:mainfrom
mprahl:add-implementation-0009

Conversation

@mprahl

@mprahl mprahl commented Sep 18, 2026

Copy link
Copy Markdown
Collaborator

This defines trace and span link storage, ingestion and search behavior, and the initial integration scope. It also aligns pull and digest semantics with RFC-0008.

Provenance is dropped because all values are client asserted, so they cannot be used to weigh trust and would add unnecessary complexity.

This defines trace and span link storage, ingestion and search
behavior, and the initial integration scope. It also aligns pull and
digest semantics with RFC-0008.

Provenance is dropped because all values are client asserted, so they
cannot be used to weigh trust and would add unnecessary complexity.

Signed-off-by: mprahl <mprahl@users.noreply.github.com>
@mprahl
mprahl force-pushed the add-implementation-0009 branch from e26fe75 to f2e96ae Compare September 18, 2026 18:14
Comment thread rfcs/0009-skill-tracing/0009-skill-tracing.md
Comment on lines +514 to +515
skill_workspace VARCHAR(63) NOT NULL,
skill_organization VARCHAR(64) NOT NULL DEFAULT '',

@B-Step62 B-Step62 Sep 18, 2026

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.

Do we have downstream use case for querying traces with extra metadata like organization/workspace/role/digest? For example, I don't imagine ppl ask "I want to know all traces that uses whichever skills in my org", and even if there is few ppl want that, it's possible to do through join as we don't need great performance for niche use cases. Since there can be millions of traces that refers to a single same skill, denormalizing them feels like unnecessary storage cost.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Organization and workspace are required to uniquely identify the skill version linked to the trace.

Role is not intended for querying. It explains why the span was linked: either the framework activated the skill or the span used it. This information is displayed in the UI.

Digest allows querying traces for the same skill content regardless of how it was packaged. When a packaged agent plugin is re-imported, RFC-0008 creates a new skill version for every discovered member, even when its content is unchanged, so each version retains its package-derived source. If only one of two bundled skills changed, the unchanged skill’s new version shares the previous version’s digest. That digest lets a user query traces for the same content across both agent plugin versions.

@B-Step62 B-Step62 Sep 19, 2026

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.

Organization and workspace are required to uniquely identify the skill version linked to the trace.

Ah right, sorry I was under the mental model that skill version has an unique ID.

That digest lets a user query traces for the same content across both agent plugin versions.

Hmm not convinced why would users want to do that, and even if so, they can search traces for multiple skill versions and join them, unless a single skill is shared across tens of plugins (which I think is extreme niche case)?

Comment thread rfcs/0009-skill-tracing/0009-skill-tracing.md Outdated
Signed-off-by: mprahl <mprahl@users.noreply.github.com>
@mprahl
mprahl requested a review from B-Step62 September 18, 2026 20:45
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