Measure chance reach misses in oracle properties
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 53/100
- Tipo de issue
- Funcionalidade
- Clareza
- Razoavelmente clara
- Status de atividade
- Ativa
- Stack de tecnologia
- typescript
Direção de pesquisa
Start with packages/db/tests/declared-reach-oracle.property.test.ts and docs/contributing/oracle-coverage.md, then find the other files using createOracleReach or runOracleCampaign. Measure normal-budget reach misses across seeds for states not entered by fixed examples; add fixed examples through the shared seam or document probabilistic states with a maintainer decision. Consider whether a lint rule can identify chance-selected reach prefixes.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Problem
A generated property declares the states its laws depend on, and createOracleReach fails a run in which too few histories entered one (ORC-015). When only random histories enter a declared state, the check can fail by chance at the normal run budget. No law fails, but CI goes red. #2287 was one case: in about 0.3% of 60-run campaigns, source-health.history never chose the one reach prefix that enters two of its states.
The fix for #2287 adds a shared seam for this:
oraclePropertyOptions(…, { examples })runs fixed examples first in every run, on top of the base budget.createOracleReach(…, { fixedHistories })fails for each declared state that those examples did not enter.
The three source-health properties use the seam, so their reach does not depend on the seed. packages/db/tests/declared-reach-oracle.property.test.ts (oracle.declared-reach) owns these rules.
About 40 other files use createOracleReach or runOracleCampaign. Their chance of a reach miss at the normal budget has not been measured.
Work
- For each property with declared reach, list the declared states that no fixed example enters.
- Measure how often a normal-budget run misses each of those states. For example, count the misses across many seeds, or sample the generator.
- For each state that can miss, add a fixed example through the seam, or record the state as probabilistic in
docs/contributing/oracle-coverage.mdwith a maintainer decision. Raise a run budget only with a maintainer decision, because it adds CI time. - Consider a lint rule that reports a property that chooses a reach prefix by chance (
fc.option(fc.constantFrom(...prefixes))) without fixed examples.
The coverage map's "Oracle tooling" section links to this issue as the destination for the gap.
Refs #2234, #2287.
This issue was written by Isaac.
- Linguagem predominante
- TypeScript
- Estrelas
- 4k
- Forks
- 277
- Merge médio
- 1d 7h
- PRs com merge (30d)
- 170
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de TanStack/db
-
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 88/100
Mantenedores costumam responder em até 1 dia
-
OfflineExecutor.dispose() never settles pendingTransactionPromisesTalvez livre de novo @Claire-ovo assumiu há 7 dias e não há nenhum pull request aberto. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
TanStack/db#2254 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
Mantenedores costumam responder em até 1 dia
-
Two @tanstack/db tests time out under CPU load because a cold module import counts against the 5 s default timeoutTalvez já em andamento @jp-knj assumiu há 5 dias. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 12/100
TanStack/db#2342 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
Todas as issues de TanStack/db
Issues semelhantes
-
needs-triage
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 66/100
microsoft/playwright#43875 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
feature
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
calagopus/panel#285 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 Menos de uma hora Facilidade para iniciantes 88/100
adobe/react-spectrum#10909 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
-
Run the dependency drift checkTalvez já em andamento @spaceninja assumiu hoje. Aberta
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 72/100
cloudfour/lighthouse-parade#449 ·
Mantenedores costumam responder em até 1 dia