Skip to content

About

Domain-independent framework for analyzing versioned variant populations, with a food-service MVP built on Quarkus, Angular, and PostgreSQL.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Variability Engineering Framework

A domain-independent framework for modeling, analyzing, configuring, and optimizing systems with many possible variants. Implemented observed-population analysis provides the semantic foundation for the broader framework.

Status

The food-service analysis MVP and combined container image have been validated locally against PostgreSQL. The energy workflow passes local API/PostgreSQL and UI tests. GitHub Actions run 38439829738 passed all build, test, publication, and deployment jobs for the energy workflow. On October 19, 2026, the owner confirmed the production ODIP-backed energy workflow, including live AI proposals and explanations. The acceptance record distinguishes passed manual checks from the remaining AI, deployed regression, recovery, and release acceptance work.

The API contains a domain-independent analysis core for versioned observed populations, a verified food-service fixture adapter, an HTTP analysis contract, and PostgreSQL-backed population storage. The Angular Material dashboard exposes summary metrics, filtering, reorderable grouping, ingredient leverage, and ingredient-unavailability impact.

The API also includes an energy workflow against contract kit 0.5.0: typed new-equipment generation, checked publication bytes, hourly simulation, exhaustive ranking, durable owned runs, and paged candidates. The lazy-loaded /energy UI supports natural-language proposals, requires explicit confirmation of the current structured request, and displays recommendations, evidence, and validated AI explanations. ODIP's publication service is maintained in its own repository. General-purpose generative-model evaluation, portable configuration completion, portfolio optimization, and reusable framework components remain later work.

Implemented MVP

The first application:

  • imports and verifies a versioned synthetic food-service population;
  • calculates record, structural-variant, ingredient, grouping, leverage, and unavailability results;
  • saves and reloads the immutable population through PostgreSQL;
  • presents the workload through an Angular UI and Quarkus API; and
  • packages and verifies the UI and API as one local container image.

The stack-neutral workspace is documented in apps/prototype/.

The normative observed-data example is the food-service MVP v1 fixture.

General-purpose generative model authoring and configuration completion, portfolio optimization, an external food-service dataset, additional language implementations, reusable UI components, and broader performance or storage experiments follow in later stages. The implemented bounded energy configuration slice is tracked separately.

Run locally

Run the packaged UI, API, and PostgreSQL together from the repository root:

docker compose --profile app up --build

Open http://localhost:8080. The energy workflow needs the platform's browser identity boundary and ODIP reader binding; standalone Compose does not provide these. For a clean database, stop the stack with docker compose down -v. Component-specific development commands are documented in apps/prototype/.

Documentation

Area Documents
Product Vision, use cases, requirements, roadmap
Architecture Overview, domain model, analysis view, food-service MVP semantics, food-service HTTP contract, persistence and deployment
Decisions Architecture decision records
Development Development plan, MVP implementation plan, energy configuration implementation plan, quality assurance, open decisions
Operations Prototype deployment
Traceability Sources and maintenance

See the documentation index for status conventions and maintenance guidance.

Core distinction

A configuration is a complete assignment of feature values. A structural variant is the resulting collection of present element usages. A variant record is an identified generated or imported candidate with dimensions and provenance. Different configurations or records can produce the same structural variant, so configuration count, record count, and distinct-variant count are separate metrics. A portfolio is a selected collection of variant records; in the food-service domain, a dish is a variant record and a menu is a portfolio.

License

Source code and documentation are licensed under the Apache License 2.0. See NOTICE for attribution. The original synthetic food-service MVP fixture is separately dedicated under CC0-1.0. External datasets and third-party materials remain subject to their own licenses.

About

Domain-independent framework for analyzing versioned variant populations, with a food-service MVP built on Quarkus, Angular, and PostgreSQL.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages