Skip to content

More AGENTS instructions#137

Merged
ejfine merged 13 commits intomainfrom
yet-more-agents
Mar 18, 2026
Merged

More AGENTS instructions#137
ejfine merged 13 commits intomainfrom
yet-more-agents

Conversation

@ejfine
Copy link
Contributor

@ejfine ejfine commented Mar 18, 2026

Why is this change necessary?

More instructions based on experience using Claude

How does this change address the issue?

Adds it

What side effects does this change have?

N/A

How is this change tested?

Downstream repos

Other

bumped some other versions

Summary by CodeRabbit

  • Documentation

    • Added a post-verification subsection with focused guidance for verifying only edited files.
    • Expanded testing best practices: pick enum values randomly, stricter anti-tampering rules for test artifacts, and single-line command / shell usage constraints.
    • Tightened tooling/workflow guidance to require controlled command invocation and consistent formatting.
  • Chores

    • Updated several tool and library versions across the development context.

@ejfine ejfine self-assigned this Mar 18, 2026
@coderabbitai
Copy link

coderabbitai bot commented Mar 18, 2026

📝 Walkthrough

Walkthrough

Added a Post-Green verification subsection to Green Phase docs, expanded AGENTS.md testing/tooling/shell guidance and anti-tampering rules, and bumped several dependency version pins while adding new context keys in extensions/context.py.

Changes

Cohort / File(s) Summary
Green Phase doc
.claude/commands/green.md
Added "Post-Green Verification" subsection instructing coverage on edited files and removing uncovered lines; documentation-only addition.
Agent policies & tooling
AGENTS.md
Expanded testing guidance (pick random enum values), added anti-tampering bullets forbidding hand-written VCR/syrupy/pytest-reserial artifacts, tightened tooling usage to frontend pnpm scripts and single-command invocations, and disallowed shell line-continuations and command chaining.
Dependency context
extensions/context.py
Adjusted pins: nuxt_version -> ~4.3.1, vue_version -> ^3.5.30, vue_devtools_api_version -> ^8.1.0, happy_dom_version -> ^20.8.4; added multiple new public context keys (e.g., vitest_version, eslint_version, graphql_codegen_*, tailwindcss_version, test-utils versions, iconify/version keys).

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested reviewers

  • idonaldson
  • zendern
🚥 Pre-merge checks | ❌ 3

❌ Failed checks (1 warning, 2 inconclusive)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Title check ❓ Inconclusive The title 'More AGENTS instructions' is vague and does not clearly convey the main changes, which include documentation updates, agent instruction changes, and version bumps. Consider a more specific title that captures the primary focus, such as 'Add AGENTS workflow guidelines and update dependencies' or 'Enhance AGENTS instructions and version updates'.
Description check ❓ Inconclusive The description is sparse and lacks specific details about changes. While it follows the template structure, sections like 'How does this change address the issue?' and 'Other' are incomplete or vague. Expand the description with specific details about the new AGENTS instructions, which version dependencies were bumped and why, and clarify which downstream tests validate these changes.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

📝 Coding Plan
  • Generate coding plan for human review comments

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Tip

You can enable review details to help with troubleshooting, context usage and more.

Enable the reviews.review_details setting to include review details such as the model used, the time taken for each step and more in the review comments.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@AGENTS.md`:
- Line 14: Fix the incomplete sentence in AGENTS.md: replace "For enums, pick
randomly using rather than hardcoding one value." with a complete phrasing that
shows a concrete method, e.g. "For enums, pick randomly using random.choice (or
faker.random_element) rather than hardcoding one value." Ensure the sentence
includes at least one example function name so readers know how to implement the
suggestion.

In `@extensions/context.py`:
- Around line 60-62: Add a follow-up/tracking issue in the repo issue tracker
that describes the Nuxt v4.4.2 + MagicString problem and the potential
resolution path via upgrading Vitest to v4, then update the in-code comment for
context["nuxt_version"] to reference that issue (include the issue number/URL
and a short TODO like "revisit when issue `#NNN` is resolved"); also add the issue
ID to the PR description so reviewers can find the tracking ticket easily.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 25728c1a-8614-46d5-8f3c-97510297e18e

📥 Commits

Reviewing files that changed from the base of the PR and between cc8f05b and bdb2f40.

📒 Files selected for processing (3)
  • .claude/commands/green.md
  • AGENTS.md
  • extensions/context.py

Comment on lines +60 to +62
context["nuxt_version"] = (
"~4.3.1" # some weird funkiness with Nuxt v4.4.2 and MagicString. trying to bump to Vitest v4 is possibly the answer, but initial attempt at that failed
)
Copy link

