Skip to content

docs: update agent workflows#3887

Closed
astandrik wants to merge 1 commit intomainfrom
codex/update-agents.md-with-new-workflows
Closed

docs: update agent workflows#3887
astandrik wants to merge 1 commit intomainfrom
codex/update-agents.md-with-new-workflows

Conversation

@astandrik
Copy link
Copy Markdown
Collaborator

@astandrik astandrik commented May 8, 2026

Motivation

  • Make agent docs reflect discovered local workflows for running the dev server with .env overrides and clarify the default npm run dev behavior.
  • Surface the required runtime tooling more precisely by documenting the repo's npm expectation alongside the Node version.
  • Document Playwright/Docker E2E runner behaviors and useful environment variables to make CI/local reproduction easier.

Description

  • Updated AGENTS.md to note that Node >=24.0 is required and that npm 11.x is expected (^11.0.0).
  • Added npm start to the Quick Start section and clarified that npm run dev uses local backend defaults while npm start picks up .env overrides.
  • Expanded the Code Quality and Testing command lists with npm run lint:js, npm run lint:styles, npm run lint:other, npm run test:e2e:install, npm run test:e2e:docker:report, and npm run test:e2e:local entries.
  • Clarified .env usage for single-cluster and multi-cluster development and added REACT_APP_META_BACKEND / META_YDB_BACKEND examples, plus documented Playwright/Docker E2E env vars (PLAYWRIGHT_YDB_IMAGE, PLAYWRIGHT_HTML_HOST/PLAYWRIGHT_HTML_PORT, PLAYWRIGHT_VIDEO) and that Docker E2E arguments are forwarded to Playwright (image tag is derived from package-lock.json when not overridden).

Testing

  • Ran npx prettier --check AGENTS.md and it returned no formatting issues.
  • Ran npm run lint:other (Prettier check) and it passed.
  • Pre-commit lint-staged tasks ran during commit and applied prettier --write where needed, with the commit completing successfully.
  • Verified git diff --check produced no warnings or whitespace errors.

Codex Task

Greptile Summary

This PR updates AGENTS.md with accurate developer-workflow documentation: it pins the npm version expectation (^11.0.0) alongside the existing Node >=24.0 requirement, expands the lint and E2E test command tables, and documents the npm start vs npm run dev distinction and Docker/Playwright environment variables.

  • All new npm scripts (lint:js, lint:styles, lint:other, test:e2e:install, test:e2e:docker:report, test:e2e:local) exist verbatim in package.json and the descriptions match their implementations.
  • The Docker E2E section accurately reflects scripts/playwright-docker.sh: arguments are forwarded via \"$@\", the Playwright image tag is derived from package-lock.json, and PLAYWRIGHT_APP_BACKEND controls whether a local YDB container is started.
  • The .env example introduces REACT_APP_META_BACKEND=undefined and META_YDB_BACKEND=undefined entries, which are consistent with how the codebase uses the string \"undefined\" (checked in rsbuild.config.ts) but could use a brief inline comment explaining the non-standard pattern.

Confidence Score: 4/5

Documentation-only change; all commands and env vars cross-check against the actual scripts, with one minor wording improvement possible in the .env example.

Every added npm script was verified to exist in package.json, the Docker runner claims (argument forwarding, image-tag derivation, YDB container lifecycle) match the playwright-docker.sh implementation, and the npm start vs npm run dev distinction accurately reflects the scripts. The only item worth attention is that the .env example sets two variables to the literal string "undefined" without explaining why — this is intentional given the rsbuild.config.ts check, but could confuse contributors unfamiliar with this codebase pattern.

No files require special attention; AGENTS.md is the only changed file and its content is factually correct.

Important Files Changed

Filename Overview
AGENTS.md Documentation-only update adding npm 11.x expectation, expanded lint/test command listings, npm start vs npm run dev distinction, and Playwright/Docker E2E environment variable documentation — all verified accurate against package.json scripts and playwright-docker.sh; one non-standard .env =undefined pattern lacks a clarifying comment

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[Start dev session] --> B{Backend target?}
    B -->|Local default| C[npm run dev\nsets hardcoded backend env vars]
    B -->|Custom cluster via .env| D[npm start\nrsbuild dev — .env file controls env vars]
    B -->|Multi-cluster via .env| D
    C --> G[Dev server on port 3000]
    D --> G
    G --> H{Run E2E tests?}
    H -->|Local browsers| I[npm run test:e2e:install\nnpm run test:e2e:local]
    H -->|Docker runner| J[npm run test:e2e:docker\nor test:e2e:docker:report]
    J --> K{PLAYWRIGHT_APP_BACKEND set?}
    K -->|No| L[Script starts local-ydb container\nYDB image from PLAYWRIGHT_YDB_IMAGE]
    K -->|Yes| M[Uses external backend\nno local YDB container]
    L --> N[Playwright image tag from package-lock.json\nCLI args forwarded to playwright test]
    M --> N
