Skip to content

feat(harness): redesign r2 event interactions#71

Merged
Grivn merged 7 commits into
masterfrom
feat/r2-event-interaction-redesign
Jun 28, 2026
Merged

feat(harness): redesign r2 event interactions#71
Grivn merged 7 commits into
masterfrom
feat/r2-event-interaction-redesign

Conversation

@Grivn

@Grivn Grivn commented Jun 28, 2026

Copy link
Copy Markdown
Member

Summary

  • Introduce R2 nested event payload sections across harness event packages and policy validation.
  • Expose derived presentation events for LLM-facing work, integrate, expired, and profile contexts.
  • Add short event control commands and migrate e2e, prod-sim, and GitHub mesh acceptance coverage to R2 payloads.

Validation

  • go test ./harness/...
  • bash harness/scripts/e2e.sh
  • real prod-sim acceptance: .testdata/r1-prod-sim/20260627T181134Z/report.json status ok

Grivn added 7 commits June 28, 2026 01:11
Add rule/narrative/refs payload helpers, pin event envelopes to schema v2, and move accepted/synced resource material into payload.rule so deterministic exchange remains structured.

Validation: go test ./harness/internal/event ./harness/internal/contract ./harness/internal/mnemond/state; go test ./harness/internal/mnemonhub/exchange/...; go test ./harness/internal/app; go test ./harness/cmd/mnemon-harness
Move standard and external event package payloads to explicit rule, narrative, and refs sections. External capability specs now require schema_version 2 with sectioned fields, sync import material rides payload.rule, and presentation/runtime readers understand nested items.

Update acceptance prompts and test fixtures to emit R2-shaped events; validate with go test ./harness/...
Return derived event envelopes on presentation responses for structured consumers while preserving body-only hook rendering. Derived presentation event text now lives under payload.narrative so rule and LLM payloads stay separated.

Validation: go test ./harness/...
Add control teamwork/profile commands that build rule/narrative/refs payloads and submit through the existing channel observe path. Update the embedded guide and payload contract so agents prefer the short producer surface while low-level observe remains the nested JSON API.

Validation: go test ./harness/...
Update harness shell acceptance to emit rule/narrative/refs payloads and v2 external event package specs. The sync-pair flow still covers mnemonhub HTTP exchange with standard and external importable kinds.

Validation: bash -n harness/scripts/e2e.sh; go test ./harness/...; bash harness/scripts/e2e.sh; MNEMON_GITHUB_LIVE=1 go test ./harness/internal/app -run TestGitHubLivePublishPullImport -count=1 -v against mnemon-dev/mnemon-teamwork-example.
Record accepted envelope payload-shape evidence in acceptance observe reports and assert that real collaboration acceptance surfaces use schema v2 rule/narrative/refs payloads. This keeps the R2 proof in existing hostagent/mnemond/mnemonhub and GitHub mesh reports without adding a new runtime concept.

Validation: go test ./harness/cmd/mnemon-harness; go test ./harness/...
Detect GitHub rate-limit hints already surfaced by the publication backend and pause the serving sync worker until retry_after or rate_limit_reset. This prevents GitHub mesh acceptance and runtime sync from repeatedly hammering the API after quota is exhausted.

Validation: go test ./harness/internal/app -run 'TestSyncWorker|TestSyncGitHubFake' -count=1 -v; go test ./harness/...
@Grivn Grivn merged commit 0447c7a into master Jun 28, 2026
1 check passed
@Grivn Grivn deleted the feat/r2-event-interaction-redesign branch June 28, 2026 03:26
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