Skip to content

feat(labels): sync user labels via reconcile#76

Merged
TrevorBasinger merged 5 commits into
mainfrom
tb/label-sync-reconcile
Apr 29, 2026
Merged

feat(labels): sync user labels via reconcile#76
TrevorBasinger merged 5 commits into
mainfrom
tb/label-sync-reconcile

Conversation

@TrevorBasinger
Copy link
Copy Markdown
Member

Adds roar label sync using GLaaS label reconciliation and fixes the remote lineage identity used during sync.

Summary:

  • Adds GlaasClient.reconcile_labels() for POST /api/v1/labels/reconcile.
  • Implements roar label sync for the active/current local lineage and explicit label targets.
  • Requires authentication for user-facing sync.
  • Falls back to authenticated public-lineage sync when no repo binding exists.
  • Sends artifact labels with session_hash + artifact_hash.
  • Strips reserved/system labels before user-label sync.
  • Persists finalized GLaaS publication mapping after registration:
    • finalized remote session hash
    • prepared/canonical session hash
    • local job UID → remote job UID map
  • Uses persisted publication mapping for later roar label sync.
  • Shows a clear local error when syncing an unpublished lineage.
  • Preserves real GLaaS 404 Session not found errors instead of misreporting them as missing endpoint support.

@TrevorBasinger TrevorBasinger marked this pull request as ready for review April 28, 2026 20:56
Copy link
Copy Markdown
Member

@christophergeyer christophergeyer left a comment

Choose a reason for hiding this comment

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

👍 👍
🚢 it!

@TrevorBasinger TrevorBasinger merged commit cbce00e into main Apr 29, 2026
12 checks passed
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