Rsync বিপর্যয় এবং AI ইনফ্রাস্ট্রাকচার ঝুঁকি
rsync-এর একজন মেইনটেইনার একটি রিলিজ পাঠাতে Claude-এর সাহায্য নিয়েছিলেন। সেই রিলিজটি 'absolute path handling' নষ্ট করে দেয়।
Rsync লক্ষ লক্ষ সার্ভারে চলে। এটি ব্যাকআপ, ডিপ্লয়মেন্ট এবং মিররিং পরিচালনা করে। যদি rsync ব্যর্থ হয়, তবে ব্যাকআপ বন্ধ হয়ে যায়। ডেটা সিঙ্ক হয় না। যেহেতু এই টুলটি সব জায়গায় ব্যবহৃত হয়, তাই এর ক্ষতির পরিমাণ বিশাল।
এই বাগটি AI-এর সহায়তায় করা একটি সিকিউরিটি প্যাচ থেকে এসেছিল। এটি AI কোডিং টুলগুলোর একটি বড় সমস্যাকে সামনে এনেছে।
AI অ্যাসিস্ট্যান্টরা প্যাটার্নের ওপর ভিত্তি করে কাজ করে। তারা নতুন কোড বা বয়লারপ্লেট (boilerplate) লেখার ক্ষেত্রে দক্ষ। কিন্তু স্থিতিশীল ইনফ্রাস্ট্রাকচার কোডকে অপরিবর্তিত থাকতে হয়। এর আচরণের কোনো পরিবর্তন হওয়া উচিত নয়।
Rsync-এর কোডটি উদ্দেশ্যপ্রণোদিতভাবেই কিছুটা অদ্ভুত দেখায়। এটি বহু বছর আগে প্রোডাকশনে পাওয়া বিভিন্ন 'edge case' সামলানোর জন্য তৈরি করা হয়েছে। একটি AI এই অদ্ভুত কোডটি দেখে সেটি উন্নত করার চেষ্টা করে। কিন্তু এটি ব্যবহারকারীদের সাথে থাকা অন্তর্নিহিত চুক্তিগুলো (implicit contracts) বুঝতে পারে না।
AI টুলটিকে নষ্ট করার কোনো উদ্দেশ্য রাখেনি। এটি কেবল জানত না যে, কোনো কিছু পরিবর্তন না করাই ছিল প্রধান অগ্রাধিকার।
আমি প্রতিদিন AI ব্যবহার করি। এটি আমাকে দ্রুত লিখতে এবং পরীক্ষা-নিরীক্ষা করতে সাহায্য করে। আমি AI-এর বিরোধী নই। কিন্তু আমি ইনফ্রাস্ট্রাকচার কোডের ক্ষেত্রে কখনোই AI-কে গুরুত্বপূর্ণ সিদ্ধান্ত নিতে দিই না। আমি প্রতিটি AI সাজেশনকে একজন জুনিয়র ডেভেলপারের কমেন্টের মতো বিবেচনা করি।
বিপদটি হলো বিশ্বাসের ক্রমবিন্যাস (trust gradient)। যদি একটি AI আপনাকে দশটি সঠিক উত্তর দেয়, তবে আপনি একাদশতম উত্তরটির ওপর অতিরিক্ত ভরসা করতে শুরু করেন। আপনি সেটি কম যাচাই করেন এবং দ্রুত অনুমোদন দিয়ে দেন।
এটি হলো 'context collapse'-এর সমস্যা। AI একটি উইকেন্ড প্রজেক্ট এবং ত্রিশ বছরের পুরনো একটি Unix ইউটিলিটিকে একই আত্মবিশ্বাসের সাথে দেখে। এটি যে কোডটি স্পর্শ করছে তার গুরুত্ব সম্পর্কে এটি জানে না।
মেইনটেইনারদের ওপরই দায়িত্ব থাকে। কিন্তু আমাদের নতুন কিছু সুরক্ষা কবচ (guardrails) প্রয়োজন।
AI-সহায়তা প্রাপ্ত ডেভেলপমেন্টের জন্য বিভিন্ন ঝুঁকির স্তরের জন্য ভিন্ন ভিন্ন নিয়মের প্রয়োজন। কিছু কোড ভেঙে পড়লে তার মূল্য অনেক বেশি দিতে হয়। এর মধ্যে rsync, OpenSSL এবং ডেটাবেস ড্রাইভার অন্তর্ভুক্ত।
rsync-এর এই ঘটনাটি ছিল একটি সতর্কবার্তা। কোনো ডেটা হারিয়ে যায়নি, তবে এটি দেখায় কেন আমাদের সতর্ক থাকা উচিত।
AI ব্যবহার করা বন্ধ করবেন না। পরিবর্তে, আরও উন্নত সহজাত প্রবৃত্তি (instincts) গড়ে তুলুন। কখন যন্ত্রটিকে অবিশ্বাস করতে হবে তা জানুন।
কোন পর্যায়ে আপনি AI সাজেশনগুলোর ওপর বিশ্বাস করা বন্ধ করবেন? কখন একটি কোডবেস এতটাই গুরুত্বপূর্ণ হয়ে ওঠে যে সেখানে অত্যন্ত সতর্ক বা 'প্যারানয়েড' রিভিউ ছাড়া আর কিছু চলে না?
Source: https://dev.to/adioof/the-rsync-disaster-proves-ai-isnt-ready-for-infrastructure-code-4154
Optional learning community: https://t.me/GyaanSetuAi