যান্ত্রিক অনুবাদ। ইংরেজি পাঠই প্রামাণ্য। English

বাকি অর্ধেক

যেসব জিনিস আমি বানিয়েছি কারণ আমি চেয়েছিলাম সেগুলোর অস্তিত্ব থাকুক।

PANTHEON হলো মূল কাজ। যখন ফলাফলের জন্য কেউ টাকা দিচ্ছে না, তখন একই প্রবৃত্তি যা তৈরি করে তা এই: ডেস্কটপে একটি আসল আকাশ, কোনো ডিপেন্ডেন্সি ছাড়া একটি এফেমেরিস, আর একটি টার্মিনাল যা আঁকতে পারে। শৃঙ্খলা একই; শুধু ঝুঁকি বদলায়।

GNOME Shell · GPL-2.0 · ★3

TerraFirma: আপনার ওয়ালপেপারের ওপর একটি আসল আকাশ।

আকাশের কোনো অ্যানিমেশন নয়। আসল আকাশটাই, আপনার অক্ষাংশ, দ্রাঘিমাংশ ও ঘড়ি অনুযায়ী একটি ephemeris থেকে গণনা করা।

একটি GNOME ডেস্কটপ, যার ওয়ালপেপার হলো গণনা করা রাতের আকাশ: পেগাসাস, অ্যাকোয়ারিয়াস, এরিস ও টরাস নক্ষত্রমণ্ডলের চিত্র তাদের নামসহ, আড়াআড়ি বিস্তৃত ছায়াপথের পটি, লেবেলযুক্ত ও উজ্জ্বল শনি, এবং SE ও SW চিহ্নিত দিগন্তের বৃত্তচাপ। ডক এবং Home ও Trash আইকন ছবিতে আছে।
ডেস্কটপ, কোনো রিটাচ ছাড়া। ডক আর আইকনগুলো ইচ্ছে করেই ফ্রেমে রাখা: এটি ওয়ালপেপার, ওয়ালপেপারের ভান করা কোনো উইন্ডো নয়। প্রতিটি ফিগার, আকাশগঙ্গা এবং দিগন্ত সেই অবস্থান ও সেই মিনিটের জন্য হিসাব করা।
শনি গ্রহকে একটি ছোট কমলা চাকতি হিসেবে আঁকা, চারপাশে তার বলয়ের উপবৃত্ত, Saturn লেবেলযুক্ত, নক্ষত্রমণ্ডলের রেখার পটভূমিতে।
উনিশ আর্কসেকেন্ডে শনি, আসল রিং জ্যামিতি থেকে বলয়গুলো খোলা ও হেলানো। প্রতি পনেরো বছরে সেগুলো বন্ধ হয়ে একটি রেখায় পরিণত হয়; এটি সেগুলোকে আংশিক খোলা দেখায়, কারণ এখন সেগুলো সেই অবস্থাতেই আছে।

হট লুপ ইচ্ছাকৃতভাবেই পরিমাপযোগ্য

প্রজেকশন এবং বায়ুমণ্ডলের কোড থাকে skymath.js-এ, যা GNOME Shell থেকে কিছুই ইমপোর্ট করে না। যে ফাইল কেবল একটি সেশনের ভেতরেই চলতে পারে, তা নিয়ে কেবল অনুমানই করা যায়; যেটি স্বতন্ত্রভাবে চলে, তার সময় মাপা যায়। এই সীমারেখার পেছনের যুক্তি সেই purity lint-এর মতোই, যা PANTHEON-এর কোরকে তার অ্যাপ লেয়ার থেকে আলাদা রাখে।

স্টার ক্যাটালগ ও এফেমেরিস তৃতীয় পক্ষের, এবং NOTICE.md-তে কৃতিত্ব দেওয়া আছে। এটিকে একটি তারিখে তাক করুন, তারপর উপরে তাকান, এই ধরনের সফটওয়্যারের জন্য এটাই একমাত্র পরীক্ষা যা গণ্য হয়।

