Skip to content

refactor: move harness/{faults,bench} to test/manifests/{faults,bench} - #580

Merged
bdchatham merged 1 commit into
mainfrom
devin/1790781574-test-manifests
Sep 30, 2026
Merged

bdchatham merged 1 commit into
mainfrom
devin/1790781574-test-manifests

Conversation

@bdchatham

Copy link
Copy Markdown
Collaborator

Summary

harness/ at the repo root held only the Chaos-Mesh fault catalog and the seiload Job renderer. It isn't a harness, and nothing in the controller runtime uses it. Its consumers are the nightly integration suite and seictl chaos|bench render. This PR moves it next to the suite that uses it:

harness/faults  -> test/manifests/faults   (package faults)
harness/bench   -> test/manifests/bench    (package bench)
harness/README.md -> test/manifests/README.md
  • This is a pure git mv. Package names, exported API (faults.Catalog, Fault.Render, bench.Render) and the rendered bytes are all unchanged.
  • The .dockerignore re-include changes from !harness/**/*.tmpl to !test/manifests/**/*.tmpl. Without it, the integration-harness image build fails on the //go:embed templates.
  • The sei.io/harness-run label is a runtime contract with the suite, the SDK and seictl, so it stays as is.

seictl: its go.mod pins the controller at badf30d (the commit that added harness/), so this PR doesn't break it. When seictl next bumps the pin, its imports in chaos/cmd.go, bench/cmd.go and mcp/server.go need to change from .../harness/{faults,bench} to .../test/manifests/{faults,bench}.

Link to Devin session: https://app.devin.ai/sessions/529b10a4cbc7445895aa6189f10b28f7
Open in Devin Desktop: https://app.devin.ai/desktop/session/529b10a4cbc7445895aa6189f10b28f7?variant=devin
Requested by: @bdchatham

Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
@devin-ai-integration

Copy link
Copy Markdown
Contributor

I'll fix CI failures and address comments from users with write access. I'll skip comments containing "(aside)".

  • Disable automatic comment, CI, and merge conflict monitoring

@cursor

cursor Bot commented Sep 30, 2026 •

Copy link
Copy Markdown

PR Summary

Low Risk
Path-only relocation with import and dockerignore updates; no runtime or API behavior changes in this repository.

Overview
Relocates the shared Chaos-Mesh fault catalog and seiload Job manifest renderers from repo-root harness/{faults,bench} to test/manifests/{faults,bench} so they sit next to the integration suite that imports them. Package names and exported APIs (faults.Catalog, Fault.Render, bench.Render) are unchanged; integration tests only update import paths.

.dockerignore re-includes embedded templates at !test/manifests/**/*.tmpl instead of !harness/**/*.tmpl so the integration harness image build still satisfies //go:embed. The moved README is retitled to manifests. Downstream seictl must update imports on its next controller pin bump; it is not changed in this PR.

Reviewed by Cursor Bugbot for commit e55349e. Bugbot is set up for automated code reviews on this repo. Configure here.

@seidroid seidroid Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

This PR moves the fault catalog and seiload Job renderer from harness/{faults,bench} to test/manifests/{faults,bench} using a pure rename, and updates the integration-suite imports and the .dockerignore re-include for the embedded templates to match. Nothing in the tree still points at the old paths and the embed re-include follows the move, so nothing blocks; I kept codex's import-path point as a non-blocking note, since the PR description already covers seictl's migration.

Non-blocking

  • No shim is left at harness/{faults,bench}, so any external importer stops compiling at the old paths when it bumps its pin (raised by codex). seictl is safe for now because it pins badf30d, but the chaos/cmd.go, bench/cmd.go and mcp/server.go import changes the description lists need to land in the same seictl change as the pin bump.

seidroid review · decision approve · session 0ea8b1c14bab443abf96d27e47ac53c3 · turn resp_claude_4dbf64b036fec91c8da45b150e672d1a · item 3861213f9ab45a59b7a62ea48dddb6f4

Findings: 0 blocking | 1 non-blocking | 0 posted inline

@bdchatham
bdchatham merged commit a6d5bd6 into main Sep 30, 2026
15 checks passed
bdchatham added a commit to sei-protocol/seictl that referenced this pull request Sep 30, 2026
…manifests (#262)

## Summary

sei-protocol/sei-k8s-controller#580 moved the
fault catalog and the seiload Job renderer from `harness/{faults,bench}`
to `test/manifests/{faults,bench}`. The package names and API didn't
change. This PR bumps the controller pin to that merge commit and
rewrites the imports in `chaos/`, `bench/` and `mcp/server.go`:

```
- github.com/sei-protocol/sei-k8s-controller/harness/{faults,bench}
+ github.com/sei-protocol/sei-k8s-controller/test/manifests/{faults,bench}
```

The pin moves from `badf30d` to `a6d5bd6`, which also brings in the
controller commits merged in between. `go build`, `go vet` and `go test
./...` all pass. `sidecarapi` stays on its own `replace` pin.

Link to Devin session:
https://app.devin.ai/sessions/529b10a4cbc7445895aa6189f10b28f7
Open in Devin Desktop:
https://app.devin.ai/desktop/session/529b10a4cbc7445895aa6189f10b28f7?variant=devin
Requested by: @bdchatham

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
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