Choose a reason for hiding this comment

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

🧹 Nitpick | 🔵 Trivial

Consider tracking the workaround for follow-up.

The comment explains the reason for pinning to patch-only (~4.3.1), which is good practice. Since this is a known issue with Nuxt v4.4.2 and MagicString that might be resolved by Vitest v4, consider creating a tracking issue so this constraint can be revisited once upstream fixes land.

,

Would you like me to create a tracking issue for revisiting this Nuxt version constraint?

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@extensions/context.py` around lines 60 - 62, Add a follow-up/tracking issue
in the repo issue tracker that describes the Nuxt v4.4.2 + MagicString problem
and the potential resolution path via upgrading Vitest to v4, then update the
in-code comment for context["nuxt_version"] to reference that issue (include the
issue number/URL and a short TODO like "revisit when issue `#NNN` is resolved");
also add the issue ID to the PR description so reviewers can find the tracking
ticket easily.

@ejfine ejfine marked this pull request as ready for review March 18, 2026 18:22
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@AGENTS.md`:
- Around line 28-29: Add a blank line after the "## Tooling" heading so the
heading is separated from the following paragraph (i.e., ensure the "## Tooling"
heading is surrounded by blank lines per markdownlint MD022).
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 38f0dbd8-e12a-423c-9332-274391d169a7

📥 Commits

Reviewing files that changed from the base of the PR and between bdb2f40 and 9be0eb3.

📒 Files selected for processing (1)
  • AGENTS.md

Comment on lines 28 to 29
## Tooling
- Always use `uv run python` instead of `python3` or `python` when running Python commands.
Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Add a blank line below the ## Tooling heading (MD022).

markdownlint warning is valid here: heading must be surrounded by blank lines, and there is no blank line after Line 28.

🛠️ Suggested fix
 ## Tooling
+
 - Always use `uv run python` instead of `python3` or `python` when running Python commands.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
## Tooling
- Always use `uv run python` instead of `python3` or `python` when running Python commands.
## Tooling
- Always use `uv run python` instead of `python3` or `python` when running Python commands.
🧰 Tools
🪛 markdownlint-cli2 (0.21.0)

[warning] 28-28: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below

(MD022, blanks-around-headings)

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@AGENTS.md` around lines 28 - 29, Add a blank line after the "## Tooling"
heading so the heading is separated from the following paragraph (i.e., ensure
the "## Tooling" heading is surrounded by blank lines per markdownlint MD022).

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Updates template dependency version pins and expands agent/testing guidance documentation to reduce flaky workflows and enforce recording/snapshot practices.

Changes:

  • Pin Nuxt to ~4.3.1 (with rationale) and bump several frontend dependency versions (Vue, vue-devtools-api, happy-dom).
  • Add/clarify testing rules in AGENTS.md, including recording/snapshot handling and stricter command execution guidance.
  • Add “Post-Green Verification” guidance to the TDD green-phase command doc.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 4 comments.

File Description
extensions/context.py Adjusts template-provided dependency versions (Nuxt/Vue ecosystem).
AGENTS.md Adds/clarifies contributor/agent rules for testing and tooling usage.
.claude/commands/green.md Adds post-green coverage verification guidance for agents.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +60 to +62
context["nuxt_version"] = (
"~4.3.1" # some weird funkiness with Nuxt v4.4.2 and MagicString. trying to bump to Vitest v4 is possibly the answer, but initial attempt at that failed
)
- Test coverage requirements are usually at 100%, so when running a subset of tests, always disable test coverage to avoid the test run failing for insufficient coverage.
- Avoid magic values in comparisons in tests in all languages (like ruff rule PLR2004 specifies)
- Prefer using random values in tests rather than arbitrary ones (e.g. the faker library, uuids, random.randint) when possible.
- Prefer using random values in tests rather than arbitrary ones (e.g. the faker library, uuids, random.randint) when possible. For enums, pick randomly rather than hardcoding one value.

## Tooling
- Always use `uv run python` instead of `python3` or `python` when running Python commands.
- Prefer dedicated shell tools over `python3`/`python` for simple one-off tasks: use `jq` for JSON parsing, standard shell builtins for string manipulation, etc. Only reach for `python3` when no simpler tool covers the need.
Comment on lines +57 to +60
Once the test passes, run the coverage tool scoped to **only the files you edited** and check for uncovered lines:

- Any uncovered lines in files you edited are over-implementation — **delete them**
- Do not scope to the full test suite; focus only on what changed
@ejfine ejfine merged commit 96e65cc into main Mar 18, 2026
11 checks passed
@ejfine ejfine deleted the yet-more-agents branch March 18, 2026 18:29
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.

3 participants