দিগন্তের একটি চওড়া সরু ফালি, যেখানে দিগন্তের বৃত্তচাপে কম্পাস বেয়ারিং SE চিহ্নিত, আর ঠিক তার উপরে Piscis Austrinus নক্ষত্রমণ্ডল ও তার তারা Fomalhaut লেবেল করা।
দিগন্ত, তার কম্পাস দিকনির্দেশ সহ, যাতে আপনি ঘুরে দাঁড়িয়ে মিলিয়ে দেখতে পারেন।

কেন হট লুপটিকে বাইরে সরাতে হয়েছিল → · GitHub-এ TerraFirma ↗

আলাদা করা, এবং প্রকাশিত

এ থেকে বেরিয়ে আসা তিনটি প্যাকেজ।

PANTHEON-এর ছয়টির মতো একই প্যাটার্ন: জিনিসটা তৈরি করা, যে অংশটা সত্যিই পুনর্ব্যবহারযোগ্য তা খুঁজে বের করা, সেটা আলাদা করা, আর নিজস্ব শর্তে প্রকাশ করা। তিনটিই MIT এবং এখনই ইনস্টল করা যায়।

টার্মিনালে রঙিন Unicode ব্রেইল অক্ষর হিসেবে রেন্ডার করা মোনা লিসা। প্রতিটি অক্ষর-সেলে 2x4 ডটের একটি গ্রিড আছে; মুখ, হাত এবং তার পেছনের ঝাপসা প্রাকৃতিক দৃশ্য সবই চেনা যায়, এবং প্রতিটি সেলের ভেতরে ব্রেইল ডটের টেক্সচার দেখা যায়।
মোনা লিসা, টার্মিনালে Unicode ব্রেইল দিয়ে আঁকা, 93 কলাম চওড়া। প্রতিটি সেল একটি 2×4 ডট গ্রিড, যার নিজস্ব ফোরগ্রাউন্ড ও ব্যাকগ্রাউন্ড রং আছে।

braillecanvas v0.4.0 · MIT

Braille প্রতি ক্যারেক্টার সেলে 2×4 ডট অ্যাড্রেস করে, তাই একটি 80×24 টার্মিনাল আসলে একটি 160×96 ক্যানভাস। রেন্ডারিং আর ASCII আর্টের পার্থক্য এটাই।

আকর্ষণীয় অংশটা হলো রং। প্রতিটি সেল দুটি রং বহন করে, একটি জ্বলে থাকা ডটের জন্য, একটি ফাঁকগুলোর জন্য, তাই যে সেল কোনো প্রান্তের দুই পাশে পড়ে, যেমন আকাশের গায়ে ত্বক, সেটি প্রান্তটিকে গড় করে কাদায় পরিণত না করে ধরে রাখে। এই ছবিতে প্রতি-ডট গড় রং-ত্রুটি 45.7 থেকে 21.3-এ নেমে আসে।

একটি নির্দিষ্ট ডিদার গ্রিড থেকে প্যাটার্ন না নিয়ে, প্রতিটি সেলে কোন ডটগুলো জ্বলবে তা বেছে নিলে টেক্সচারহীন সেল 35.1% থেকে 1.6%-এ নেমে আসে।

এর নিজের README-তে বলা দুটি সীমা: প্রায় 90 কলামের নিচে ফটোগ্রাফ আর কাজ করে না, এবং মনোক্রোম এই ছবিটি একেবারেই রেন্ডার করতে পারে না, তার মুখের লুমিন্যান্স মাপে 159, পেছনের আকাশের 192, তাই 1-bit রেন্ডার গঠনগতভাবেই একটি সিলুয়েট।

npm i braillecanvas · npm ↗ · সোর্স ↗

skymaths v0.1.2 · MIT

