Skip to content

Fix benchmark timing, deployment safety and integrate Onggi P2 - #53

Merged
gspark-etri merged 4 commits into
masterfrom
improve/verified-ecosystem-20261023
Oct 23, 2026
Merged

gspark-etri merged 4 commits into
masterfrom
improve/verified-ecosystem-20261023

Conversation

@gspark-etri

@gspark-etri gspark-etri commented Oct 23, 2026 •

Copy link
Copy Markdown
Collaborator

JSON fallback responses could fabricate zero TPOT and pass SLO checks without timing evidence, and slow response drips or multiple connection addresses could exceed the intended timeout. Preserve unknown/invalid timing, reject contradictory zero counts, and share one I/O deadline across connection attempts and streaming/JSON responses.

Chart-backed components now stop before generic kubectl mutation and print a Helm command. Controller apply mode grants namespace-scoped Deployment get/list/patch permissions, including legacy --apply values; operational flag abbreviations are rejected. Live API validation exposed kubectl patch's prerequisite GET, which is now covered by chart regressions. Helm setup precedes tools tests in CI so RBAC regressions run.

Update English/Korean READMEs, component/status docs and the Onggi pin from P0 to reviewed P2 commit d0b16db. Depends on ai-computing/onggi#67; merge that first. Other ecosystem fixes remain separate: ai-computing/hetero-llm-d#12 and ai-computing/hetero-npu-p2p#10. Their hub pins are unchanged.

Validation:

  • Original full local set: 222 tests passed with explicit scratch imports and real Helm. After the live RBAC fix, all 124 tools/controller tests passed; benchmark code was unchanged.
  • Full umbrella chart strict lint and apply-mode templates passed for default/sim/example values. Independent review's additional benchmark findings were fixed and re-reviewed.
  • Real Kubernetes/KEDA 2.19.0 API: rendered Role permissions allowed own-namespace list/patch, denied cross-namespace mutation and deletion, and revoked patch after Role removal.
  • A successful Deployment patch followed by an intentional KEDA HTTP 403 produced a fresh plan containing only the unfinished ScaledObject. Retry changed maxReplicaCount 4→2, preserved the Deployment generation, and left the next plan empty. The fixture was paused with zero Deployment replicas; its namespace was deleted.
  • Current GitHub CI passed benchmark/controller packages, chart, image, documentation, sensitive-data scan, and kind simulation end to end.

Full commands, sanitized API evidence, and boundaries: docs/superpowers/validation-2026-10-23.md and docs/superpowers/artifacts/controlplane-2026-10-23.json.

No production rollout or actual NPU-serving benchmark performed. OS DNS remains outside socket cancellation; live TLS/proxy paths were not exercised.

@gspark-etri
gspark-etri merged commit 48aeea7 into master Oct 23, 2026
9 checks passed
@gspark-etri
gspark-etri deleted the improve/verified-ecosystem-20261023 branch October 23, 2026 03:51
gspark-etri added a commit to ai-computing/hetero-llm-d that referenced this pull request Oct 23, 2026
Reinstalling the ai-rm manifests reset controller-owned placement data,
and a successful Deployment patch followed by a failed KEDA patch could
prevent all later retries. Bootstrap the placement ConfigMap only when
absent, reconcile each object's generation and actual state
independently, preserve newer generations, and abort on KEDA
discovery/read failures before patching.

Validation:
- Linux offline checks passed: 16 placement/EPP tests, 5 installer
tests, and 1 model-store discovery test; EPP configs and Bash syntax
checks passed. Regressions were observed before fixes and independent
review completed.
- Actual Kubernetes/KEDA 2.19.0 API validation used a paused
ScaledObject and zero-replica Deployment in an isolated namespace. The
Deployment patch succeeded; the following KEDA patch intentionally
received HTTP 403. Replanning emitted only the unfinished ScaledObject,
retry reduced maxReplicaCount 4→2, the Deployment generation stayed
unchanged, and the final plan was empty.
- Namespace-scoped permissions and revocation were verified. Temporary
test resources were deleted.

The required local research report, STATUS/event updates, and sanitized
API evidence are included in experiments/2026-10-23-placement-api.md and
experiments/data/placement-api-20261023.json. The companion chart GET
permission fix is in ai-computing/ai-rm#53. No production rollout or
live inference-serving benchmark was performed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant