NS
NEWSAINT
ai-eng• 8 MIN READ•21 September 2026

CodeMidas 2026: Arsitektur Penskalaan Lingkungan RL Coding Agent Langsung dari Kode Sumber (Code Itself), 6-Container Verification, dan Analisis Perilaku Eksplorasi Multi-Turn

Bedah arsitektur riset frontier Xiaomi LLM Core, Peking University & HKU arXiv:2609.22068 (Bowen Ye, Lei Li, Shicheng Li, Tong Yang, Fuli Luo, September 2026): Mengapa post-training RL untuk AI coding agent selama ini mengalami hambatan penskalaan akibat ketergantungan pada issue dan PR GitHub yang bising? CodeMidas merevolusi paradigma sintesis lingkungan eksekusi dengan mengubah implementasi fungsional repositori open-source langsung menjadi executable RL environments hanya bermodalkan source code. Dilengkapi pipeline agentic 4 tahap, relaksasi asersi anti-overspecification, protokol 6-container execution consistency check, dan adversarial leakage probing. Dataset 5.545 tugas dari 3.185 repositori di 23 bahasa pemrograman terbukti mendongkrak skor MiMo-V2.5 via GRPO: DeepSWE (+11.7 pp), ProgramBench (+17.0 pp), dan Terminal-Bench v2.1 (+8.5 pp), sekaligus memicu pergeseran perilaku eksplorasi dan verifikasi mandiri yang adaptif.

N
Ervareza Naurian Novantila
Lead Architect & Founder NEWSAINT
Fact-Checked & Verified
Ilustrasi Arsitektur Teknis 16:9 CodeMidas 2026: Arsitektur Penskalaan Lingkungan RL Coding Agent Langsung dari Kode Sumber (Code Itself), 6-Container Verification, dan Analisis Perilaku Eksplorasi Multi-Turn

Reinforcement Learning (RL) berbasis reward hasil eksekusi (seperti GRPO dan PPO) telah menjadi pilar utama peningkatan kecerdasan model penalaran frontier (OpenAI o-series, DeepSeek-R1, Gemini 2.5 Flash Thinking). Namun, ketika RL diterapkan pada ranah Coding Agents yang harus menyelesaikan pekerjaan rekayasa perangkat lunak multi-turn berskala repositori nyata (SWE), komunitas riset menghadapi bottleneck struktural: kelangkaan lingkungan latihan yang beragam, reliabel, dan terisolasi dari kebocoran.

TEMUAN UTAMA FRONTIER AI (ARXIV:2609.22068)

Makalah terbaru dari Xiaomi LLM Core berkolaborasi dengan Peking University dan The University of Hong Kong (HKU) memperkenalkan CodeMidas. Mengabaikan dogma lama yang mengandalkan riwayat Pull Request dan issue GitHub (seperti SWE-bench dan SWE-smith), CodeMidas mampu menyintesis lingkungan latihan RL yang dapat dieksekusi langsung dari kode sumber terbuka yang sudah ada (Code Itself). Dengan dataset 5.545 tugas dari 3.185 repositori lintas 23 bahasa pemrograman, model MiMo-V2.5 yang dilatih dengan GRPO mencatat lonjakan performa dramatis: DeepSWE +11.7 pp (dari 10.0% ke 21.7%), ProgramBench +17.0 pp, dan Terminal-Bench v2.1 +8.5 pp, didukung oleh protokol validasi 6-Container Execution Consistency dan Adversarial Leakage Probing.

1. Kegagalan Paradigma Konvensional: Mengapa GitHub Issues & PR Menjadi Jebakan?

Hingga pertengahan 2026, hampir seluruh lingkungan benchmark dan dataset latihan coding agent (misalnya SWE-bench, SWE-fixer, SWE-rebench) dibangun berdasarkan relik pengembangan perangkat lunak (development artifacts), yaitu pasangan Issue Description dan Merged Pull Request. Paradigma ini memiliki 4 cacat fatal:

  • Skalabilitas Terbatas (Low Yield Rate): Dari jutaan repositori GitHub, hanya sebagian kecil yang memiliki issue terdefinisi rapi dengan reproduksi bug deterministik dan unit test terisolasi. Upaya otomatisasi scraping PR sering menghasilkan tingkat kegagalan lingkungan di atas 70%.
  • Distribusi Domain & Bahasa yang Sangat Bias: Repositori yang ramah otomasi issue didominasi oleh ekosistem Python (data science & web backend). Repositori sistem berkinerja tinggi (Rust, C++, Go, Zig) dan bahasa enterprise (Java, Kotlin, Swift) hampir tidak terwakili.
  • Asersi Pengujian yang Terlalu Rapuh (Brittle Assertions): Unit test bawaan PR sering kali memeriksa struktur internal privat yang tidak esensial bagi fungsi sistem, atau mengandalkan string pesan kesalahan yang sangat spesifik (incidental overspecification).
  • Pencemaran Data & Pretraining Memorization: Model frontier telah melihat jutaan PR publik selama fase pretraining, sehingga skor tinggi sering kali merupakan cerminan hafalan (memorization) commit diff alih-alih penalaran agen yang sesungguhnya.

2. Arsitektur 4-Tahap CodeMidas: Membedah Sumber Kode Menjadi Sandbox RL

CodeMidas menyelesaikan dilema ini dengan mengambil pendekatan terbalik: kode sumber fungsional yang sudah matang adalah spesifikasi kebenaran (ground truth) terbaik. Tanpa memerlukan issue tertulis atau commit lama, agen pembangun CodeMidas mengalokasikan agentic compute pada 4 fase terstruktur:

Fase Pipeline Mekanisme Kerja Inti Kriteria Kelulusan (Gate Invariant)
§ 3.1 Task Design & Adaptation Menganalisis AST dan metadata build untuk mengisolasi fungsionalitas ber-entrypoint publik (CLI, Pure Library, Stateful API). Menghapus modul implementasi inti sambil menjaga shared scaffolding. Pemisahan bersih antara target implementation dan context runtime. Reference solution disimpan terpisah sebagai ground truth oracle.
§ 3.2 Execution-Grounded Tests Menjalankan public entry points pada reference solution untuk mencatat output nyata. Mengaudit asersi untuk menghapus batasan incidental (urutan kamus, kata pesan error) menjadi pure behavioral assertions. Tidak ada ketergantungan pada private symbols. Semua test cases lulus 100% pada reference solution.
§ 3.3 6-Container Consistency Check Menjalankan runtime bersih pada 6 container terisolasi: 2 container pada starting codebase (kode yang dihapus) dan 4 container pada reference solution. Deterministic Fail-to-Pass: 2 Starting Runs WAJIB Gagal (0/2 pass), 4 Reference Runs WAJIB Lulus (4/4 pass). Flaky tests dibuang seketika.
§ 3.4 Post-Rollout Filtering Adversarial agent menyisir disk sandbox untuk mengeksploitasi residual artifacts (.pyc, cache, build temp). Reviewer agent memvalidasi false-positives/negatives pada 4 percobaan rollout model solver. Zero exploitable leakage. Membuang tugas yang trivial (all-pass) atau mustahil (all-fail) untuk menjaga gradien informatif saat RL.

3. Implementasi Kode: CodeMidas Environment Synthesizer & Verifier

Berikut adalah arsitektur verifier dan harness evaluasi deterministik yang mengimplementasikan protokol konsistensi 6-container dan audit adversarial leakage:

python / codemidas_harness.py 6-CONTAINER CONSISTENCY VERIFIER
"""
CodeMidas Architecture: Agentic Synthesis of Coding RL Environments Directly from Source Code.
Berdasarkan Makalah Frontier arXiv:2609.22068 (Xiaomi LLM Core, PKU, HKU, September 2026).

Komponen Inti:
1. Codebase Scope Slicer: Memisahkan fungsionalitas publik & dependensi internal.
2. Anti-Overspecification Test Reviewer: Menghapus pengecekan incidental (string formatting/order) 
   menjadi murni behavioral assertion.
3. 6-Container Execution Consistency Validator: Menjalankan 2x starting-state (keduanya WAJIB gagal) 
   dan 4x reference-state (keempatnya WAJIB lulus).
4. Adversarial Leakage Prober: Mengecek residual artifact pada disk/cache yang berpotensi 
   dieksploitasi solver agent untuk bypass coding.
"""