কোনো নির্ভরতা ছাড়াই পজিশনাল জ্যোতির্বিদ্যা: সূর্য, চাঁদ, গ্রহ, গোধূলি, উদয় ও অস্ত। TerraFirma-র ইফেমেরিস থেকে আলাদা করা, তারপর সংশোধিত: এতে ব্যবহৃত Espenak–Meeus বহুপদীটি শুধু 1900–1920-এর জন্য প্রকাশিত, অথচ সেটি 1986-এ প্রয়োগ করা হচ্ছিল, ফলে 1950-এর জন্য −534 সেকেন্ড দিচ্ছিল, যেখানে পরিমাপকৃত মান +29। নিজের সাথে নয়, একটি প্রকাশিত অ্যালম্যানাকের সাথে মিলিয়ে দেখে এটি ধরা পড়ে।

এটি এই সাইটেই চলছে: ডার্ক মোডে পটভূমি হলো 13 আগস্ট 2026, পারসিডস-এর রাতে কার্ডিফের আকাশ, যা আপনার ব্রাউজারেই গণনা করা হয়: আসল রঙে 5,044টি তারা, চাঁদের কলা, আর গ্রহগুলো সেই সময় যেখানে ছিল সেখানে। ঘুরে দেখতে স্ক্রল করুন।

npm i skymaths · npm ↗ · সোর্স ↗

কার্ডিফ, 12–13 আগস্ট 2026, 22:45 থেকে 02:15 BST, প্রতিটি ফ্রেম skymaths দিয়ে গণনা করা। উল্কাগুলো আসল পারসেইড রেডিয়েন্ট থেকে আসল হারে বের হয়; প্রতিটি কোথায় পড়ে তা এলোমেলো। দুর্গ আর পাহাড়গুলো Runway দিয়ে তৈরি।

starwheel v0.2.3 · MIT · ★4

আপনার টার্মিনালে একটি লাইভ প্ল্যানিস্ফিয়ার: আপনার অবস্থান ও মিনিট অনুযায়ী তারাদের আসল অবস্থান, braillecanvas-এ আঁকা। এটি আমার সবচেয়ে বেশি স্টার পাওয়া রিপোজিটরি, এবং এটিই আমাকে শিখিয়েছে যে প্রকাশিত পিক্সেল সরিয়ে দেয় এমন একটি ফিক্স দুবার একই ফিক্স হয় না: এর সহোদর যেখানে ক্লিপ করে, এটি সেখানে ইচ্ছাকৃতভাবে ইটারেশন সীমাবদ্ধ করে।

npx starwheel · npm ↗ · সোর্স ↗

ব্রেইলে আঁকা একটি টার্মিনাল সার্ভার মনিটর: একটি চলমান উইন্ডো জুড়ে CPU, মেমরি এবং load-average লাইন চার্ট, সঙ্গে প্রতি-কোর বার স্ট্রিপ।
একই ক্যানভাস আসল /proc ডেটা প্লট করছে: CPU, মেমরি এবং লোড অ্যাভারেজ, একটি রোলিং উইন্ডো জুড়ে। ছবির জন্য যে 90-কলামের ন্যূনতম সীমা দরকার, চার্ট তার অনেক নিচেও কাজ করে, কারণ সেগুলো আগে থেকেই হাই-কনট্রাস্ট।

এই পেজেই, এখনই

আর্ট জেনারেটেড, আর সিড বাইরে যেতে পারে না।

এই সাইটের প্রতিটি আর্ট: উপরের হিরো, ফেভিকন, সোশ্যাল কার্ড, অ্যাভাটার, সবই PANTHEON-এর নিজস্ব জেনারেটর থেকে আসে। ডিটারমিনিস্টিক ও সিডেড: একই সিড প্রতিবার একই ছবি দেয়।

দুই দিকেই একই চুক্তি

