Fix yieldInCallArgument across the repository

Chiusa
#916 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Una pull request collegata è già stata integrata.

  • #923 di @usine-phildl — integrata

Valutazione

Difficoltà
4/5
Tempo stimato
Più di una settimana
Idoneità per principianti
25/100
Tipo di issue
Refactoring
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
typescript
Ambito
tooling

Direzione di ricerca

This work is blocked by #915 and spans about 1,212 sites in 224 files, so start only after that blocker is resolved. Read docs/research/effect-tsgo-and-oxlint.md and tooling/tsconfig/base.json, then fix one file at a time and run the package check. Done means no yieldInCallArgument baseline entries remain, the baselines are regenerated with pnpm effect:baseline, and all listed gates pass without behavior changes.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Blocked by #915.

Fix yieldInCallArgument in the whole repository, about 1,212 sites in 224 files (engine 314, orchestrator 300, server 214), mostly in tests. Each site passes yield* x directly as a call argument, such as summarize(yield* stored(name)). Bind the value to a named const first.

Don't use the rule's autofix in bulk. It declared value_1 twice in one scope and passed the wrong argument types. Fix one file at a time, and give each binding a name from the domain, never value_1.

Acceptance criteria

  • No yieldInCallArgument baseline entries are left.
  • All gates pass and behaviour is unchanged.

Rules for this change

  • The Effect diagnostics configuration is in tooling/tsconfig/base.json. Each package's check runs scripts/effect-diagnostics.mjs, which compares counts with the package's effect-baseline.json. Background and per-rule notes are in docs/research/effect-tsgo-and-oxlint.md.
  • After fixing, run pnpm effect:baseline and commit the lowered baselines. Never raise a count by hand. On a rebase conflict in an effect-baseline.json, take either side and rerun pnpm effect:baseline.
  • Don't change behaviour. Existing tests must pass unchanged, except where a test changes only its syntax, such as new X becoming X.make.
  • Don't turn off or downgrade a rule. Suppress a site with @effect-diagnostics-next-line <rule>:off only for the false positives listed below, with a one-line reason.
  • Run pnpm lint, pnpm format:check, pnpm knip, pnpm build, pnpm check and pnpm test before pushing.
Lingua principale
TypeScript
Stelle
1
Fork
0
Merge medio
3h 51m
PR unite (30g)
354

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di basaltbytes/usine

Tutte le issue di basaltbytes/usine

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.