Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Add bounded semantic comparison for project styling changes

Abierto
#459 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
38/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
rust, typescript

Línea de trabajo

Start with site/architecture/styling-ir-roadmap.md, then trace the Rust rule identity, ordering, resource, and condition semantics through the compiler → codec → engine path. Check how the TypeScript wrapper exposes read-only results without reimplementing comparison. Done means bounded equivalent, different, or unknown results with evidence, diagnostics, parity checks, and the listed acceptance tests.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Goal

Provide a bounded semantic comparison of two supported project/manifest states for a declared class and context corpus. Do not claim general CSS equivalence from JSON or text equality.

Roadmap: #455 and #456. Design context: site/architecture/styling-ir-roadmap.md.

Concrete use case

Comparing display:block flex with block flex must report the changed winner, even if a canonical spelling looks shorter. A result over one class list must not imply equivalence for all possible classes, modes or browsers.

Ownership and compatibility

  • Rust owns rule identity, ordering, resources and condition semantics. A compiler/tooling wrapper may present results to editors. TypeScript must not reimplement semantic comparison.
  • Define finite inputs: manifest pair, class lists, active modes/conditions and relevant layer/importance context. Return observed equivalent, observed different, or unknown outside the stated corpus, with evidence and diagnostics.
  • Additive 2.x read-only API outside runtime bundle; no automatic autofix or migration follows solely from this result.

Acceptance criteria

  • Tests cover token/raw values, important and native layer order, shorthand/longhand competition, condition changes, fallback declarations, class groups and native conditional rules and resource withdrawal.
  • Native/Wasm parity and compiler → codec → engine persistence are checked for supported inputs; unsupported versions or contexts fail or return explicit unknown.
  • Documentation states that browser support and computed style remain unverified without browser execution. Boundary/type/lint and bundle checks pass.
Lenguaje dominante
TypeScript
Estrellas
2k
Forks
44
Merge medio
1 d 3 h
PR fusionados (30 d)
1

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de master-co/css

Todos los issues de master-co/css

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.