this in a part-owned action resolves to the action performance instead of the owning part
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 48/100
Línea de trabajo
Start with the minimal model in bug.sysml and reproduce the issue using %load, %instantiate p, and %features p.a. Trace how this is resolved for the owned action a, using the quoted SysML rules as the expected behavior. Done means ctx resolves to owning part p and the type-mismatch error no longer occurs.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Model and observed behaviour
Minimal model (`bug.sysml`), on sysml v0.9.0 (Windows):
// Written in file: bug.sysml
action def A {
ref part ctx : P;
}
part def P {
action a : A {
:>> ctx = this;
}
}
part p : P;
Command:
sysml> %load bug.sysml
sysml> %instantiate p
sysml> %features p.a
Output:
Instance: p.a (ID: 2)
Features:
ctx: <error: feature value a.ctx: type mismatch: cannot write instance(2) (instance) to a feature typed by P>
`instance(2)` is the performance of action `a` itself (i.e. `p.a`), not `p`. So
`a.this` resolved to the action, and `:>> ctx = this` tried to write the action into a
`P`-typed feature.
What the specification requires
a is an ownedAction of part p, so a.this must be p; :>> ctx = this should
set ctx to p, with no error.
OMG SysML v2.0 (formal/2026-03-02), Part 1, §9.2.4.2.1 (Part):
"The
thisreference of aownedActionis always its owning Part."
Same document, §8.4.13.2 (Action Usages — "Semantics of this"):
"... the value of
thisis the top-level Action in the hierarchy ..., unless that
top-level Action is itself one of the ownedActions of a Part (or one of the
ownedPerformances of an Item), in which case the value is that Part (or Item)."
Kind of gap
Valid model is rejected (false positive)
Reference implementation
No response
Version
sysml v0.9.0 Commit: ee54ea03ea3ca8fb2c796ecda364adf748c40304 Build time: 2026-09-25_01:12:11 Go version: go1.25.0
- Lenguaje dominante
- Go
- Estrellas
- 24
- Forks
- 5
- Merge medio
- 10 h 11 min
- PR fusionados (30 d)
- 572
Preparar el entorno
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 4/5 3-5 días Aptitud para principiantes 52/100
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 58/100
Los mantenedores suelen responder en 1 día
-
enhancement
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
Open-MBEE/OpenSysML#608 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
Todos los issues de Open-MBEE/OpenSysML
Issues similares
-
automation models
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
txn2/mcp-data-platform#1984 ·
Los mantenedores suelen responder en 1 día
-
agentic-workflows
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
Los mantenedores suelen responder en 1 día
-
Fix broken Code of Conduct linksAbiertokind/docs prio/P2
Dificultad 1/5 Menos de una hora Aptitud para principiantes 95/100
agent-substrate/substrate#1986 ·
Los mantenedores suelen responder en 1 día