প্রকল্প সম্পর্কে

CodeCartographer হলো একটি ফ্রেমওয়ার্ক, যা একটি অপরিচিত কোডবেসকে AI কোডিং এজেন্টের সাহায্যে বুঝতে এবং একটি যাচাইকৃত, ভাষা-নিরপেক্ষ পুনর্বাস্তবায়ন স্পেসিফিকেশন তৈরি করতে ব্যবহৃত হয়। এটি Pi এক্সটেনশন, একটি MCP সার্ভার, অথবা Markdown ও YAML ফাইলের একটি ড্রপ-ইন `.codecarto/` টেমপ্লেট হিসেবে বিতরণ করা হয়। এটি কীভাবে কাজ করে: "কোড" হলো `.codecarto/`-এর ভেতরে সুগঠিত Markdown এবং YAML। `GUIDE.md` হলো LLM-এর প্রবেশবিন্দু, `workflow/pipeline.yaml` ধাপ ও নির্ভরতা নির্ধারণ করে, `workflow/status.yaml` প্রতি-প্রকল্পের পরিবর্তনশীল অবস্থা ধারণ করে, এবং `workflow/VALIDATE.md` যাচাইকরণ প্রোটোকল বর্ণনা করে। ধাপগুলো একটি DAG গঠন করে — আর্কিটেকচারের পরে চুক্তি ও প্রোটোকল সমান্তরালে চলতে পারে, পোর্টিং উভয়ের জন্য অপেক্ষা করে, এবং পুনর্বাস্তবায়ন স্পেসিফিকেশন সবার শেষে আসে। হোস্ট সক্রিয় পাইপলাইন পড়ে, যে পরবর্তী ধাপের নির্ভরতা সম্পূর্ণ হয়েছে তা খুঁজে বের করে, সেই ধাপের নির্দেশাবলি LLM-কে দেয়, আউটপুট যাচাই করে, এবং স্ট্যাটাস এগিয়ে নেয়। প্রমাণ ও যাচাইকরণ: প্রতিটি ধাপ `.codecarto/findings/`-এর অধীনে একটি ছোট, টেমপ্লেটভিত্তিক, প্রমাণ-ট্যাগযুক্ত আর্টিফ্যাক্ট লেখে, এবং পরবর্তী ধাপগুলো তাদের প্রয়োজনীয় নির্দিষ্ট আপস্ট্রিম ফাইল পুনরায় পড়ে। অনুসন্ধানগুলো পর্যবেক্ষিত সত্য, শক্তিশালী অনুমান, পোর্টেবিলিটি ঝুঁকি, বাহ্যিক-আচরণ দাবি, বা খোলা প্রশ্ন হিসেবে ট্যাগ করা হয়। প্রতিটি ধাপের আউটপুট একটি `## Validation` টেবিল দিয়ে শেষ হয়, যা প্রতিটি সম্পূর্ণতার মানদণ্ডকে প্রমাণসহ PASS, PARTIAL, বা FAIL হিসেবে চিহ্নিত করে; যাচাইকরণ সেই টেবিল পার্স করে এবং প্রমাণ/কর্ম জোড়া ও ঘোষিত গৌণ আউটপুট ক্রস-চেক করে, কোনো FAIL, অনুপস্থিত আউটপুট, বা অপাঠ্য রায়ের ক্ষেত্রে এগিয়ে যেতে অস্বীকার করে। উৎপাদিত আর্টিফ্যাক্টগুলোর মধ্যে রয়েছে একটি আর্কিটেকচার ম্যাপ, ত্রুটি প্রতিবেদন, ত্রুটি সংশোধন ট্র্যাকার, আচরণগত চুক্তি, প্রোটোকল ও অবস্থা, একটি পোর্টিং বান্ডল, এবং মডিউল, গ্রহণযোগ্যতা পরিস্থিতি ও পরিচিত অজানা বিষয়সহ চূড়ান্ত পুনর্বাস্তবায়ন স্পেসিফিকেশন। পাইপলাইন ভ্যারিয়েন্ট: ডিফল্ট হলো একটি ৭-ধাপের গভীর-নিরীক্ষা রান, যা ত্রুটি স্ক্যানকে যান্ত্রিক ও সেমান্টিক পাসে ভাগ করে। অন্যান্য ভ্যারিয়েন্টের মধ্যে রয়েছে scout-first (৮ ধাপ), full-with-audit (৬), full (৫), defect scan (২), lite (৩), architecture-only (১), এবং synthesis (৪)। অনুসন্ধান বা অগ্রগতি মুছে না ফেলেই ভ্যারিয়েন্টগুলো জায়গায় জায়গায় পরিবর্তন করা যায়। প্রসঙ্গ স্থিতিস্থাপকতা: ফাইলসিস্টেমই স্থায়ী স্মৃতি, কথোপকথন নয়। প্রতিটি ধাপ একটি নতুন প্রসঙ্গ উইন্ডো পায়; সম্পন্ন অনুসন্ধান ডিস্কে থাকে; `status.yaml` অগ্রগতি, খোলা প্রশ্ন, ক্যারি-ফরওয়ার্ড আইটেম, এবং পাইপলাইন-পরবর্তী ব্যাকলগ রেকর্ড করে। Pi ধাপের ট্রান্সক্রিপ্ট ফাইল-ব্যাকড এবং `/resume`, `/tree`, ও `/export`-এর মাধ্যমে উপলব্ধ থাকে। ধাপ-সচেতন কম্প্যাকশন সারাংশ `.codecarto/scratch/checkpoints/`-এর অধীনে চেকপয়েন্ট করা হয়। README উল্লেখ করে যে ধাপের ভেতরের প্রসঙ্গ চাপ সীমিত করা হয়, দূর করা হয় না। সারফেস ও বৈশিষ্ট্য: Pi এক্সটেনশন স্ল্যাশ কমান্ড, একটি লাইভ এজেন্ট উইজেট, ফাইল-ব্যাকড ধাপ সেশন, ধাপ-সমাপ্তি সারাংশ, অপ্ট-ইন LLM-পরিচালিত সিড প্রম্পট, প্রতি-ধাপ ব্যবহার ট্র্যাকিং, এবং টুল ইন্টারসেপশন (bash ব্লকড; edit/write `.codecarto/`-এ সীমাবদ্ধ) যোগ করে। MCP সার্ভার অন্যান্য MCP-সক্ষম এজেন্টের জন্য ধাপ প্রম্পট, যাচাইকরণ, এবং পরীক্ষামূলক লাইব্রেরি publish/list/reindex অপারেশন প্রকাশ করে। একটি একক-ফাইল HTML ড্যাশবোর্ড অগ্রগতি, লিঙ্ক, ব্যবহার, এবং একটি ঐচ্ছিক বর্ণনামূলক সারাংশ একত্রিত করে। ফরওয়ার্ড সিন্থেসিস একটি পণ্য দৃষ্টিভঙ্গির সঙ্গে মানব-নিশ্চিত লাইব্রেরি স্পেসিফিকেশনকে একটি উৎস-সমর্থিত প্রকল্প পরিকল্পনায় মিলিত করে, যেখানে রানটাইম প্রিফ্লাইট চেক মার্জ বা চূড়ান্তকরণের আগে স্পষ্ট মানব নিশ্চিতকরণ দাবি করে।