Adopt agents constitution#1011
Conversation
|
The following are automatically added/executed:
Available user actions:
Supported labels{'/wip', '/verified', '/lgtm', '/hold', '/build-push-pr-image', '/cherry-pick'} |
dd59d2e to
457b46e
Compare
📝 WalkthroughWalkthroughReplaces Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. 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. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Fix all issues with AI agents
In @CONSTITUTION.md:
- Line 117: Line "AI tools MUST be guided by AGENTS.md (symlink to CLAUDE.md if
needed)" is ambiguous because CLAUDE.md is optional; update CONSTITUTION.md to
clarify that CLAUDE.md is an optional symlink for proprietary tools that do not
support the AGENTS.md format (e.g., Claude Code, Qwen Code, Gemini Code) or add
a cross-reference to DEVELOPER_GUIDE.md which explains this setup; mention
CLAUDE.md, AGENTS.md and DEVELOPER_GUIDE.md by name so readers know where to
look.
- Around line 86-108: Update the "Test Markers" list in the Test Development
Standards section so the component markers match pytest.ini: replace the
incorrect markers `model_serving` and `model_registry` with
`model_explainability` and `rag`, keeping the rest of the markers (e.g.,
`llama_stack`, tier markers, infrastructure markers) unchanged; ensure the list
now includes `model_explainability`, `llama_stack`, and `rag` as the component
markers.
🧹 Nitpick comments (2)
AGENTS.md (2)
34-44: Consider adding language specifier to fenced code block.The ASCII tree would benefit from a language specifier (e.g.,
text`orplaintext`) for proper rendering, though this is a minor presentation issue.📝 Proposed fix
-``` +```text tests/ # Test modules by component ├── conftest.py # Shared fixtures (session/class scope)
55-55: Reconsider line-specific references.Referencing specific line numbers (
tests/conftest.py:544-550) creates a maintenance burden, as these references become outdated when the file changes. Consider either:
- Referencing the function/fixture name instead (e.g., "see
storage_secretfixture intests/conftest.py")- Linking to a dedicated example file that won't change
- Accepting that this will require periodic updates
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
AGENTS.mdCONSTITUTION.md
🧰 Additional context used
🪛 LanguageTool
AGENTS.md
[style] ~6-~6: Consider a different adjective to strengthen your wording.
Context: ... other engineers can understand without deep domain knowledge. ## Commands ### Val...
(DEEP_PROFOUND)
🪛 markdownlint-cli2 (0.18.1)
AGENTS.md
34-34: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
🔇 Additional comments (8)
AGENTS.md (5)
1-7: Clear introduction and scope.The overview effectively establishes context and sets expectations for QE engineers and AI assistants.
64-69: Practical guidance on common issues.The pitfalls section provides valuable guidance, particularly the distinction between ERROR and FAILED, and the approach to handling flaky tests.
93-98: All referenced documentation files exist at their specified paths. No action required.
71-91: Well-defined boundaries for code contributions.The three-tier boundary system (Always/Ask First/Never) provides clear guidance for contributors and AI assistants. The restrictions align well with project governance principles.
11-30: Theuv run pytestcommand pattern in AGENTS.md is correct and aligns with the project's test execution approach. The project is configured to useuvas indicated by[tool.uv.sources]inpyproject.tomland the tox configuration that explicitly includesuvas a dependency withuv run pytestcommands.Likely an incorrect or invalid review comment.
CONSTITUTION.md (3)
5-85: Comprehensive and well-rationalized core principles.The seven principles establish a clear governance framework with explicit rationales. They align well with the boundaries defined in AGENTS.md (lines 71-91) and provide strong guidance for both human and AI-assisted development.
109-134: Robust AI-assisted development framework.Beyond the CLAUDE.md clarification needed, the AI development guidelines establish clear responsibilities and rules. The specification-driven development requirements (YAML/JSON schemas, requirement traceability, Given-When-Then patterns) provide structure for automated test generation.
135-168: Well-defined governance procedures.The governance framework establishes clear authority, amendment processes, versioning policies, and compliance requirements. The two-maintainer review requirement and semantic versioning approach are appropriate for a governance document. The reference hierarchy (AGENTS.md, DEVELOPER_GUIDE.md, STYLE_GUIDE.md) is consistent with the links in AGENTS.md.
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Fix all issues with AI agents
In @AGENTS.md:
- Around line 34-44: The fenced "Project Structure" markdown block is missing a
language tag causing markdownlint MD040; update the Project Structure fenced
code block by adding a language identifier (e.g., "text") after the opening
backticks so the block becomes ```text, ensuring the structure example renders
and satisfies the linter requirement for the Project Structure code fence.
In @CONSTITUTION.md:
- Around line 75-83: The "Never filter, log, or expose sensitive information
(secrets, tokens, credentials)" line under "VII. Security Awareness" is
ambiguous; change the wording to clearly prohibit logging/exposing secrets and
require redaction when printing is unavoidable—e.g., rephrase the bullet to:
"Never log or expose sensitive information (secrets, tokens, credentials); if
printing is unavoidable, redact or mask secrets." Update the exact bullet text
in the "VII. Security Awareness" section to this clearer phrasing.
🧹 Nitpick comments (3)
CONSTITUTION.md (2)
24-27: Reconsider “import specific functions rather than modules” as a blanket rule.
For shared utilities, importing the module often avoids name collisions and keeps call sites searchable (module.fn). If you want a hard rule, consider narrowing it to “avoid wildcard imports; prefer explicit imports that preserve clarity.”
154-160: Confirm the “two reviewers + verified label required” policy is actually enforceable in this repo.
If branch protection / required labels aren’t configured, this is aspirational (fine), but then it should be phrased as “project policy” vs “must pass CI gate”.AGENTS.md (1)
55-56: Avoid brittle “file:line-line” references; prefer symbol/fixture names or a permalink.
Line numbers will drift quickly; referencing the fixture/context-manager pattern by fixture name (or a GitHub permalink) will age better.
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
AGENTS.mdCONSTITUTION.md
🧰 Additional context used
🪛 LanguageTool
AGENTS.md
[style] ~6-~6: Consider a different adjective to strengthen your wording.
Context: ... other engineers can understand without deep domain knowledge. ## Commands ### Val...
(DEEP_PROFOUND)
🪛 markdownlint-cli2 (0.18.1)
AGENTS.md
34-34: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
🔇 Additional comments (3)
CONSTITUTION.md (2)
41-50: Clarify the conftest.py rule — it may need an exception or scope adjustment.The rule "Conftest.py files MUST contain fixtures only; no utility functions or constants" may contradict current practice if the repo already uses conftest for shared constants or helpers. Either verify that all conftest files comply, or update the rule to allow module-level constants in conftest and restrict the limitation to business-logic utilities (move those to a dedicated
utilities/module instead).
18-27: Toolchain verification confirms ruff, mypy, and flake8 are all present and enforced.The repository's pre-commit hooks and pyproject.toml configuration do enforce all three tools (ruff v0.14.10, flake8 v7.3.0, mypy v1.19.1). However, clarify that mypy is configured with individual strict flags (disallow_any_generics, disallow_incomplete_defs, disallow_untyped_defs, etc.) rather than the
strict = truemode; the practical strictness is comparable but not identical. The statement "mypy strict mode is enforced" in line 23 is slightly imprecise.AGENTS.md (1)
20-30: No changes needed. Theuv run pytestinvocation is the project-standard across all documentation (GETTING_STARTED.md, UPGRADE.md), workflows, and tox.ini. The AGENTS.md section correctly follows the established convention.Likely an incorrect or invalid review comment.
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (3)
CONSTITUTION.md (3)
48-48: Consider allowing fixture-related constants in conftest.py.Line 48 states conftest.py files MUST contain fixtures only. While this promotes clarity, it may be overly restrictive if fixture-related constants or small helper types are needed. Consider allowing fixture-supporting constructs while still prohibiting general utility functions.
</parameter_end>
117-117: Clarify the CLAUDE.md reference.Line 117 mentions "symlink to CLAUDE.md if needed" without prior context. If CLAUDE.md is an alternative name for AGENTS.md in some workflows, consider adding a brief explanation. Otherwise, this reference may confuse contributors.
</parameter_end>
58-58: Clarify the class_generator reference.Line 58 mentions "generate them using class_generator" without further explanation. Consider adding a reference or brief explanation of what class_generator is (e.g., a tool in openshift-python-wrapper, a script in the repo, etc.) to help new contributors understand this guidance.
</parameter_end>
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
CONSTITUTION.md
🔇 Additional comments (4)
CONSTITUTION.md (4)
1-168: Strong governance foundation with clear principles.The constitution provides a comprehensive and well-structured governance framework. The seven core principles are clearly articulated with rationales, and the inclusion of AI-assisted development guidelines is forward-thinking. The versioning policy and amendment process ensure the document can evolve appropriately.
A few verification scripts have been provided to confirm that referenced files and external resources are accessible and properly configured.
</parameter_end>
22-23: Verify external URLs and pre-commit tool configuration.The constitution references external resources and tools that have been confirmed as accessible and properly configured:
- Google Python Style Guide (line 22): ✓ HTTP 200
- openshift-python-wrapper repository (line 57): ✓ HTTP 200
- Pre-commit hooks (lines 23, 81): All configured in .pre-commit-config.yaml:
- ruff ✓
- mypy ✓
- flake8 ✓
- detect-secrets ✓
- gitleaks ✓
All external resources are accessible and properly integrated into the project's pre-commit configuration.
97-100: All required pytest.ini markers are properly defined.The pytest.ini file contains all referenced tier markers (smoke, sanity, tier1, tier2), component markers (model_explainability, llama_stack, rag), and infrastructure markers (gpu, parallel, slow) with appropriate descriptions.
164-166: All referenced documentation files in lines 164-166 exist and are properly accessible:
- AGENTS.md ✓
- docs/DEVELOPER_GUIDE.md ✓
- docs/STYLE_GUIDE.md ✓
Additionally, all pre-commit tools mentioned in the document (ruff, mypy, flake8, detect-secrets, gitleaks) are configured in .pre-commit-config.yaml. No action required.
Likely an incorrect or invalid review comment.
15ba34e to
512646a
Compare
There was a problem hiding this comment.
Actionable comments posted: 4
🤖 Fix all issues with AI agents
In @CONSTITUTION.md:
- Around line 30-37: The "III. Test Independence" section is ambiguous because
it simultaneously allows test dependencies and encourages pytest-dependency;
update this section to be explicit: either rename the heading to "III. Test
Clarity and Dependencies" and adjust bullets to accept declared dependencies
(keep the pytest-dependency note and add rules for when to use it), or keep the
"Test Independence" title and change the bullets to state dependencies are
exceptions only (remove encouragement of pytest-dependency as normal practice
and add explicit criteria for allowed exceptions and a requirement to document
and justify each dependency). Ensure the chosen change updates the heading "III.
Test Independence", the second bullet about purpose/docstrings, and the third
bullet mentioning pytest-dependency so the wording consistently reflects the new
policy.
- Around line 147-149: Replace the contradictory sentence "No versioning policy
is enforced" with a single clear policy that aligns with the existing "All
amendments MUST update version and date" requirement and the explicit "Version:
1.0.0" metadata: state that the document uses semantic versioning
(MAJOR.MINOR.PATCH), require that any amendment updates the Version and Date
fields and include a short changelog entry, and describe when to increment
MAJOR, MINOR, or PATCH; ensure the text references the existing "Version: 1.0.0"
metadata and the amendment requirement so both remain consistent.
- Around line 22-27: The [tool.mypy] config in pyproject.toml does not set
strict mode even though the constitution requires it; update the pyproject.toml
[tool.mypy] section to include strict = true (and optionally remove or keep the
existing individual strict flags like
disallow_untyped_defs/disallow_incomplete_defs as desired) so mypy runs with the
canonical strict profile as mandated.
🧹 Nitpick comments (3)
CONSTITUTION.md (3)
86-92: Reconsider the restrictive comment policy.Line 91 states "Comments are allowed only for complex code blocks (e.g., complex regex)". This is overly restrictive and may discourage valuable inline documentation such as explaining non-obvious decisions, documenting workarounds, referencing related issues, or clarifying intent when the code alone isn't sufficient.
Consider revising to: "Use comments judiciously to explain why rather than what, particularly for non-obvious decisions or workarounds."
125-132: Clarify scope of traceability requirement.Line 129 states "Tests MUST include requirement traceability (Polarion, Jira markers)" as an absolute requirement. While this makes sense for specification-driven feature tests, it may be overly strict for exploratory tests, quick regression checks, or infrastructure tests.
Consider softening to: "Feature tests SHOULD include requirement traceability" or explicitly stating this applies to spec-driven tests only.
39-48: Consider if conftest.py restriction is too rigid.Line 46 mandates "Conftest.py files MUST contain fixtures only; no utility functions or constants." While this promotes separation of concerns, there may be legitimate cases where small helper functions tightly coupled to fixture logic (e.g., fixture-specific validators, cleanup helpers) could reasonably live in conftest.py.
Consider whether the policy should allow for narrowly-scoped helpers that serve fixtures only, or if the strict separation is a deliberate architectural decision.
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
CONSTITUTION.md
🔇 Additional comments (2)
CONSTITUTION.md (2)
158-163: All referenced documentation files exist.The files AGENTS.md, docs/DEVELOPER_GUIDE.md, and docs/STYLE_GUIDE.md are all present and correctly referenced in the CONSTITUTION.md links.
51-61: openshift-python-wrapper is properly declared as a project dependency.The CONSTITUTION.md mandate to use openshift-python-wrapper for all K8s API calls (line 55) is backed by the project's dependency declaration in pyproject.toml with version constraint
>=11.0.99.
dbasunag
left a comment
There was a problem hiding this comment.
One last minor comment, but I like this approach.
512646a to
9281698
Compare
There was a problem hiding this comment.
Actionable comments posted: 2
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
AGENTS.mdCONSTITUTION.md
🧰 Additional context used
🪛 LanguageTool
AGENTS.md
[style] ~6-~6: Consider a different adjective to strengthen your wording.
Context: ... other engineers can understand without deep domain knowledge. ## Commands ### Val...
(DEEP_PROFOUND)
🔇 Additional comments (12)
AGENTS.md (7)
1-7: LGTM! Clear context and role definition.The overview effectively establishes the purpose and sets expectations for the target audience (QE engineers writing maintainable pytest tests).
8-30: LGTM! Practical executable examples.The command examples are well-organized and provide clear guidance for both validation workflows and test execution scenarios.
32-45: LGTM! Clear project layout visualization.The directory structure provides a helpful overview of the project organization and naming conventions.
65-70: LGTM! Practical pitfall guidance.The common pitfalls section provides valuable advice, especially around ERROR vs FAILED distinction and flaky test handling.
72-92: LGTM! Clear actionable boundaries.The three-tier boundary structure (Always/Ask First/Never) provides excellent guidance for both AI assistants and human developers.
94-98: All referenced documentation files exist at the specified paths. No issues found.
47-63: Verify referenced file paths and line numbers.The guidance references specific files and line ranges as examples. Ensure these references are accurate and the content at those locations matches the stated purpose.
CONSTITUTION.md (5)
1-4: LGTM! Clear constitutional authority.The introduction effectively establishes the document's scope and authority, with notable inclusion of AI-assisted development.
7-28: LGTM! Strong foundational principles.Principles I and II establish clear standards for simplicity and consistency, with appropriate rationale. The references to Google Style Guide and pre-commit tools align with industry best practices.
63-82: LGTM! Strong principles for locality and security.Principles VI and VII provide important guidance on code organization and security practices, with appropriate rationale for a testing context.
84-106: LGTM! Clear and actionable test standards.The test development standards provide comprehensive guidance on documentation, markers, and organization. The three-tier marker system (tier/component/infrastructure) is well-designed for test filtering.
107-132: LGTM! Thoughtful AI-assisted development guidance.The AI guidelines appropriately emphasize developer responsibility while providing clear rules for AI code generation. The specification-driven development section adds valuable structure for requirement traceability.
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Fix all issues with AI agents
In @CONSTITUTION.md:
- Around line 145-146: The document currently contradicts itself by stating "No
versioning policy is enforced" while also including explicit footer metadata
("Version: 1.0.0, Ratified: 2026-01-08, Last Amended: 2026-01-08"); decide on
one approach and make the text consistent: either change the policy line to
state that semantic versioning (or the chosen scheme) is enforced and add a
brief rule for updating the Version/Last Amended metadata to match that scheme,
or remove the footer metadata entirely so the "No versioning policy is enforced"
statement is accurate—update the sentence around the current "No versioning
policy is enforced" text and/or remove the footer block to reflect the chosen
option.
- Line 114: Clarify the parenthetical in the CONSTITUTION.md line "AI tools MUST
be guided by AGENTS.md (symlink to CLAUDE.md if needed)" by making the purpose
explicit: update the parenthetical to explain it's a compatibility workaround
for proprietary AI tools that require the CLAUDE.md filename (e.g., "symlink to
CLAUDE.md for compatibility with proprietary tools like Claude Code, Qwen Code,
Gemini Code; see DEVELOPER_GUIDE.md for details"), or if you prefer, remove the
parenthetical and add a short footnote or pointer to DEVELOPER_GUIDE.md; edit
the AGENTS.md / CLAUDE.md reference accordingly so readers immediately
understand why CLAUDE.md is mentioned.
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
AGENTS.mdCONSTITUTION.md
🧰 Additional context used
🪛 LanguageTool
AGENTS.md
[style] ~6-~6: Consider a different adjective to strengthen your wording.
Context: ... other engineers can understand without deep domain knowledge. ## Commands ### Val...
(DEEP_PROFOUND)
🔇 Additional comments (5)
CONSTITUTION.md (2)
1-162: Excellent governance framework established.This constitution provides a comprehensive, well-structured governance framework with clear principles, actionable guidelines, and proper cross-references. The seven core principles (Simplicity First, Code Consistency, Test Clarity, Fixture Discipline, Kubernetes API First, Locality of Behavior, Security Awareness) are well-articulated and justified. The AI-assisted development guidelines and specification-driven development patterns are particularly valuable for maintaining consistency in AI-generated code.
The document successfully addresses the objectives from issue #1010 by establishing non-negotiable principles, providing governance mechanics, and creating clear boundaries for both human and AI contributors.
158-160: All referenced documentation files exist at their specified paths.The files AGENTS.md, docs/DEVELOPER_GUIDE.md, and docs/STYLE_GUIDE.md are present, ensuring no broken links.
AGENTS.md (3)
96-97: The documentation files referenced in AGENTS.md at lines 96-97 are correctly located. Bothdocs/DEVELOPER_GUIDE.mdanddocs/STYLE_GUIDE.mdexist at the specified paths.
48-48: Bad reference: cited test file lacks docstrings.The referenced
tests/cluster_health/test_cluster_health.pydoes not contain docstrings in its test functions, contradicting the rule that "every test MUST have a docstring explaining what it tests." Use a different example file or update this reference file to demonstrate the required pattern.Likely an incorrect or invalid review comment.
54-54: Line range reference is accurate and demonstrates the context manager pattern correctly.The reference to
tests/conftest.py:544-550is correct. Lines 544-550 show a proper context manager pattern usingwith create_ns(...) as ns:to handle resource lifecycle management in a pytest fixture. The pattern demonstrates resource acquisition and cleanup through the context manager, exactly as intended.
|
/lgtm |
Establishes foundational governance framework with 7 core principles: - Simplicity First, Code Consistency, Test Independence - Fixture Discipline, Kubernetes API First - Locality of Behavior, Security Awareness Includes Test Development Standards, AI-Assisted Development Guidelines, and Governance procedures. Derived from AGENTS.md and DEVELOPER_GUIDE.md patterns. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Signed-off-by: Kamesh Akella <kakella@redhat.com>
Signed-off-by: Kamesh Akella <kakella@redhat.com>
Signed-off-by: Kamesh Akella <kakella@redhat.com>
Signed-off-by: Kamesh Akella <kakella@redhat.com>
Signed-off-by: Kamesh Akella <kakella@redhat.com>
f545fb3 to
a880403
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
♻️ Duplicate comments (1)
CONSTITUTION.md (1)
145-146: Resolve the versioning policy contradiction.Lines 145-146 state "No versioning policy is enforced," but line 162 includes explicit version metadata ("Version: 1.0.0 | Ratified: 2026-01-08 | Last Amended: 2026-01-08"). This contradiction remains unresolved from previous reviews and undermines the governance clarity of the document.
Choose one of these resolutions:
Option 1: Establish a versioning policy (recommended)
### Versioning Policy -No versioning policy is enforced. +This constitution uses semantic versioning (MAJOR.MINOR.PATCH): +- MAJOR: Breaking changes (principle removal/redefinition) +- MINOR: New principles or significant clarifications +- PATCH: Editorial corrections or minor wording improvements +- All amendments MUST update the version and date metadata belowOption 2: Remove version metadata if no versioning is intended
-**Version**: 1.0.0 | **Ratified**: 2026-01-08 | **Last Amended**: 2026-01-08 +**Ratified**: 2026-01-08 | **Last Amended**: 2026-01-08
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (2)
AGENTS.mdCONSTITUTION.md
🧰 Additional context used
🪛 LanguageTool
AGENTS.md
[style] ~6-~6: Consider a different adjective to strengthen your wording.
Context: ... other engineers can understand without deep domain knowledge. ## Commands ### Val...
(DEEP_PROFOUND)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: tox-tests
🔇 Additional comments (4)
AGENTS.md (3)
34-43: I need the review comment you would like me to rewrite. Please provide:
- The review comment text (within
<review_comment>tags)- The code file(s) being reviewed
- Any relevant context about the change
Once you provide these details, I will verify the concerns and generate a rewritten review comment in the required format.
95-97: All referenced documentation files are properly in place.The three documentation links in the AGENTS.md file (lines 95-97) correctly reference existing files: CONSTITUTION.md, docs/DEVELOPER_GUIDE.md, and docs/STYLE_GUIDE.md.
54-54: Reference is accurate.The documentation correctly references
tests/conftest.py:544-550as a context manager pattern example. Theminio_namespacefixture at those lines properly demonstrates resource lifecycle management usingwithandyieldfor setup/teardown. No changes needed.CONSTITUTION.md (1)
96-98: Component markers in CONSTITUTION.md (model_explainability, llama_stack, rag) accurately match the markers defined in pytest.ini. No changes required.
✏️ Tip: You can disable this entire section by setting review_details to false in your review settings.
|
Status of building tag latest: success. |
* docs: adopt constitution v1.0.0 for opendatahub-tests Establishes foundational governance framework with 7 core principles: - Simplicity First, Code Consistency, Test Independence - Fixture Discipline, Kubernetes API First - Locality of Behavior, Security Awareness Includes Test Development Standards, AI-Assisted Development Guidelines, and Governance procedures. Derived from AGENTS.md and DEVELOPER_GUIDE.md patterns. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * update Agents.md as per the GH article. Signed-off-by: Kamesh Akella <kakella@redhat.com> * update the markers list to be correct Signed-off-by: Kamesh Akella <kakella@redhat.com> * address code-rabbit suggestions Signed-off-by: Kamesh Akella <kakella@redhat.com> * implementing review feedback. Signed-off-by: Kamesh Akella <kakella@redhat.com> * implementing Federico's feedback. Signed-off-by: Kamesh Akella <kakella@redhat.com> --------- Signed-off-by: Kamesh Akella <kakella@redhat.com> Co-authored-by: Claude Code <claude-code@anthropic.com> Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Introduce a governance CONSTITUTION.md and enhance the AGENTS.md file to support spec-driven AI-assisted test development.
Fixes #1010
Description
1. Add
CONSTITUTION.mdA governance document defining non-negotiable principles for all test development (human or AI):
Includes:
2. Update
AGENTS.mdEnhanced to include:
pre-commit,tox,pytestexamplestests/conftest.py:544-550)How Has This Been Tested?
I have used these docs to good effect using the https://github.com/ambient-code/platform.
Merge criteria:
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.