একটি সার্ভার-সাইড ইঞ্জিন সোশ্যাল কার্ড ও টেন্যান্ট সাইটগুলো রেন্ডার করে; একটি ব্রাউজার ইঞ্জিন আপনি যে অ্যানিমেটেড সংস্করণটি দেখছেন সেটি আঁকে। একই নিয়ম: সিড ঢোকে, পুনরুৎপাদনযোগ্য শিল্প বের হয়।

গঠনগতভাবেই ইনজেকশন-নিরাপদ

সিড শুধু PRNG-কে ইনপুট দেয়, আর কিছু নয়। এটি কখনো মার্কআপ বা স্টাইলে বসানো হয় না। যে টেন্যান্ট নাম আসলে একটি পেলোড, সেটি একটি ভিন্ন ছবি আঁকে; এটি কোনো script ট্যাগ আঁকে না। সিস্টেমের বাকি অংশের মতো একই প্রবৃত্তি, সাজসজ্জায় প্রয়োগ করা।

শুধু পড়ার নয়, ইনস্টলযোগ্য

ছয়টি গ্যারান্টি, আলাদা করে বের করা এবং প্রকাশিত।

প্রতিটি PANTHEON থেকে একটি একক যাচাইযোগ্য প্রতিশ্রুতি হিসেবে বেরিয়ে এসেছে, তারপর PyPI-তে গেছে যাতে এটি নিজের পায়ে দাঁড়াতে পারে। অ্যাডভার্সারিয়াল AI এজেন্টরা, নিজে চালানো, স্বাধীন নয়, লাইন ধরে ধরে এগুলো পরীক্ষা করেছে এবং বাস্তব ত্রুটি খুঁজে পেয়েছে; নিচের সংস্করণগুলো সেই সংশোধনের পরের। প্রতিটি যাচাই করা হয়েছে রেজিস্ট্রি থেকে একটি পরিষ্কার এনভায়রনমেন্টে ইনস্টল করে এবং রিভিউয়ারের নিজস্ব রিপ্রোডাকশন আবার চালিয়ে, বিল্ড লগে ভরসা করে নয়।

pantheon-guardrails v0.3.2 · Apache-2.0

একটি কনস্টিটিউশন স্কোরার, যা শুধু হাই-স্টেকস উত্তরে LLM জাজ ব্যবহার করে, এবং সেই জাজকে জেনারেটরের থেকে একটি ভিন্ন মডেল হতে বাধ্য করে যাতে দুটোর অন্ধ জায়গা এক না হয়। আগে এটি সীমার বাইরের স্কোরকে ওপরের দিকে ক্ল্যাম্প করত: {"clarity": 99} ফেরত দেওয়া একটি জাজ নিখুঁত 1.0 স্কোর পেত এবং প্রতিটি থ্রেশহোল্ড পার হয়ে যেত: একটি গার্ডরেল যা ফেইল-ওপেন করছিল। এখন যে জাজ এক্সেপশন তোলে, আটকে যায় বা অর্থহীন কিছু ফেরত দেয়, সেটি একটি স্পষ্ট ব্যর্থ মূল্যায়ন, যা ডিফল্টভাবে ব্লক করে।

pip install pantheon-guardrails · PyPI ↗ · সোর্স ↗

pantheon-ssrf-guard v0.2.1 · Apache-2.0

একটি দুই-স্তরের SSRF egress গার্ড যা DNS rebinding-এর মুখেও টিকে থাকে: কানেক্ট করার মুহূর্তে সকেট আসলে যে IP-তে পৌঁছেছে সেটি আবার যাচাই করে, তাই যে হোস্ট প্রথমে পাবলিক IP-তে রিজলভ হয়ে পরে loopback বা ক্লাউড মেটাডেটায় রিবাইন্ড করে, তা প্রত্যাখ্যাত হয়। রিভিউতে দেখা গিয়েছিল opener তখনও file:// URL পড়ে ফেলত, কারণ Python ডিফল্টভাবে অন্য স্কিমের হ্যান্ডলার ইনস্টল করে; এখন সীমানায় একটি স্পষ্ট http/https allowlist আছে, রিডাইরেক্টসহ, আর environment প্রক্সি বন্ধ থাকে যদি না আপনি চান।