import os
import shutil
import subprocess
from dataclasses import dataclass, field
from enum import Enum
from typing import Dict, List, Optional, Tuple

class TaskInterfaceType(Enum):
    CLI_TOOL = "cli_tool"
    PURE_FUNCTION = "pure_function"
    STATEFUL_API = "stateful_api"

@dataclass
class CodeMidasTaskSpecification:
    task_id: str
    codebase_name: str
    language: str
    domain: str
    interface_type: TaskInterfaceType
    task_statement: str
    public_entry_points: List[str]
    reference_solution_diff: str
    starting_codebase_path: str
    reference_codebase_path: str
    generated_test_suite_path: str

@dataclass
class ExecutionConsistencyResult:
    starting_runs_passed: int # Target: 0 (Semua 2 run harus gagal)
    starting_runs_failed: int # Target: 2
    reference_runs_passed: int # Target: 4 (Semua 4 run harus lulus)
    reference_runs_failed: int # Target: 0
    is_deterministic: bool

class AntiOverspecificationVerifier:
    """
    Meninjau setiap asersi uji agar tidak memaksakan implementasi privat atau
    formatting teks incidental yang tidak tertuang pada spesifikasi tugas.
    """
    @staticmethod
    def audit_assertion(assertion_ast_node: dict, statement_spec: str) -> bool:
        forbidden_patterns = [
            "__private_member",
            "exact_error_string_match",
            "dict_keys_ordering_strict",
            "internal_cache_dict_inspect"
        ]
        for pattern in forbidden_patterns:
            if pattern in assertion_ast_node.get("source_code", ""):
                # Tolak jika asersi memeriksa internal privat repositori
                return False
        return True

class CodeMidasEnvironmentHarness:
    def __init__(self, task: CodeMidasTaskSpecification):
        self.task = task
        self.base_container_image = f"newsaint-rl-sandbox:{task.language.lower()}-v1"

    def run_isolated_container(self, codebase_path: str, test_path: str, container_idx: int) -> Tuple[bool, str]:
        """
        Menjalankan pengujian dalam isolated container runtime (gVisor/bwrap sandbox).
        Mengembalikan verdict sukses (True/False) dan stdout/stderr logs.
        """
        # Simulasi eksekusi sandboxed deterministic
        cmd = [
            "docker", "run", "--rm",
            "--network", "none",
            "--memory", "4g",
            "--cpus", "2.0",
            "-v", f"{os.path.abspath(codebase_path)}:/workspace/repo:ro",
            "-v", f"{os.path.abspath(test_path)}:/workspace/tests/verifier.py:ro",
            self.base_container_image,
            "python3", "-m", "pytest", "/workspace/tests/verifier.py"
        ]
        try:
            res = subprocess.run(cmd, capture_output=True, text=True, timeout=120)
            return (res.returncode == 0, res.stdout)
        except subprocess.TimeoutExpired:
            return (False, "EXECUTION_TIMEOUT_EXCEEDED")
        except Exception as e:
            return (False, str(e))

    def evaluate_six_container_consistency(self) -> ExecutionConsistencyResult:
        """
        Protokol 6-Container CodeMidas:
        - 2 Container dijalankan dengan kode awal (starting codebase). Keduanya WAJIB gagal.
        - 4 Container dijalankan dengan solusi referensi. Keempatnya WAJIB lulus.
        """
        starting_fails = 0
        starting_passes = 0
        for i in range(2):
            passed, _ = self.run_isolated_container(
                self.task.starting_codebase_path,
                self.task.generated_test_suite_path,
                container_idx=i
            )
            if passed:
                starting_passes += 1
            else:
                starting_fails += 1

        reference_passes = 0
        reference_fails = 0
        for i in range(4):
            passed, _ = self.run_isolated_container(
                self.task.reference_codebase_path,
                self.task.generated_test_suite_path,
                container_idx=i + 2
            )
            if passed:
                reference_passes += 1
            else:
                reference_fails += 1

        is_deterministic = (starting_fails == 2 and reference_passes == 4)
        return ExecutionConsistencyResult(
            starting_runs_passed=starting_passes,
            starting_runs_failed=starting_fails,
            reference_runs_passed=reference_passes,
            reference_runs_failed=reference_fails,
            is_deterministic=is_deterministic
        )

    def probe_adversarial_leakage(self, sandbox_workspace_path: str) -> bool:
        """
        Adversarial Leakage Audit: Memastikan tidak ada byte-compiled (.pyc), cache,
        atau sisa log konstruksi yang membeberkan kode solusi referensi kepada agen RL.
        """
        forbidden_leak_indicators = [
            ".git/logs",
            "__pycache__",
            ".pytest_cache",
            "dist/",
            "build/",
            ".reference_backup"
        ]
        for root, dirs, files in os.walk(sandbox_workspace_path):
            for d in dirs:
                full_dir = os.path.join(root, d)
                if any(ind in full_dir for ind in forbidden_leak_indicators):
                    return True # Kebocoran ditemukan!
            for f in files:
                if f.endswith((".pyc", ".so", ".o", ".dylib")):
                    return True # Residual binary ditemukan!
        return False

