Repository navigation
Bound CSI materialization and preserve lease ownership - #67
Merged
Merged
Conversation
gspark-etri
added a commit
to ai-computing/ai-rm
that referenced
this pull request
Oct 23, 2026
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.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A failed CSI volume-record write could leave an unused artifact leased forever, and concurrent distinct artifacts could multiply the node's large pull working sets. Roll back newly created leases on ordinary acquisition failure, reject rebinding published volume IDs, and bound active distinct pulls with
onggi csi --pulls(default 1), preserving same-digest retries.Update English/Korean READMEs and component metadata to distinguish P2 artifact delivery from planned compile/prefetch controllers and device-memory delta loading.
Validation:
ONGGI_TEST_MOUNTS=1 go test -race ./pkg/csi -count=1 -vpassed all 22 cases with no skips.See docs/validation-2026-10-23.md. The live test invokes the CSI node service directly in a container; kubelet registration, host mount propagation, production rollout, and NPU-memory updates remain untested. Crash-orphan lease reconciliation remains conservative.