Skip to content

Add Actions-first failure capsules#72

Merged
steipete merged 9 commits into
openclaw:mainfrom
zozo123:capsule-actions-mvp
May 16, 2026
Merged

Add Actions-first failure capsules#72
steipete merged 9 commits into
openclaw:mainfrom
zozo123:capsule-actions-mvp

Conversation

@zozo123
Copy link
Copy Markdown
Contributor

@zozo123 zozo123 commented May 10, 2026

Summary

  • Add a local-first crabbox capsule command group for capturing GitHub Actions failures into capsule.yaml manifests.
  • Replay capsules through the existing crabbox run path, with inspect/promote helpers and bounded local evidence.
  • Document the Actions-first capsule contract without adding worker, registry, RL, emulator, or hardware scope.

Test plan

  • go test ./...
  • npm run docs:check
  • Captured 10 recent failed openclaw/crabbox Actions runs into local capsule directories.

zozo123 and others added 2 commits May 10, 2026 11:42
Capture failed GitHub Actions runs into local replay manifests and replay them through the existing Crabbox run path, keeping the first capsule slice small while leaving room for future replay classes.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
@zozo123
Copy link
Copy Markdown
Contributor Author

zozo123 commented May 10, 2026

E2E smoke coverage for this PR:

  • Captured and inspected a real failed GitHub Actions run from openclaw/openclaw (25624967663) into a local capsule. Verified repo/run metadata, failed job/step, bounded logs/failed.log, and sha256: log digest.
  • Exercised signature-aware replay classification with a local fake delegated provider: matching signature recorded fail_reproduced; mismatched signature recorded fail_new and returned nonzero.
  • Verified strict --job handling: a nonexistent job now fails clearly instead of silently capturing the wrong job.

Validation already passed:

  • go test ./internal/cli
  • go test ./...
  • npm run docs:check

Residual risk: the replay smoke avoided paid/remote sandbox cost. It proves the capsule capture, manifest, replay classification, and delegated-provider error parsing paths, but not real provider networking.

zozo123 and others added 7 commits May 11, 2026 10:58
Co-authored-by: Cursor <cursoragent@cursor.com>
Only require signature matching when capture found a concrete log-derived signature; otherwise classify any nonzero replay as reproduced, matching the documented v1 contract.

Co-authored-by: Cursor <cursoragent@cursor.com>
# Conflicts:
#	docs/cli.md
#	docs/commands/README.md
#	docs/features/README.md
#	docs/source-map.md
#	internal/cli/app.go
#	internal/cli/cli_kong.go
@steipete steipete merged commit ed4498d into openclaw:main May 16, 2026
6 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