-strict accepts a namespace with indistinguishable memberships (warning, exit 0)
Los mantenedores suelen responder en 1 día
Ya se ha fusionado un pull request relacionado.
- #1050 de @devin-ai-integration — fusionado
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 45/100
Línea de trabajo
Start by tracing how -strict and the service’s strict_conformance setting affect validation and how duplicate owned member names are reported. The issue gives a reproducer and expected behavior: under strict mode the warnings should become errors, while default-mode output stays unchanged. Check existing validation tests and add coverage for both modes; the issue does not name specific files or tests.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
The ruling
spec-pilot gap register #13: indistinguishable memberships are reported as a warning, as the pilot reports them, so that duplicated names in the training corpus do not fail its clean gate. The register's own assessment is that "the rule is a validate… constraint — a violating model is not well-formed — so a warning under-reports it".
Model and observed behaviour
package P {
part def A;
part def A;
}
$ sysml -validate -strict dup.sysml
dup.sysml:2:14: warning: Duplicate of other owned member name
dup.sysml:3:14: warning: Duplicate of other owned member name
✓ dup.sysml: no errors
$ echo $?
0
develop 1e68ecf2d. Without -strict the output is the same.
Why it is wrong under -strict
KerML §8.3.2.4.5 Namespace, validateNamespaceDistinguishibility (spelt so in the PDF): "All memberships of a Namespace must be distinguishable from each other." The two As have the same name and the same metaclass, so by §8.3.2.4.3 Membership::isDistinguishableFrom they are not distinguishable, and the model is not well-formed. -strict is described as judging "the model as conforming SysML v2", yet it accepts this model with exit 0. So a check run with -strict cannot rely on it to reject a model the specification says is not well-formed.
Proposed behaviour
Only under -strict (and strict_conformance on the service), report indistinguishable memberships as an error. The default stays a warning, so the training corpus, its clean gate and the differential against the pilot are unchanged.
This widens -strict from notation alone to this one well-formedness constraint, which is a change to what the flag means. If that is not wanted, a separate opt-in (a flag, or a lint code that can be raised to an error) would serve the same need.
The case against
The question to the specification's authors in #13 is still open. If they rule that a tool may keep resolving a namespace with indistinguishable memberships, an error would be stricter than the specification intends. Even then, the constraint as published is a validate… constraint, and a strict mode that claims conformance seems the place to apply it as written until that ruling changes it.
🤖 Generated with Claude Code
- Lenguaje dominante
- Go
- Estrellas
- 36
- Forks
- 10
- Merge medio
- 13 h 49 min
- PR fusionados (30 d)
- 774
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de Open-MBEE/OpenSysML
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 15/100
Los mantenedores suelen responder en 1 día
-
Renaming of OpenSysMLAbiertohelp wanted question
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
Open-MBEE/OpenSysML#987 · 10 comentarios ·
Los mantenedores suelen responder en 1 día
Todos los issues de Open-MBEE/OpenSysML
Issues similares
-
agent-review-finding bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
jordansmall/spindrift#5281 ·
Los mantenedores suelen responder en 1 día
-
unbounded value for n in `/v1/logs` can panic/OOMPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abiertosmall item
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
canonical/pebble#1127 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
[schema-coverage] elasticstack_elasticsearch_synonym_set (data source)Posiblemente ocupada @github-actions la tomó hoy. Abiertoacceptance-tests phase-coding schema-coverage testing triaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 81/100
elastic/terraform-provider-elasticstack#5211 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 89/100
open-policy-agent/opa#9366 · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
defect
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
nats-io/nats-server#8752 ·
Los mantenedores suelen responder en 1 día