JavaScript / Demo executável
Electrical Circuit Engine
A circuit interpreter with NO/NC contacts, AND/OR logic, TON timing, previous-state latching, and mutually exclusive coils.
O que foi verificado
Os comandos abaixo executam o código do repositório e conferem os cenários registrados. A evidência cobre esses cenários na versão indicada; não comprova todas as entradas possíveis nem uso em produção. As entradas de laboratório e os testes do software não comprovam conexão ou operação em equipamentos físicos.
A evidência abaixo pertence à versão registrada. A consulta usa a API pública do GitHub e pode atingir o limite de requisições.
Comandos e resultados reais
Resultados extraídos dos logs do Actions. Saídas extensas podem estar resumidas; a execução original e o artefato contêm o registro completo.
Baixar relatório JSONPASS npm test
Saída: 0 · esperada: 0 · 0.201 s
$ bash -e -o pipefail -c npm test > electrical-circuit-engine@2.0.0 test > node --test tests/*.test.mjs ✔ seal-in circuit holds until stop and overload deenergize it (1.2756ms) ✔ mutually energized reversing coils trip the software interlock (0.176282ms) ✔ TON resets when its input falls (0.782375ms) ✔ rejects repeated members in an interlock (0.355069ms) ✔ rejects invalid contact identifiers before scanning (0.128381ms) ✔ internal PLC names never collide with declared signals (1.670307ms) ✔ feedback uses the previous scan and commits outputs after interlocks (0.389951ms) ✔ nested TON blocks execute their inputs before their parent (1.318995ms) ✔ rejects invalid identifiers and timer precision instead of emitting broken PLC code (0.277503ms) ℹ tests 9 ℹ suites 0 ℹ pass 9 ℹ fail 0 ℹ cancelled 0 ℹ skipped 0 ℹ todo 0 ℹ duration_ms 51.718247
PASS Execute the seal-in circuit across supplied scans
Saída: 0 · esperada: 0 · 0.051 s
$ node src/cli.mjs examples/seal-in.json examples/inputs.json
{"scans":3,"final":{"sequence":3,"timestampMs":200,"coils":{"MOTOR":false},"transitions":[{"id":"MOTOR","energized":false}],"interlockTrips":[]},"events":[{"sequence":1,"timestampMs":0,"coils":{"MOTOR":true},"transitions":[{"id":"MOTOR","energized":true}],"interlockTrips":[]},{"sequence":2,"timestampMs":100,"coils":{"MOTOR":true},"transitions":[],"interlockTrips":[]},{"sequence":3,"timestampMs":200,"coils":{"MOTOR":false},"transitions":[{"id":"MOTOR","energized":false}],"interlockTrips":[]}]}
Reproduzir a execução
Os pré-requisitos e as entradas são públicos no repositório. Faça checkout da versão exata antes de executar os cenários.
git clone https://github.com/brunnojob/eletrical-comands-and-teory.git cd eletrical-comands-and-teory git checkout 0ebaee14b3197fcba871c8a00567561d1c35f37c python .proof/record.py