Skip to main content

QODY CI gate — build-validation policy blocking (MC #106804, 2026-08-05)

QODY CI gate — build-validation policy sada BLOKIRA merge (MC #106804)

Datum: 2026-08-05 · Izvršio: FlowForge (dispatch John) · Nezavisno verifikovao: verifier agent (6/6 PASS, živi REST pozivi)

Šta je promijenjeno

  • Azure DevOps, repo QODY, grana refs/heads/main: Build validation policy prebačena s isBlocking=false na isBlocking=true (policy id=2, revision 1→2).
  • Od sada se nijedan PR ne može completati dok "CI Gates" validation build ne prođe — ručni complete prije builda vraća GitPullRequestUpdateRejectedByPolicyException.

Zašto

2026-08-03 je PR #301 (payment fix) mergovan ručno bez ijednog uspješnog validation builda — policy je postojao ali je bio savjetodavan (isBlocking=false). Uz to je CEO primao ~30 "canceled build" mailova jer agentska velocity mergeva otkazuje superseded buildove. Puna istraga: MC #106804, forge dokument ~/system/prompts/forged/106804.md.

Živi dokaz (ne "green build" nego stvarni pokušaj proboja)

  • Probni PR #316: pokušaj complete PRIJE builda → ODBIJEN policy-jem; PR abandonovan, probni branch obrisan, main HEAD netaknut (956f9f35).
  • Bypass audit: nijedan ACE na repou nema PolicyExempt/PullRequestBypassPolicy.
  • Evidence: ~/system/evidence/106804/{d0-final,d2,peer-verify}/ (before/after JSON, response JSON-i, nezavisni peer verdikt sa sha256 hashevima).

Šta NIJE urađeno (svjesno) i zašto

  1. Reviewer policy (min 1, bez self-approve) NIJE upaljena: org ima samo jedan ljudski ADO identitet (Alem Basic — svi agenti rade kroz njegov PAT), pa bi obavezan nezavisni reviewer blokirao 100% mergeva. Čeka drugi identitet → vezano za Entra povezivanje (#106841, pauzirano CEO odlukom "Ne" 2026-08-05).
  2. 2. self-hosted parallel slot NIJE kupljen: ADO org nema podešen billing (nije vezan za Azure subscription, korijen: org nije povezan s Entra tenantom). CEO odluka: ne raditi Entra plan za sada. QODY CI ovim NIJE pogođen (ide na MS-hosted pool); Bilko cancel-lanac se rješava throttlingom (#106809).

Otvoreni rizici (za buduće hardening odluke)

  • Alemov PAT identitet drži EditPolicies + ManagePermissions na QODY repou → isti identitet koji merga može i ukinuti policy. Gate je stvaran, ali samoodbranjiv nije — pravi fix traži odvojene identitete (Entra).
  • Company Mesh peer-verify infrastruktura (lokalni Ollama) je srušena — peer-verifikacija za ovaj task rađena native-agent putem; Ollama treba restart/popravku.

Povezani taskovi

#106804 (ovaj), #106809 (Bilko main validacija), #106810 (Rollback-Rehearsal istraga), #106811 (mail digest — TEK nakon punog merge ciklusa s novim gate-om), #106841 (Entra, pauzirano), #106802 (slot, blocked), #106815 (PAT rotacija).