pip install pantheon-ssrf-guard · PyPI ↗ · সোর্স ↗

pantheon-tool-sanitizer v0.3.0 · Apache-2.0

অবিশ্বস্ত MCP টুল টেক্সট কোনো এজেন্টের প্রম্পটে পৌঁছানোর আগে তা থেকে টুল-প্রোটোকল মার্কআপ ও Unicode smuggling সরিয়ে দেয়। সৎভাবে সীমিত পরিসর: এটি সাধারণ গদ্যে লেখা ইনজেকশন থামানোর দাবি করে না, কারণ সেটি স্ট্রিংয়ের নয়, আর্কিটেকচারের সমস্যা। রিভিউ থেকে দুটি সমাধান: একটি 256 kB অ্যাডভারসারিয়াল ইনপুট 26 সেকেন্ড CPU নিত, এখন তা সরাসরি প্রত্যাখ্যান করা হয়, এবং "Read\nthe\tfile" আর "Readthefile" হয়ে যায় না, কারণ লাইন ব্রেক একটি শব্দসীমা।

pip install pantheon-tool-sanitizer · PyPI ↗ · সোর্স ↗

credit-ledger v0.3.0 · Apache-2.0

Postgres-এর ওপর মোটামুটি 150 লাইনে ওভারড্রাফট-প্রুফ মিটারিং: 50 ব্যালেন্সের বিপরীতে 100টি সমান্তরাল চার্জ, এবং ঠিক 50টি সফল হয়; webhook রিপ্লের মধ্যেও ঠিক একবার বিলিং; row-level security দিয়ে আইসোলেশন প্রয়োগ করা। প্রকাশিত বিল্ড আগে একটি ঋণাত্মক চার্জ গ্রহণ করত, যা উল্টো গ্রাহককে টাকা দিত, এবং কলামের প্রিসিশনের চেয়ে ছোট পরিমাণও গ্রহণ করত, যা সফল দেখিয়ে 0.0000 বিল করত। এখন একটিই পরিমাণ-নিয়ম সব পথ কভার করে, এবং আগে থেকে থাকা ডেটাবেসের জন্য একটি টেস্ট করা মাইগ্রেশন আছে।

pip install credit-ledger · PyPI ↗ · সোর্স ↗

pantheon-ical v0.3.1 · Apache-2.0

বুকিং ক্যালেন্ডারের জন্য রাউন্ড-ট্রিপ iCal (RFC 5545), 200 লাইনের কম কোডে। বাদ পড়া একটি ব্যস্ত সময় খালি হিসেবে পড়া হয়, তাই নীরবতাই বিপজ্জনক ব্যর্থতা: অতিরিক্ত বড় ক্যালেন্ডার ছেঁটে ফেলার বদলে প্রত্যাখ্যান করা হয়, আর যে পুনরাবৃত্ত নিয়ম সীমা ছাড়ায় সেটি ছোট তালিকা ফেরত না দিয়ে তা জানিয়ে দেয়। শেষ ফিক্সটি ফলাফলের পাশাপাশি কাজের পরিমাণও সীমিত করেছে: এক লাইনের একটি শত্রুতাপূর্ণ নিয়ম আগে প্রত্যাখ্যাত হওয়ার আগে 76 সেকেন্ড ধরে 34 মিলিয়ন অকারেন্স তৈরি করত; এখন এটি 401-এ থামে।

pip install pantheon-ical · PyPI ↗ · সোর্স ↗

pantheon-rls v0.1.1 · Apache-2.0

