Generators as plugins with drift checking: interface stubs and ARXML from the model
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 20/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- javascript, rust
Direzione di ricerca
Read issue #363 item 12 and the existing build-config, export-sysml, and structured export entry points to understand the current model outputs. Then review the import plugin contract and symbol drift check referenced as A. Done means a documented generator contract and manifest schema, plus one reference generator whose --check fails when a model operation changes and generated output is stale.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Part of #363 (item 12). Largest payoff, largest cost.
Current state
build-config generates build-system artifacts from a Configuration; export-sysml and the structured export give the model graph. Nothing generates interface stubs, glue or ARXML.
Proposal
- A generator contract, symmetric to import plugins:
syscribe generate <alias> [--config C] [--out <dir>]runs[generators.<alias>](a subprocess reading the structured model JSON on stdin, writing files and a manifest), so generators live outside the core. - Drift check. The manifest records, per generated file, the hash of the model elements it came from and the hash of the content;
generate --checkandvalidatereport a generated file edited by hand or a model change not reflected in the output (traceBaselines:-style). - Reference generators (examples): interface stubs for AIDL or C++ from
operations:; ARXML from ports and interfaces. - Ownership rule: the model is the source of truth for the interface, the code for the implementation; generated files are marked and never hand-edited (a
// GENERATEDheader with the element ids).
Acceptance
- One reference generator with
--checkthat fails when a model operation changes and the output is stale. - The contract is documented with the manifest schema.
Risks
Round-tripping (code edits that should flow back) is out of scope; the import plugins plus the symbol drift check (A) cover the reverse direction.
Part of #272 (executable MBSE / software design).
Generated by Claude Code
- Lingua principale
- Rust
- Stelle
- 8
- Fork
- 1
- Merge medio
- 3h 35m
- PR unite (30g)
- 69
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
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di sjames/syscribe
-
enhancement
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
sjames/syscribe#411 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Format-preserving writes for structural frontmatter (features, connections, layout, shapes, edges)Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
sjames/syscribe#405 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di sjames/syscribe
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 73/100
quarto-dev/q2#1155 ·
I maintainer di solito rispondono entro 1 giorno
-
backlog priority: low ui
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
storytold/vectorcraft#6445 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
area: cli kind:docs priority: P3
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
tursodatabase/libsql#2312 ·
I maintainer di solito rispondono entro 11 giorni
-
`NodeOwned::size_in_bytes` does not count the `ChildrenNodesOwned` heap allocation (since #216)Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
paritytech/trie#251 ·
I maintainer di solito rispondono entro 1 giorno