Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 8 additions & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install -r requirements.lock.txt

- name: Run Ruff (Formatting & Linting)
run: |
Expand All @@ -33,5 +33,10 @@ jobs:
- name: Run mypy
run: mypy source

- name: Run Pytest
run: pytest
- name: Run Pytest
run: pytest

- name: Run deterministic acceptance episodes
run: |
python -m source.main validate-stage0
python -m source.main acceptance --output reports/ci-acceptance
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ coverage.xml
.pytest_cache/
.pytest_tmp/
.test_tmp/
.test_tmp_seq_*/
cover/

# Translations
Expand Down
1,023 changes: 787 additions & 236 deletions DESIGN.md

Large diffs are not rendered by default.

473 changes: 284 additions & 189 deletions IMPLEMENTATION_PLAN.md

Large diffs are not rendered by default.

199 changes: 199 additions & 0 deletions PHYSICAL_CHEMISTRY_REPORT.md

Large diffs are not rendered by default.

39 changes: 23 additions & 16 deletions PROJECT_GUIDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,10 @@
оператору безопасное действие. Если безопасного действия нет или данных не
хватает, система должна честно отказаться от рекомендации.

Актуальное финальное расширение: `model_demo` проверяет S/T95/CN, перебирает присадку
0–3% и выдаёт `hold`/`recommend`; `abstain` остаётся для неполного паспорта. Все эти
эффекты относятся только к объявленной синтетической модели.

---

## 1. Суть проекта в одну минуту
Expand Down Expand Up @@ -583,8 +587,8 @@ blend
Например:

```text
sulfur = 8.4 мг/кг
upper = 9.4 мг/кг
sulfur = 8.316 мг/кг
upper = 9.306 мг/кг
basis = formula
interval_kind = scenario_bound
```
Expand Down Expand Up @@ -1141,44 +1145,47 @@ upper <= 10 мг/кг
Текущая рецептура:

```text
A = 0.9
B = 0.1
A = 0.891
B = 0.099
присадка = 0.01
```

Верхняя оценка серы:

```text
9.4 мг/кг
S upper = 9.306 мг/кг
T95 upper = 354 °C
CN lower = 52.6
```

Результат:

```text
abstain (T95 и цетановое число не оценены)
hold
```

### `blend_risk`

Текущая рецептура:

```text
A = 0.7
B = 0.3
A = 0.693
B = 0.297
присадка = 0.01
```

Верхняя оценка серы:

```text
14.2 мг/кг
14.058 мг/кг
```

Это выше 10, значит `hold` недопустим. Но операторская рекомендация всё равно
блокируется: T95 и цетановое число не оценены.
Это выше 10, значит `hold` недопустим. Оптимизатор проверяет также T95 и CN.

Результат:

```text
abstain (диагностический кандидат A=0.9, B=0.1 не является рекомендацией)
recommend: A=0.891, B=0.099, присадка=0.01
```

### `blend_missing`
Expand Down Expand Up @@ -1667,12 +1674,12 @@ Stage 4 связывает прогноз гидроочистки с модел
- прогноз серы гидроочищенного компонента заменяет компонент `A`;
- рецептуры пересчитываются по массовому балансу;
- верхняя граница серы смешивается как консервативная сценарная граница;
- рецепты с нарушением серы, отсутствующей uncertainty или нехваткой запаса не
- T95/CN считаются по явной линейной модели, присадка — по сценарной кривой;
- рецепты с нарушением S/T95/CN, отсутствующей границей или нехваткой запаса не
попадают в ranking;
- `T95`, цетановое число и полный паспорт товарного продукта остаются
`not_assessed`.
- `assessed` означает только полноту синтетического паспорта, не промышленную гарантию.

Газовые теги `ht:F9`, `ht:F22`, `ht:Q21` теперь зафиксированы как gas context.
Газовые теги `ht:F2`, `ht:F22`, `ht:F25` теперь зафиксированы как gas context.
Это наблюдаемые технологические сигналы, а не безопасные controls. Их нельзя
рекомендовать менять, пока нет подтверждённых единиц, инженерных диапазонов, max step
и модели эффекта действия.
Expand Down
Loading
Loading