টেন্যান্ট আইসোলেশন অ্যাপ্লিকেশনের অভ্যাস হিসেবে নয়, Postgres-এর গ্যারান্টি হিসেবে: force-RLS এবং ন্যূনতম-প্রিভিলেজ গ্রান্ট, যাতে ডেটাবেস নিজেই ক্রস-টেন্যান্ট read ও write প্রত্যাখ্যান করে। গঠনগতভাবেই fail-closed, টেন্যান্ট কনটেক্সট না থাকলে শূন্য সারি ফেরত আসে, কখনো সব সারি নয়, আর রাত 3টায় কোনো বাগ প্রোডাকশনে পৌঁছালে এই ব্যর্থতার ধরনটাই গুরুত্বপূর্ণ।

pip install pantheon-rls · PyPI ↗ · সোর্স ↗

উপরের প্রতিটি সংশোধন একইভাবে এসেছে: আগে ত্রুটিটি পুনরুৎপাদন করা, উপসর্গ নয় বরং সীমানাটি ঠিক করা, তারপর প্রমাণ করা যে বাগটি ফিরিয়ে আনলে নতুন টেস্টটি ফেল করে। যে টেস্ট ফেল করতে পারে না, তা প্রমাণ নয়।

এটি কিসের ওপর চলে

স্ট্যাকটা সাদামাটা। সীমানাটা নয়।

Python 3.12, FastAPI, Postgres, Redis, Vite সহ React, nginx-এর পেছনে একটি Dockerfile। এর কোনোটিই প্রশংসা করার মতো সিদ্ধান্ত নয়, এগুলো এমন অংশ যা আপনি বেছে নেন যাতে আপনার মনোযোগ গুরুত্বপূর্ণ কোথাও যেতে পারে।

146টি ফাইল · 14,002 লাইন

pantheon-core: ভিত্তিস্তর। চুক্তি অনুযায়ী ডোমেইন-নিরপেক্ষ: এটি residents বা bundles থেকে import করতে পারে না, এবং করলে দুটি স্বাধীন চেক CI ব্যর্থ করে।

210 ফাইল · 24,216 লাইন

টেস্ট, Python-এর 38,816 লাইনের বিপরীতে। আমি ইমপ্লিমেন্টেশন হাতে লিখি না, তাই টেস্ট স্যুট কোনো সেফটি নেট নয়। এটিই স্পেসিফিকেশন, এবং এটিই সেই আর্টিফ্যাক্ট যা আমি আসলে লিখি।

পাঁচটি স্তর, একটিই পথ

architect · runtime · guardrails · substrate · primitives, যেখানে providers-কে ইচ্ছাকৃতভাবে স্ট্যাকের বাইরে রাখা হয়েছে, কারণ এটি একসাথে দুটি লেয়ারের নিচে বসে, এবং কন্ট্র্যাক্ট নিয়ম বাঁকানোর বদলে সেটি স্পষ্টভাবে বলে দেয়।

এই সীমারেখার কারণেই ছয়টি কম্পোনেন্ট তুলে এনে আলাদা লাইব্রেরি হিসেবে প্রকাশ করা গেছে, এক্সট্র্যাকশন মূলত ছিল এমন ফাইল সরানো যেগুলোকে কখনও নিচের দিকে পৌঁছাতে দেওয়া হয়নি। বিস্তারিত সংস্করণ, যে অংশে আমি ভুল করেছিলাম সেটিসহ →

একই মানুষ, একই নিয়ম, কম ঝুঁকি।

ওয়ালপেপার কেউ অডিট করে না। এগুলো যেভাবে তৈরি, তার কারণ হলো এটাই একমাত্র উপায় যেভাবে আমি তৈরি করতে জানি: পরিমাপ করা, পুনর্ব্যবহারযোগ্য অংশ আলাদা করা, সঙ্গে সীমাবদ্ধতাগুলো প্রকাশ করা, এবং প্রোগ্রামের বাইরের কিছুর সাথে সংখ্যাগুলো মিলিয়ে দেখা।

আমি যা খুঁজছি → লেখাগুলো পড়ুন →