Skip to content

feat: add explicit xAPI protocol binding - #7

Open
seonghobae wants to merge 8 commits into
agent/bootstrap-learning-contractsfrom
agent/xapi-protocol-binding
Open

feat: add explicit xAPI protocol binding#7
seonghobae wants to merge 8 commits into
agent/bootstrap-learning-contractsfrom
agent/xapi-protocol-binding

Conversation

@seonghobae

@seonghobae seonghobae commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

Customer outcome

Give ContextualWisdomLab learning products one reusable fail-closed contract for selecting canonical xAPI 2.0 versus explicit cmi5 Quartz/xAPI 1.0.3 compatibility, without silently rewriting historical records or moving xAPI statement truth into this shared contract repository.

Product boundary

  • stacked on bootstrap PR docs: bootstrap learning interoperability contracts #1 (agent/bootstrap-learning-contracts);
  • adds closed Draft 2020-12 cwl_xapi_protocol_binding/v1 with immutable logical identity;
  • canonical xapi_2_0 requires xAPI 2.0.0 and the adopted ISO/IEC/IEEE 39274-1-1:2025 authority;
  • cmi5_quartz requires xAPI 1.0.3, Quartz 1st Edition and pinned revision 984a9b8;
  • xAPI 2.0 bindings reject cmi5-only fields, cmi5 bindings reject xAPI 2.0 version claims, unknown surfaces fail closed, and statement payload leakage is rejected;
  • this slice is an internal CWL protocol-selection candidate only: it does not claim xAPI statement/profile conformance, cmi5 launch/package conformance, certification, runtime state, or automatic historical translation.

Test-first evidence

  • RED/spec first: 05bbb0936c4ecfb87b7400d73545722ca1137ec7 introduced the executable regression contract before the schema/fixtures existed.
  • GREEN implementation: 2bbb549f5dda58794af4979f9f15ae3f514e4249 added the schema plus two valid and four invalid fixtures.
  • CI integration: 6334e925050c562e27cee0857fb37c85ee36bea0 runs the regression suite in Learning Contracts Quality.
  • stacked-PR quality repair: b90103ecdc0f6e31edbb957d18b308d1f521d267 makes repository Quality run for feature-branch bases instead of only develop/main; the reusable trigger fix was also propagated to bootstrap PR docs: bootstrap learning interoperability contracts #1.
  • ADR/DDD/research/product-gap traceability: c3efe18ebd6f6411d5dc99efb8752dafa4e2de46.
  • parent synchronization: 64b3a8ab2445801cb24ac559bcdb0befda95e338 is a non-destructive merge commit absorbing the current bootstrap writer head instead of rebasing/force-pushing.
  • review repair: 036d2a868c8bd4cfc823183835cc1bda5259f78a removes premature standards implementation claims and explicitly records that requirement-level evidence plus terminal-success exact-head CI are still absent; the corresponding Devin thread became outdated and was resolved only after that exact-head change.

Architecture and standards discipline

ADR 0002 defines ProtocolBinding as a reusable value object in the Learning Contract Authority bounded context and an anti-corruption boundary before consumer-owned version-specific adapters. Learning Record Store/runtime repositories retain statement/session/persistence authority. Standards traceability deliberately distinguishes the internal binding candidate from full implementation/conformance. Current authoritative evidence identifies ISO/IEC/IEEE 39274-1-1:2025 as the published xAPI standard, AICC Quartz revision 984a9b8 as the cmi5 compatibility source used here, and IEEE P9274.3.1 as an active project authorization rather than an approved cmi5 standard.

Exact-head state

Current exact head: 036d2a868c8bd4cfc823183835cc1bda5259f78a.
Current base: agent/bootstrap-learning-contracts@65561221d9210884d234e52edc3e023e93d3278d.
The PR is open, Ready and mechanically mergeable after absorbing the parent update. The current repository Quality run is 33556210577; job 100017549525 is queued with no executed steps at the latest read, so no predecessor run is promoted to current-head evidence. The prior actionable review thread is resolved after the traceability claim was corrected; independent approval is still absent.

This PR remains intentionally stacked so issue #3 can advance while parent exact-head checks/review are pending. After PR #1 integrates into protected develop, this diff must be retargeted/restacked and reverified through the ordinary protected path before merge. No self-approval, bypass, force-push, or governance weakening is requested.

Partial implementation of #3.


Devin Review

@coderabbitai

coderabbitai Bot commented Sep 1, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Team

Run ID: 77c4cb9a-fce7-4720-bc16-2cc162941562

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

devin-ai-integration[bot]

This comment was marked as resolved.

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.

1 participant