খালি পেলোডের পাঠ: ইস্পোর্টস ডেটার অখণ্ডতা, ব্লকচেইন যাচাই আর তার সীমারেখা
core_answer: স্টেজ-২ ইস্পোর্টস ডিপ অ্যানালাইসিস রিপোর্টের স্টেজ-১ ইনপুট সম্পূর্ণ ফাঁকা ছিল, তাই নয়টি বিশ্লেষণ-মাত্রাই অপর্যাপ্ত তথ্য হিসেবে চিহ্নিত হয়েছে। রিপোর্টের একমাত্র নিশ্চিত ফল হলো পাইপলাইনের ব্যর্থতা, যা উৎসের ইউআরএল ও বডি টেক্সট নিয়ে পুনরায় এক্সট্রাকশন চালিয়ে ঠিক করতে হবে।
key_facts: স্টেজ-১ আউটপুটে শিরোনাম, সূত্র, ধরন, তথ্যবিন্দু ও সত্তা — সব ঘরই ফাঁকা ছিল।; নয়টি বিশ্লেষণ-মাত্রার শতভাগ মূল্যায়ন-অযোগ্য, কারণ ইনপুটে তথ্যবিন্দুর সংখ্যা শূন্য।; একমাত্র নিশ্চিত ঝুঁকি পাইপলাইনের নিজের, মাত্রা উচ্চ এবং ইতিমধ্যেই সংঘটিত।; প্রস্তাবিত প্রতিকার দুটি: এক্সট্রাকশন পুনরায় চালানো এবং স্কিমা ভ্যালিডেশন গেট বসানো।; কোনো দল, খেলোয়াড়, টুর্নামেন্ট বা লেনদেন উৎসে চিহ্নিত হয়নি।
source_attribution: উৎস: Stage-2 Esports Deep Analysis Report; প্রকাশের তারিখ উৎসে উল্লেখ নেই।
related_qa: q: রিপোর্টে কোনো দল বা খেলোয়াড়ের ঝুঁকি নেই বলা হয়েছে কি?, a: না, ছয়টি ঝুঁকি-শ্রেণি যাচাই হয়নি হিসেবে চিহ্নিত, পরিষ্কার হিসেবে নয়।; q: খালি পেলোডের সবচেয়ে সম্ভাব্য কারণ কী?, a: পেওয়াল বা জাভাস্ক্রিপ্ট-রেন্ডারড উৎস, অথবা ছবিভিত্তিক নথি — আস্থা মাঝারি।; q: এই ব্যর্থতা রোধে সবচেয়ে সস্তা উপায় কী?, a: শিরোনাম, তথ্যবিন্দু ও সত্তার সংখ্যা যাচাই করে ফাঁকা পেলোড রিজেক্ট করা।
রাত দুটোয় ল্যাপটপের পর্দায় নয়টি বাক্স খুলেছিলাম। নয়টিই একই বাক্যে ফিরে এল — অপর্যাপ্ত তথ্য, মূল্যায়ন সম্ভব নয়। প্যাচ ও মেটা, টুর্নামেন্ট ফরম্যাট, দল ও খেলোয়াড়, আঞ্চলিক ভূগোল, ক্লাবের অর্থনীতি, নিয়ম ও শাসন, ঝুঁকির ম্যাট্রিক্স, জনমতের তাপমাত্রা, শিল্প-সংক্রমণের শৃঙ্খল। বিশ্লেষণের নয়টি স্তম্ভ, প্রতিটির ঘরে শূন্য।
আমি স্প্লিট সেকেন্ড সংগ্রহ করি, যেমন অনেকে স্ট্যাম্প সংগ্রহ করে। ২০১৭ সালে লন্ডনে বিশ্ব অ্যাথলেটিক্স চ্যাম্পিয়নশিপের পুরুষদের ৪০০ মিটার ফাইনালে ওয়েইড ফন নিকার্ক ৪৩.৯৮ সেকেন্ডে সোনা জেতেন; সেদিন আমি খাতায় স্ট্রাইড ফ্রিকোয়েন্সি আর ২০০ মিটারের স্প্লিট লিখছিলাম, আর মনে হচ্ছিল সময়কে হাতে ধরা যাচ্ছে। আজ রাতে হিসাবটা নেই, অথচ রিপোর্টটা আছে। একটা বড় বিশ্লেষণ-কাঠামো, যার প্রতিটি ঘর ভরা হয়েছে অপর্যাপ্ত তথ্য দিয়ে।
ফাঁকা রিপোর্ট বলে এটাকে সরিয়ে রাখলে ভুল হবে। এটা ফাঁকা পেজ নয়, এটা ফাঁকা পেজের ফরেনসিক রিপোর্ট। প্রশ্নটা আর কোন দল, কোন প্লেয়ার, কোন প্যাচ — তা নয়। প্রশ্নটা হলো, ডেটা পৌঁছাল না কেন; আর পৌঁছানোর পর তার সত্যতা কে, কীভাবে প্রমাণ করবে। দ্বিতীয় প্রশ্নটাই আজ ইস্পোর্টসকে ব্লকচেইনের টেবিলে বসিয়ে দেয়।

