t3-code-android-nightly/.repos/effect-smol/.agents/AGENTS.md
Julius Marminge 6f9cea00ae
chore(refs): sync Effect and Alchemy references to 4.0.1 and beta.80 (#16170)
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-05 13:22:30 -07:00

51 lines
2.8 KiB
Markdown

This is the Effect TypeScript monorepo. The git base branch is `main`; use `pnpm` from the repository root.
## Layout
- Core library source, runtime tests, and type tests are in `packages/effect/src`, `packages/effect/test`, and
`packages/effect/typetest`.
- Other package families include `packages/ai`, `packages/atom`, `packages/platform`, `packages/sql`, and
`packages/tools`; standalone packages also live directly under `packages`.
- Package tests and type tests live beside source in `test` and `typetest` directories.
- AI documentation sources are in `ai-docs/src`.
- Changesets are in `.changeset`.
- Migration sources (v3-to-v4) are in `migration/annotations`.
- Inspect nearby code before editing.
## Validation
Use the narrowest validation that covers the change:
| Change type | Validation |
| ---------------------------------- | ---------------------------------------------------------------------------------- |
| Runtime source or test changes | `pnpm lint-fix`, targeted `pnpm test --run <test_file.ts>`, `pnpm check` |
| Type-system behavior or type tests | Targeted `pnpm test-types <filename>`, plus `pnpm check` when source types changed |
| JSDoc text/category/link changes | `pnpm jsdocs --check`, `pnpm lint` |
| JSDoc example changes | `pnpm jsdocs --check`, `pnpm lint`, root `pnpm doctest --run <files>` |
| Docs-only changes | `pnpm lint-fix`; no tests unless examples or code changed |
Choose coverage from the contract being changed. Runtime tests cover executed
behavior. Tstyche tests cover intended compiler behavior such as inference,
assignability, rejection, or displayed public types. An ordinary source edit or
exported declaration is covered by `pnpm check` unless compiler behavior is part
of the task.
Never run bare `pnpm test` or `pnpm doctest`; both start the full suite in watch mode. Always pass `--run` and the
specific files covering the change. CI runs the full suite.
For an ad hoc runnable probe, create `scratchpad/<name>.ts`, run it with plain `node`, and remove it when finished.
Report any commands that could not be run.
## Generated Files
Do not edit generated output directly.
Some `index.ts` sections marked with `@barrel` are generated. Do not edit those
sections manually; update their source modules and run `pnpm codegen`.
Hand-maintained `index.ts` files and unmarked sections are not covered by this
rule.
`LLMS.md` is generated from `ai-docs/src`, and `migration/v3-to-v4.md` is
generated from `migration/annotations`. Update checked-in third-party assets
through their generator or documented import procedure.