fix: v0.1.50 — runtime 400 + SLESS_ENTRYPOINT в Deployment

Bug 1: services.go — k8s IsInvalid error (CRD enum validation) маппился в 500.
Теперь errors.IsInvalid() → 400 Bad Request (invalid service spec).

Bug 2: service_controller.go buildServiceDeployment не передавал env SLESS_ENTRYPOINT
в под. Добавлен в envVars из svc.Spec.Entrypoint. Без него server.py использовал
fallback handler.handle и не замечал неверный entrypoint.

operator_failure_test.sh 12B-2: обновлён под новое правильное поведение —
create ruby3.0 → 400 (не 201). Старый 201-путь сохранён как warn для совместимости.
This commit is contained in:
Naeel
2026-03-22 08:11:05 +03:00
parent d4ccbc7d15
commit a76baa62a3
6 changed files with 100 additions and 7 deletions
+19
View File
@@ -2,6 +2,25 @@
---
## 2026-03-21 — Оценка трудозатрат на проект
| Компонент | Оценка |
|-----------|--------|
| Go operator — CRD (Function, Trigger, Job), 3 контроллера, reconcile loops, self-healing | 80-100 ч |
| REST API — router, middleware, 8 handlers, namespace lifecycle | 40-50 ч |
| Terraform провайдер — provider, client, 4 ресурса | 40-60 ч |
| Builder — kaniko, S3 upload, context tar | 20-30 ч |
| Runtimes — Go/Node/Python базовые образы | 20-30 ч |
| Инфраструктура — k8s manifests, kustomize, Harbor, Postgres | 20-30 ч |
| Тесты — lifecycle (47) + survival (34), ~1900 строк bash | 40-60 ч |
| Документация — architecture, decisions, errors, API, handoffs | 20-30 ч |
**Итого: ~280-390 человеко-часов** (7-10 недель одного разработчика в нормальном темпе).
С AI-ассистентом в паре реальное живое время ~80-120 часов (30-50% от полного объёма).
---
## 2026-03-21 — timeout_sec для sless_service: 0 = нет лимита (не 30s по умолчанию)
### Контекст