4. Evaluasi Benchmark Eksternal: Dari DeepSWE hingga Terminal-Bench

Tim peneliti mengevaluasi model pondasi MiMo-V2.5 yang dilatih menggunakan algoritma Group Relative Policy Optimization (GRPO) dengan binary execution reward pada 5.545 tugas CodeMidas (batch size 32, 32 rollout per tugas). Model diuji secara ketat pada 5 benchmark eksternal yang sepenuhnya terisolasi (disjoint) dari data latihan:

Benchmark Eksternal Domain Evaluasi MiMo-V2.5 (Initial Policy) MiMo-V2.5 (CodeMidas RL) Peningkatan Absolut
DeepSWE v1.1 Real-World Repository Issue Repair 10.00% 21.70% +11.70 pp (> 2.1x Lipat)
ProgramBench Whole-Program Multi-Module Construction 4.50% (Almost Solved) 21.50% +17.00 pp (> 4.7x Lipat)
Terminal-Bench v2.1 Autonomous Bash & System CLI Administration 63.70% 72.20% +8.50 pp
RepoZero C2Rust Cross-Language Compilation & Translation Baseline Rate Enhanced Policy +6.40 pp
SWE-bench Pro Production Hard SWE Tasks Baseline Rate Enhanced Policy +4.80 pp

5. Analisis Ablasi: Mengapa 5.000 Tugas Berkualitas Mengalahkan 8.000 Tugas Vanilla?

Salah satu eksperimen paling mencerahkan dari makalah ini adalah perbandingan antara volume mentah (raw quantity) versus rigoritas verifikasi lingkungan (verification quality). Peneliti membandingkan 4 kelompok data:

  • Vanilla 8k (Unfiltered): ~8.000 tugas yang diekstrak tanpa pembersihan lingkungan (environment cleaning), tanpa protokol 6-container consistency, dan tanpa penyaringan adversarial leakage.
  • CodeMidas 1k (Cleaned): 1.000 tugas acak berfilter penuh.
  • CodeMidas 3k (Cleaned): 3.000 tugas acak berfilter penuh.
  • CodeMidas 5k (Full Dataset): 5.545 tugas berfilter penuh.

Hasilnya sangat tegas: CodeMidas 3k yang bersih berhasil mengalahkan Vanilla 8k di seluruh benchmark. Terlebih lagi, CodeMidas 5k melampaui Vanilla 8k dengan selisih +4.59 pp pada DeepSWE dan +4.49 pp pada CodeMidas Val. Ini membuktikan bahwa dalam RL coding agent, noise pada reward verifier dan residual leakage merusak gradien optimasi secara permanen, sehingga sanitasi lingkungan jauh lebih penting daripada sekadar menambah jumlah repositori mentah.

