Rename Behavior entity to Requirement across the SDK - #7
Merged
Conversation
Aligns the Java SDK with the main rhesis platform rename (rhesis-ai/rhesis#2487). The Behavior entity, API endpoints, JSON field names, stats modes, synthesizer config, and Jinja templates are all updated from behavior/behaviors to requirement/requirements. Entity values (Reliability, Robustness, Compliance) are intentionally unchanged. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Harry Cruz <harry@rhesis.ai>
harry-rhesis
force-pushed
the
chore/rename-behavior-to-requirement
branch
from
August 25, 2026 14:31
140f15a to
e41f187
Compare
Replace external API secrets with a self-contained CI setup that runs postgres, redis, and the rhesis backend (GHCR image) locally. Uses QUICK_START=true to auto-provision a test org and API token. Split into parallel unit-test, integration-test, and lint jobs. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Harry Cruz <harry@rhesis.ai>
Add docker-compose.test.yml that spins up postgres, redis, and the rhesis backend (GHCR image) with QUICK_START=true for integration tests. Mirrors the pattern from rhesis-ai/rhesis tests/ directory. Replaces the broken --network host approach with proper compose networking. Add docker-up/down/clean targets to Makefile. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Harry Cruz <harry@rhesis.ai>
The Alembic migration requires a valid 32-byte base64-encoded Fernet key, not a plain string. Use the same test key from rhesis-ai/rhesis. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Harry Cruz <harry@rhesis.ai>
Replace removed /test_runs/stats and /test_results/stats endpoints with the Insights API (/insights/), matching the Python SDK. The stats() methods now throw UnsupportedOperationException with migration guidance. Also seeds project scope on the QUICK_START token so integration tests for project-scoped entities (endpoints) work correctly. Signed-off-by: Harry Cruz <harry@rhesis.ai> Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Harry Cruz <harry@rhesis.ai>
The backend uses singular table names (token, project) not plural. Signed-off-by: Harry Cruz <harry@rhesis.ai> Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Harry Cruz <harry@rhesis.ai>
Add InsightsQuery builder matching the Python SDK's Insights model, supporting months, start_date, and end_date parameters. Existing convenience methods delegate to the query-based overloads. Signed-off-by: Harry Cruz <harry@rhesis.ai> Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Harry Cruz <harry@rhesis.ai>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Behaviorentity toRequirementacross the entire Java SDK to align with the main platform rename (rhesis-ai/rhesis#2487)/behaviors→/requirements), JSON field names (behavior→requirement), stats modes, synthesizer config, Jinja templates, tests, and documentationTest plan
🤖 Generated with Claude Code