Skip to main content

Deterministic DAG executor for NGKsGraph build plans (MSVC/Qt C++ focus)

Project description

NGKsBuildCore

NGKsBuildCore is a Python MVP build runner that executes a DAG build plan with deterministic scheduling, parallel workers, and auditable proof logs.

Commands

  • python -m ngksbuildcore --help
  • python -m ngksbuildcore doctor
  • python -m ngksbuildcore run --plan examples\hello_plan.json -j 8
  • python -m ngksbuildcore explain --plan examples\hello_plan.json

Plan Contract

Plan JSON fields:

  • base_dir optional, defaults to plan file directory
  • nodes array of objects with:
    • id (string)
    • desc (string, optional)
    • cwd (string, optional)
    • cmd (string or string array)
    • deps (string array)
    • inputs (path array)
    • outputs (path array)
    • env (dict, optional)

Proof Output

Each run writes to timestamped proof directory under _proof (or NGKS_PROOF_ROOT):

  • events.jsonl
  • commands.jsonl
  • summary.json
  • summary.txt
  • environment.txt
  • tool_versions.txt
  • git_status.txt
  • git_head.txt

Long-Running Node Indicator

During long compile/link steps, NGKsBuildCore emits liveness heartbeats so users can tell a node is still active.

  • NGKS_NODE_HEARTBEAT_SEC - heartbeat interval in seconds (default: 15, set 0 to disable)
  • NGKS_NODE_HEARTBEAT_STYLE - output style: line (default) or spinner

Example:

$env:NGKS_NODE_HEARTBEAT_SEC = "10"
$env:NGKS_NODE_HEARTBEAT_STYLE = "spinner"
python -m ngksbuildcore run --plan examples\hello_plan.json -j 8

Integration Adapters

  • ngksbuildcore.adapters.graph_adapter.run_graph_plan
  • ngksbuildcore.adapters.devfabric_adapter.build_from_manifest

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

devfabeco_buildcore-0.3.0.tar.gz (37.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

devfabeco_buildcore-0.3.0-py3-none-any.whl (36.2 kB view details)

Uploaded Python 3

File details

Details for the file devfabeco_buildcore-0.3.0.tar.gz.

File metadata

  • Download URL: devfabeco_buildcore-0.3.0.tar.gz
  • Upload date:
  • Size: 37.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for devfabeco_buildcore-0.3.0.tar.gz
Algorithm Hash digest
SHA256 872cd3a8790b64c4181b749c3db099f1d28203f639e12069187d8b70dd409df6
MD5 fc13477e018e27e15d399e684e9b8d52
BLAKE2b-256 6faff361b09276636697cd3f30936816003f62a62d88adeb030d6dfc16f104dc

See more details on using hashes here.

File details

Details for the file devfabeco_buildcore-0.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for devfabeco_buildcore-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2f18eaac6f1995ce4774c69cea3143cbbba86f5fc47147c9680b9588ab1d1ab6
MD5 ab0772cfa7b412cd5805dcc0bdeca412
BLAKE2b-256 f77cf2155dbbd18777d8a95dff3bd3dd639d9b007f48624c74ed6650e8bf48ae

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page