যে নথিটা আমার টেবিলে এসেছে তার শিরোনাম স্টেজ-টু ইস্পোর্টস ডিপ অ্যানালাইসিস রিপোর্ট। একেবারে শুরুতে একটা ইনপুট ইন্টিগ্রিটি নোটিশ: স্টেজ-১ ডিকনস্ট্রাকশনের ফলাফল কাঠামোগতভাবে ফাঁকা। নিবন্ধের শিরোনাম নেই, সূত্র নেই, ধরন অনির্ধারিত, এক-বাক্যের সারসংক্ষেপ ফাঁকা, লেখকের অবস্থান নেই, লেখার উদ্দেশ্য নেই, তথ্যবিন্দুর তালিকা শূন্য, সংশ্লিষ্ট সত্তা শনাক্ত করার উপায় নেই, সময়-সংবেদনশীলতা যাচাই হয়নি, সূত্রের মান যাচাই হয়নি।
এখানেই একটা পেশাদারি সিদ্ধান্ত নিতে হয়। সহজ পথ হলো অনুমান করা — ধরলাম এটা ভ্যালোর্যান্টের কোনো রোস্টার সংবাদ, বা লিগ অফ লেজেন্ডসের প্যাচ নোট। কুড়ি মিনিটে একটা বিশ্বাসযোগ্য গল্প বানিয়ে ফেলা যায়, আর পাঠক সেটা পড়েও ফেলবেন। কিন্তু তখন যে লেখাটা দাঁড়ায়, সেটা বিশ্লেষণ নয়, কল্পকাহিনি। রিপোর্টটা সেই ফাঁদে পা দেয়নি। প্রতিটি ঘরে লিখেছে অপর্যাপ্ত তথ্য, আর একটাই প্রকৃত অনুসন্ধান সামনে এনেছে: বিশ্লেষণ-পাইপলাইনটাই এক্সট্রাকশন স্তরে ভেঙে পড়েছে।
এই ভাঙনকে ইস্পোর্টসের প্রেক্ষাপটে বসাতে গেলে চারটে জিনিস মনে রাখতে হয়। প্যাচের ছন্দ গেমভেদে মৌলিকভাবে আলাদা — রায়টের দ্বি-সাপ্তাহিক চক্র, ভ্যালভের অনিয়মিত কিন্তু বড় মাপের আপডেট, টেনসেন্টের মৌসুমভিত্তিক পুনর্গঠন। গেমের নাম না জানলে কোন যুক্তিটা খাটবে সেটাই ঠিক করা যায় না। ফরম্যাট — সুইস, ডাবল-এলিমিনেশন, লিগ পয়েন্ট — আপসেটের সম্ভাবনা আর শক্তিশালী দলের স্থিতিশীলতা দুটোই নির্ধারণ করে। ফ্র্যাঞ্চাইজিং স্লট পুনর্বণ্টন, প্রাইজ পুল পুনর্গঠন, ক্যালেন্ডার বদল আঞ্চলিক শ্রেণিবিন্যাস উল্টে দিতে পারে। আর সবচেয়ে জরুরি, বেতন বকেয়া বা স্লট বিক্রির সংকেত ইস্পোর্টসে কখনো সঙ্গে সঙ্গে আসে না; রিপোর্টিংয়ের অনুপস্থিতি কখনোই অনুপস্থিতির প্রমাণ নয়।
রিপোর্টটা ঠিক এই জায়গাটায় সবচেয়ে সৎ। ঝুঁকি ম্যাট্রিক্সে ছয়টা শ্রেণি — প্রতিযোগিতামূলক, আর্থিক, কর্মী, নিয়ম, জনমত, পদ্ধতিগত — সবগুলোই ছাড়া হয়েছে যাচাই হয়নি হিসেবে, পরিষ্কার হিসেবে নয়। একটাই ঝুঁকি নিশ্চিত হয়েছে, আর সেটা পাইপলাইনের নিজের ঝুঁকি: মাত্রা উচ্চ, সম্ভাবনা ইতিমধ্যেই ঘটে গেছে, প্রভাব সম্পূর্ণ বিশ্লেষণ-ফল হারানো। মিটিগেশনের পরামর্শও প্রক্রিয়াগত — উৎসের ইউআরএল আর বডি টেক্সট নিয়ে এক্সট্রাকশন আবার চালাও, আর একটা স্কিমা ভ্যালিডেশন বসাও: শিরোনাম আছে কি, অন্তত একটা তথ্যবিন্দু আছে কি, অন্তত একটা নামযুক্ত সত্তা আছে কি।
এই মুহূর্তে ব্লকচেইন ঢোকে। কারণ ডেটা না থাকার সমস্যাটা আসলে ডেটার মালিকানা আর অখণ্ডতার সমস্যা। কে লিখল, কখন লিখল, পরে কেউ নিঃশব্দে বদলাল কি না — এই তিনটে প্রশ্নের উত্তর দিতে পারে এমন কোনো স্তর ইস্পোর্টসে আজ নেই।
শূন্য আর শূন্য এক নয় — এই পার্থক্যটাই পুরো বিশ্লেষণের ভিত্তি। ডেটাবেসের ভাষায় দুটো আলাদা জিনিস আছে: NULL আর 0। প্রথমটা মানে তথ্য নেই, দ্বিতীয়টা মানে তথ্য আছে এবং সেটা শূন্য। স্পোর্টস অ্যানালিটিক্সে এই পার্থক্যটা প্রায়ই মুছে যায়। ক্রিকেট স্কোরকার্ডে নো-বল যদি ডট বল হিসেবে লেখা হয়, স্ট্রাইক রেট বদলে যায়। ৪০০ মিটারের একটা স্প্লিট যদি মিসিং হয়, রেসের গল্পটা অসম্পূর্ণ থাকে — ভুল হয়ে যায় না, অসম্পূর্ণ হয়। বিশ্লেষণের সবচেয়ে বড় পাপ হলো অসম্পূর্ণতাকে সিদ্ধান্তে অনুবাদ করা। রিপোর্টটা এখানে পরিষ্কার ভাষা ব্যবহার করেছে: নয়টি মাত্রার একশো শতাংশ মূল্যায়ন-অযোগ্য, কারণ ইনপুটে তথ্যবিন্দুর সংখ্যা শূন্য।
আরেকটা জিনিস খেয়াল করুন। রিপোর্ট শুধু ফল দেয়নি, নিজের অনুমানের আস্থাও গ্রেড করেছে। ফাঁকা পার্সের সম্ভাব্য কারণ হিসেবে তিনটে ব্যাখ্যা দিয়েছে — পেওয়াল বা জাভাস্ক্রিপ্ট-রেন্ডারড পেজ, নন-টেক্সট বা ছবিভিত্তিক উৎস, এক্সট্রাকশন-নিয়মের অমিল। প্রথম দুটোর আস্থা মাঝারি, তৃতীয়টার কম। এই স্বচ্ছতাটা বিরল, আর এটাই দেখায় সমস্যাটা যুক্তির নয়, ইনপুটের।
এক্সট্রাকশনের শেষ মাইলটা স্পোর্টস ডেটার সবচেয়ে দুর্বল অংশ। ট্র্যাকে বিশ্ব রেকর্ড স্বীকৃতি পেতে সার্টিফায়েড টাইমিং সিস্টেম লাগে, ফটো-ফিনিশ ক্যামেরা লাগে, বিচারক লাগে। টাইমিং সিস্টেম ফেল করলে কেউ রেকর্ড ঘোষণা করে না — যন্ত্রত্রুটি ঘোষণা করে। ইস্পোর্টসের টিয়ার-টু ইভেন্টে সেই সার্টিফায়েড স্তরটাই নেই। স্কোরবোর্ড টোয়েন্টার পোস্ট থেকে আসে, রোস্টার আসে ঘোষণাপত্র থেকে, আর প্যাচ নোট আসে ডেভেলপারের ব্লগ থেকে। মাঝখানে কোনো অডিট ট্রেইল নেই।
ডেটার সরবরাহ শৃঙ্খলও একটা রিলে — একজন রিপোর্টার অন্যজনের কাছে হ্যান্ডঅফ করেন, প্ল্যাটফর্ম সেটা টেনে নেয়, তারপর পাঠক অ্যাংকর লেগে অপেক্ষা করেন। অ্যাংকর লেগ সেখানে যেখানে দৌড় আর পায়ের বিষয় থাকে না, নার্ভের বিষয় হয়ে যায়। এখানে অ্যাংকর লেগে ব্যাটনটা পড়ে গেছে, আর কেউ টের পায়নি।
ব্লকচেইন এখানে যা দিতে পারে, সেটা খুব নির্দিষ্ট এবং সীমিত। একটা হ্যাশ আসলে একটা ডিজিটাল ফিঙ্গারপ্রিন্ট — ডেটার একটা ছোট স্ট্রিং, যা ওই ডেটার প্রতিটি অক্ষরের ওপর নির্ভর করে। ডেটার একটা কমাও বদলালে হ্যাশ বদলে যায়। এই সহজ ধারণাটা থেকে তিনটে বাস্তব ক্ষমতা আসে: টাইমস্ট্যাম্প, ট্যাম্পার-এভিডেন্স, আর পাবলিক ভেরিফিকেশন।
একটা স্কোরলাইন অন-চেইনে লেখা থাকার অর্থ এই নয় যে স্কোরলাইনটা সত্য। এর অর্থ হলো, ওই স্কোরলাইনটা ওই সময়ে ওই আকারে কে কোথায় লিখেছিল, সেটা কেউ পরে নিঃশব্দে বদলাতে পারেনি। যাচাই আর সত্য দুটো আলাদা জিনিস — এই পার্থক্যটা না বুঝলে ব্লকচেইন ইস্পোর্টসে শুধু নতুন এক ধরনের ভুল নিশ্চয়তা তৈরি করবে।
বাস্তবে প্রয়োগের জায়গা তিনটে। প্রথমত, ম্যাচ ডেটা অ্যাটেস্টেশন — টুর্নামেন্ট অপারেটর ম্যাচ শেষে চূড়ান্ত স্কোরবোর্ড আর স্ট্যাট লগের হ্যাশ একটা পারমিশনড লেজারে লিখে দেবে, যাতে পরে কেউ ফল বদলে দিতে না পারে। দ্বিতীয়ত, খেলোয়াড় নিবন্ধন ও ট্রান্সফার রেজিস্ট্রি — কোন খেলোয়াড় কোন দলে কখন যোগ দিলেন, সেই রেকর্ড টাইমস্ট্যাম্পড থাকলে চুক্তি-বিতর্কে প্রমাণের ভার কমে। তৃতীয়ত, প্রাইজ মানি আর বেতন বিতরণ — স্মার্ট কন্ট্রাক্ট দিয়ে ধাপে ধাপে ছাড়া যায়, যাতে বকেয়ার ল্যাগ কমে।
তৃতীয় জায়গাটাই ইস্পোর্টসের সবচেয়ে পুরনো ক্ষত। বেতন বকেয়া, দল ভেঙে যাওয়া, স্লট বিক্রি — এসব খবর কখনো সময়মতো আসে না, আসে দেরিতে, আর তখন সবাই বলে আগেই বোঝা যেত। টাইমস্ট্যাম্পড পেমেন্ট রেকর্ড থাকলে ওই বিলম্বটা ছোট হতো।
তবু এই রিপোর্টের সবচেয়ে বড় শিক্ষা ব্লকচেইন নিয়ে নয়, ব্যর্থতা নিয়ে। যদি প্রতিটি ধাপে একটা অ্যাটেস্টেড লগ থাকত, তাহলে ডেটা হারানোর ঘটনাটা ঘটার সঙ্গে সঙ্গেই দৃশ্যমান হতো — নয়টি মাত্রার নিরবতা পেরিয়ে নয়, প্রথম মিনিটেই।
এখানেই আমার আপত্তিটা শুরু। ব্লকচেইন উপরের সমস্যাটা সমাধান করে না, কারণ সমস্যাটা উপরে নয়। উৎস পেজটা যদি জাভাস্ক্রিপ্টে রেন্ডার হয়, আর এক্সট্রাক্টর যদি বডি টেক্সট না পায়, তাহলে পৃথিবীর কোনো লেজার সেটা ঠিক করতে পারবে না। বরং উল্টোটা ঘটতে পারে: ভুল ডেটার একটা স্থায়ী, ট্যাম্পার-প্রুফ, গর্বিত রেকর্ড তৈরি হয়ে যাবে। ইমিউটেবিলিটি যখন ইনপুট ভুল, তখন সেটা সুরক্ষা নয়, শাস্তি।
দ্বিতীয় আপত্তি খরচের। রিপোর্ট যে সমাধান দিয়েছে — শিরোনাম, তথ্যবিন্দু আর সত্তার সংখ্যা গুনে ফাঁকা পেলোড রিজেক্ট করা — সেটার খরচ শূন্যের কাছাকাছি। একটা চেইন বসানোর আগে একটা ভ্যালিডেশন গেট বসানো ঢের সস্তা এবং ঢের বেশি কার্যকর। প্রযুক্তি বাছাই করার আগে প্রশ্নটা হওয়া উচিত: সমস্যাটা আসলে কী? এখানে সমস্যা ডেটার অখণ্ডতা নয়, ডেটার অস্তিত্ব।
তৃতীয় আপত্তি কভারেজ নিয়ে। টিয়ার-টু ইস্পোর্টসে সাংবাদিকের সংখ্যা এত কম যে অনেক ইভেন্টের ফল কোনো লিখিত রেকর্ডেই থাকে না। যেখানে রেকর্ডই নেই, সেখানে তার হ্যাশ নেই। একটা খালি লেজারও খালি থেকে যায়। এশিয়ার অনেক আঞ্চলিক লিগে এই ফাঁকটা সবচেয়ে বড় — ব্লকচেইন সেখানে চূড়ান্ত সমাধান নয়, কারণ সমস্যাটা প্রযুক্তির নয়, মানুষের।
চতুর্থ আপত্তি মেট্রিক-মোহ নিয়ে। আমার পেশায় সবচেয়ে বিপজ্জনক অভ্যাস হলো সংখ্যাকে প্রমাণ ভাবা। কাভার করা দূরত্ব, হাই-ইনটেনসিটি স্প্রিন্ট, এক্সজি — সবই দরকারি, কিন্তু দরকারিহীন দৌড়ও সুন্দর সংখ্যা তৈরি করে। ব্লকচেইনের ক্ষেত্রেও একই ফাঁদ: অন-চেইন লেখা থাকলেই সেটা সত্য বলে ধরে নেওয়া।
তবু আমি ব্লকচেইনের সম্ভাবনাকে উড়িয়ে দিতে চাই না। ২০২১ সালে টোকিওতে নীরজ চোপড়ার ৮৭.৫৮ মিটার ছোড়ার সময় আমি যে উত্তেজনা টের পেয়েছিলাম, সেটা কোনো স্প্রেডশিটে ধরা যায় না। কিন্তু ওই ফলটা যে সত্যি, সেটা প্রমাণ করে অফিসিয়াল মেজারমেন্ট সিস্টেম, গুজব নয়। ইস্পোর্টসের দরকার ঠিক এই ধরনের একটা স্তর — যেখানে ফল আর গুজবের মধ্যে একটা স্পষ্ট দেয়াল থাকে।
আমার পরের ধাপ পরিষ্কার। প্রথমে পাইপলাইনে ভ্যালিডেশন গেট, তারপর উৎস পুনরুদ্ধার, তারপর প্রশ্ন করা — ইস্পোর্টস ঠিক কী জিনিসটা অপরিবর্তনীয় করতে চায়? আমার উত্তর হবে স্কোরলাইন আর পেমেন্ট রেকর্ড, প্রেস রিলিজ নয়। কারণ যা বদলানো উচিত তা বদলানো যায় না — এটা কোনো সভ্যতার লক্ষণ নয়।
স্ট্যান্ড খালি হয়ে গেলে আর্কাইভই সেই ভিড় হয়ে যায় যেটা আমি এখনো শুনতে পাই। কিন্তু আর্কাইভে যদি পৃষ্ঠাটাই ফাঁকা থাকে, তাহলে শোনার মতো কিছুই থাকে না।