6. Analisis Trajectory: Bagaimana Perilaku Agen Berubah Selama Pelatihan RL?

Analisis log interaksi agen antara checkpoint awal (early rollouts) dan checkpoint akhir (late rollouts) mengungkap 3 pergeseran perilaku fundamental:

Codebase Exploration
27.2 → 40.1 (+12.9 calls)

Panggilan tool read_file dan search_files sebelum agen melakukan modifikasi kode pertama meningkat sebesar 47.4%. Agen belajar untuk memetakan dependensi sistem terlebih dahulu sebelum tergesa-gesa menulis kode.

Pre-Edit Drafting Ratio
0.358 → 0.629 (+75.7%)

Proporsi cuplikan kode yang telah dirancang terlebih dahulu di dalam Chain-of-Thought (CoT) sebelum dieksekusi melalui tool write_file/patch melonjak signifikan. Agen berpikir lebih mendalam sebelum memanipulasi disk.

Verification Diversity
2.03 → 2.53 (+24.6%)

Jumlah perintah verifikasi mandiri yang berbeda (unit test custom, assertion script temporer, CLI flag check) setelah edit kode terakhir meningkat, menurunkan tingkat submit prematur secara drastis.

7. Cetak Biru untuk Platform Engineering & Autonomous Agent Harness

Bagi tim rekayasa platform yang mengembangkan autonomous coding agent (misalnya Hermes Agent, OpenCode, Claude Code, atau internal AI coding sandbox), CodeMidas menawarkan prinsip-prinsip operasional krusial:

  1. Gunakan Kode Sumber sebagai Basis Task Synthesis: Jangan membatasi pipeline data pada GitHub issues. Sintesis lingkungan dari fungsionalitas publik repositori internal perusahaan untuk menghasilkan ribuan skenario latihan berorientasi bisnis yang spesifik.
  2. Wajibkan Multi-Container Verification: Sebelum memasukkan environment ke dalam antrean RL atau evaluasi agen, jalankan cek determinisme: run awal harus gagal secara konsisten, dan solusi referensi harus lulus 100% tanpa flakiness.
  3. Audit Kebocoran Residu Secara Adversarial: Bersihkan seluruh artifact kompilasi, build cache, dan file temporer. Agen RL memiliki kecenderungan tajam untuk mengeksploitasi celah disk (reward hacking) daripada mempelajari logika algoritma yang diharapkan.

Referensi & Sumber Terverifikasi

Butuh Arsitektur Web & AI Berkualitas Tinggi?

Tim engineering NEWSAINT siap membantu merancang website berkecepatan tinggi, sistem AI autonomous, dan solusi SaaS terukur untuk bisnis Anda.

Artikel Terkait Lainnya

Ilustrasi Arsitektur Teknis 16:9 HyperBrowseComp 2026: Benchmark Multilingual & Multimodal Stress Test untuk Autonomous Web-Browsing Agents, Evaluasi 13 Bahasa, dan Analisis Bottleneck Retrieval Harness

HyperBrowseComp 2026: Benchmark Multilingual & Multimodal Stress Test untuk Autonomous Web-Browsing Agents, Evaluasi 13 Bahasa, dan Analisis Bottleneck Retrieval Harness

Analisis arsitektur sistem frontier riset evaluasi autonomous browsing agent (arXiv:2610.03574, Oktober 2026 — Alham Fikri Aji, Faiz Rizki Ramadhan, Zayd M. K. Zuhri, Seung Hun Eddie Han, Ryandito Diandaru, dkk. MBZUAI, Mila, Inception AI, Alibaba, AI Singapore): Mengapa tolok ukur browsing konvensional (GAIA, BrowseComp) mengalami saturasi parametrik dan bias monolingual. Memperkenalkan HyperBrowseComp, stress test 423 kueri faktual bernilai tunggal lintas 13 bahasa (termasuk Bahasa Indonesia 9.2% dan Jawa 8.3%) dan 8 modalitas (Video 39%, PDF/OCR 29.8%, Aritmetika 28.1%, Gambar 18.4%, Peta 9.7%). Evaluasi empiris 5 model frontier (Gemini 3.7 Flash, Gemini 3.1 Pro, GPT-5.6 Sol/Terra/Luna) lintas 3 harness retrieval (Provider Built-in, Exa Search API, OWL Browser Harness) mengungkap fenomena Harness Inversion (Exa mendongkrak GPT-5.6 Sol +7.56% namun mendegradasi Gemini 3.7 Flash -9.46%), 93 kegagalan fatal runtime tool-calling pada OWL, serta 57.68% pertanyaan tanpa solusi (shared failure) pada seluruh model frontier.

Ilustrasi Arsitektur Teknis 16:9 VenusRL 2026: Arsitektur Disaggregated Agentic RL dengan Priority-Aware Scheduling, Akselerasi Training 4.24x, dan Pangkas 89% Biaya Sandbox

VenusRL 2026: Arsitektur Disaggregated Agentic RL dengan Priority-Aware Scheduling, Akselerasi Training 4.24x, dan Pangkas 89% Biaya Sandbox

Analisis arsitektur sistem frontier riset Agentic RL (arXiv:2610.03286, Mingjun Zhang, Yucheng Li, Menghao Zhang, Shuyong Zhu, Ping Zhang — Oktober 2026): Mengapa sistem pelatihan RL agen multi-turn konvensional (Slime, RollFlash) mengalami bottleneck sistemik fatal akibat barrier penyelesaian grup GRPO/PPO dan alokasi statis memori sandbox microVM. Memperkenalkan VenusRL, sistem agentic RL terdisagregasi penuh pertama yang memadukan Priority-Aware Action Scheduler dan Environment Resource Manager. Melalui heuristik prediksi panjang lintasan, Trajectory-Aware Radix Cache, alokasi memori dinamis adaptif, serta intra-group page sharing berbasis aliasing page table entry (PTE) dan copy-on-write, VenusRL meraih akselerasi training throughput hingga 4.24x, meningkatkan densitas sandbox per node hingga 905% (dari 100 ke 905 sandbox pada node 400GB), dan memangkas biaya infrastruktur non-GPU hingga 89% pada pengujian kluster 32 GPU Hopper dengan Qwen3-32B di SWE-agent OpenSWE.

Ilustrasi Arsitektur Teknis 16:9 ActKV 2026: Arsitektur Action-Guided KV Cache Management pada Agentic LLM Inference, Pangkas 74% Memori dengan 98.5% Akurasi, dan Akselerasi Throughput hingga 3.97x

ActKV 2026: Arsitektur Action-Guided KV Cache Management pada Agentic LLM Inference, Pangkas 74% Memori dengan 98.5% Akurasi, dan Akselerasi Throughput hingga 3.97x

Analisis mendalam arsitektur sistem operasi frontier agent inference (arXiv:2609.31395, University of Science and Technology of China - USTC): Mengapa kompresi KV cache konvensional (StreamingLLM, SnapKV, R-KV) gagal total pada agen otonom karena menyamaratakan seluruh token. Memperkenalkan ActKV, framework kompresi KV cache pertama yang dirancang khusus untuk agentic LLM inference. Melalui tiga inovasi arsitektural—Action-Oriented Eviction berbasis attention-aware LRFU, Confidence-Driven Adaptive Budget Allocation berbasis sinyal intrinsik LLM & trend detection, serta Page-Aware In-Place Compaction Kernel tanpa alokasi workspace ekstra—ActKV mempertahankan 98.53% akurasi FullKV dengan hanya 25.98% peak memory, serta melejitkan token throughput hingga 3.97x dan task throughput hingga 3.58x pada model Qwen3-30B, Qwen3-235B, GPT-OSS-20B, dan GPT-OSS-120B.