Loading

Fix All in Codex Fix All in Claude Code

Prompt To Fix All With AI
Fix the following 1 code review issue. Work through them one at a time, proposing concise fixes.

---

### Issue 1 of 1
AGENTS.md:219-220
**Non-standard `.env` `=undefined` pattern lacks inline explanation**

`REACT_APP_META_BACKEND=undefined` and `META_YDB_BACKEND=undefined` set these variables to the *literal string* `"undefined"`, not to an absent or empty value. This works because `rsbuild.config.ts` explicitly checks `!== 'undefined'` before enabling the proxy, but it is an unusual `.env` idiom that could mislead developers into thinking it is standard syntax for unsetting a variable. Adding a brief inline comment (e.g. `# literal string "undefined" — disables this mode`) would make the intent clear, especially since omitting the line or setting `=` would behave differently.

Reviews (1): Last reviewed commit: "docs: update agent workflows" | Re-trigger Greptile

Greptile also left 1 inline comment on this PR.

CI Results

Test Status: ⚠️ FLAKY

📊 Full Report

Total Passed Failed Flaky Skipped
672 665 0 4 3

😟 No changes in tests. 😕

Bundle Size: ✅

Current: 63.75 MB | Main: 63.75 MB
Diff: 0.00 KB (0.00%)

✅ Bundle size unchanged.

ℹ️ CI Information
  • Test recordings for failed tests are available in the full report.
  • Bundle size is measured for the entire 'dist' directory.
  • 📊 indicates links to detailed reports.
  • 🔺 indicates increase, 🔽 decrease, and ✅ no change in bundle size.

Copilot AI review requested due to automatic review settings May 8, 2026 18:50
Copy link
Copy Markdown
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 contributor/agent documentation to better match the repository’s actual local development and E2E workflows (including .env usage, expected runtime tooling, and Playwright Docker runner behavior).

Changes:

  • Documented Node.js and npm expectations and clarified npm run dev vs npm start behavior around .env/environment variables.
  • Expanded the listed lint/test commands to match the package.json script set (including Playwright install/local/docker report flows).
  • Added notes on Playwright Docker runner argument forwarding and relevant E2E environment variables.

Comment thread AGENTS.md
- **Testing**: Jest 30 + React Testing Library (unit), Playwright 1.x (E2E)
- **Package Manager**: npm
- **Node Version**: 24+ required (`engines` field enforces `>=24.0`)
- **Node Version**: 24+ required (`engines` field enforces `>=24.0`); npm 11.x is expected (`^11.0.0`)
@astandrik astandrik closed this May 8, 2026
Comment thread AGENTS.md
Comment on lines +219 to +220
REACT_APP_META_BACKEND=undefined
META_YDB_BACKEND=undefined
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

P2 Non-standard .env =undefined pattern lacks inline explanation

REACT_APP_META_BACKEND=undefined and META_YDB_BACKEND=undefined set these variables to the literal string "undefined", not to an absent or empty value. This works because rsbuild.config.ts explicitly checks !== 'undefined' before enabling the proxy, but it is an unusual .env idiom that could mislead developers into thinking it is standard syntax for unsetting a variable. Adding a brief inline comment (e.g. # literal string "undefined" — disables this mode) would make the intent clear, especially since omitting the line or setting = would behave differently.

Prompt To Fix With AI
This is a comment left during a code review.
Path: AGENTS.md
Line: 219-220

Comment:
**Non-standard `.env` `=undefined` pattern lacks inline explanation**

`REACT_APP_META_BACKEND=undefined` and `META_YDB_BACKEND=undefined` set these variables to the *literal string* `"undefined"`, not to an absent or empty value. This works because `rsbuild.config.ts` explicitly checks `!== 'undefined'` before enabling the proxy, but it is an unusual `.env` idiom that could mislead developers into thinking it is standard syntax for unsetting a variable. Adding a brief inline comment (e.g. `# literal string "undefined" — disables this mode`) would make the intent clear, especially since omitting the line or setting `=` would behave differently.

How can I resolve this? If you propose a fix, please make it concise.

Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!

Fix in Codex Fix in Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants