Ekspansi panjang runtun terbatas
Perluas pasangan byte dan jumlah hanya setelah memeriksa batas keluaran total.
def expand_runs(runs, limit):
if type(limit) is not int or limit < 0:
raise ValueError("limit.invalid")
total = 0
for value, count in runs:
if type(value) is not int or not 0 <= value <= 255:
raise ValueError("byte.invalid")
if type(count) is not int or count <= 0:
raise ValueError("count.invalid")
total += count
if total > limit:
raise ValueError("output.limit")
return bytes(value for value, count in runs for _ in range(count))Tinjau sebelum menerapkan
Bandingkan perilaku sebenarnya dengan hasil yang diharapkan. Jika pemeriksaan gagal, cari penyebabnya sebelum membuat perubahan lain.
Model
Atur endpoint kompatibel OpenAI atau Anthropic dengan URL dasar dan kunci API jika diperlukan. Uji koneksi. Server model lokal harus berjalan; alat jarak jauh dapat mengirim data secara terpisah.
Proyek
Tolak hitungan nol atau negatif, nilai byte salah dan total berlebih tanpa mengubah daftar asli.
def expand_runs(runs, limit):
if type(limit) is not int or limit < 0:
raise ValueError("limit.invalid")
total = 0
for value, count in runs:
if type(value) is not int or not 0 <= value <= 255:
raise ValueError("byte.invalid")
if type(count) is not int or count <= 0:
raise ValueError("count.invalid")
total += count
if total > limit:
raise ValueError("output.limit")
return bytes(value for value, count in runs for _ in range(count))Tampilkan batas perluasan data dengan jelas dalam tinjauan kode
OctetWeave adalah perangkat lunak pemrograman AI untuk mengerjakan perubahan parser dan transformasi data dalam proyek yang ada. Ruang kerja Windows mendekatkan folder proyek dan percakapan model dengan kode yang perlu diperiksa. Mulailah dengan menjelaskan masukan yang diterima, keluaran yang diharapkan, dan titik ketika data terlalu besar harus ditolak. Detail tersebut membantu usulan patch menjawab persyaratan aplikasi yang nyata.
Perluasan run-length berbatas dalam runs.py memberikan contoh. Anda dapat meminta asisten memeriksa apakah panjang hasil perluasan diperiksa sebelum keluaran dibuat, lalu meninjau cara jumlah yang tidak valid dilaporkan kepada pemanggil. Ini adalah ilustrasi tugas pemrograman, bukan fasilitas dekompresi bawaan OctetWeave. Hasil yang berguna adalah perubahan yang perilaku validasi dan alokasinya dapat Anda periksa bersama parser di sekitarnya.
Lanjutkan tinjauan dengan pengujian proyek untuk run biasa, jumlah rusak, dan data pada batas yang disepakati. Periksa cara konsumen menangani penolakan karena aturan validasi baru dapat mengubah lebih dari transformasi itu sendiri. Hubungkan model tanpa filter hanya jika tersedia melalui endpoint kompatibel OpenAI atau Anthropic yang didukung, dengan kredensial jika diperlukan. Kebijakan model, alat server, dan kapasitas konteks tetap mengatur koneksi tersebut; memilihnya tidak memberikan jaminan sumber daya untuk kode yang diusulkannya.
Menyiapkan perubahan parser dengan batas yang jelas
- Dari mana batas keluaran seharusnya berasal?
Tentukan berdasarkan persyaratan aplikasi dan kendala operasional, alih-alih menerima saran model yang sewenang-wenang. Identifikasi pihak yang memasok batas dan cara penolakan dilaporkan, lalu tinjau keputusan itu pada parser maupun pemanggilnya.
- Apa yang perlu disertakan dalam pengujian batas?
Gunakan masukan biasa, masukan tepat pada batas yang diterima, dan masukan yang melampauinya. Tambahkan nilai rusak yang sesuai dengan format. Verifikasi perilaku kegagalan yang diharapkan serta keluaran yang berhasil.
- Bisakah OctetWeave menyertifikasi parser terhadap kehabisan sumber daya?
Tidak ada klaim sertifikasi tersebut. Anda dapat memeriksa usulan kode dan membahas pengujian dalam ruang kerja, tetapi penilaian penggunaan sumber daya memerlukan pemeriksaan implementasi serta lingkungan eksekusi sebenarnya pada kondisi yang relevan bagi aplikasi.
- Mengapa memeriksa pemanggil setelah menambahkan validasi?
Pemanggil mungkin mengharapkan setiap masukan menghasilkan data dan salah menangani penolakan baru. Tinjau propagasi kesalahan dan perilaku yang terlihat oleh pengguna agar batas memperbaiki kontrak aplikasi tanpa mengubah masukan tidak valid menjadi kegagalan tanpa penjelasan.
OctetWeave · Diperbarui 2026-10-25