
Jev Review কী করে
Jev Review হলো TypeSafe Jev দিয়ে তৈরি একটি ছোট কোড-রিভিউ ওয়ার্কফ্লো। এটি Git diff পর্যালোচনা করতে পারে অথবা নির্বাচিত স্কোপের মধ্যে উপেক্ষা না করা প্রতিটি সোর্স ফাইল স্ক্যান করতে পারে, তারপর একটি শান্ত, স্থানীয় ড্যাশবোর্ডে ফলাফল দেখায়।
এই ওয়ার্কফ্লোতে অর্কেস্ট্রেশন ও নীতি অ্যাপ্লিকেশন কোডে রাখা হয়, আর সীমাবদ্ধ ও কাঠামোবদ্ধ সিদ্ধান্তের জন্য Jev ব্যবহার করা হয়। ফলাফলগুলোকে রিভিউয়ের নির্দেশনা হিসেবে বিবেচনা করা উচিত, কোনো ত্রুটি আছে—এর চূড়ান্ত প্রমাণ হিসেবে নয়।

রিভিউ ওয়ার্কফ্লো কীভাবে কাজ করে
প্রভাব নির্ধারণের আগে মনোযোগের ক্ষেত্র সংকুচিত করার জন্য Jev Review ধাপে ধাপে কাজ করে:
- ঝুঁকি ম্যাট্রিক্স তৈরি করে।
- ফাইল প্রোফাইল নির্বাচন ও স্কোর করে।
- প্রাসঙ্গিক প্রমাণ নির্বাচন করে।
- মূল অন্তর্নিহিত প্রক্রিয়ার শ্রেণিবিন্যাস করে।
- তীব্রতার স্কোর নির্ধারণ করে।
- ওয়ার্কফ্লোতে প্রয়োজন হলে নির্বাচিত ফলাফলগুলো রিভিউয়ারের কাছে পাঠায়।
রিভিউয়ার সঠিকতা, নিরাপত্তা, নির্ভরযোগ্যতা, সামঞ্জস্যতা এবং টেস্ট কভারেজ যাচাই করেন। টেস্টের ঘাটতি মূল্যায়নের সময় পরিবর্তিত বা সম্পর্কিত টেস্টগুলো প্রসঙ্গ হিসেবে ব্যবহার করা যায়। প্রভাবের স্কোর নির্ধারণের আগে এটি নির্দিষ্ট diff হাঙ্ক বা সোর্সের অংশও নির্বাচন করে এবং কাঠামোবদ্ধ নির্দেশনা, পাল্টা উদাহরণ, সিদ্ধান্তের সীমা, থ্রেশহোল্ড ও ওয়ার্কফ্লো নীতি প্রয়োগ করে।
পূর্বশর্ত ও ইনস্টলেশন
শুরু করার আগে Node.js 24 বা পরবর্তী সংস্করণ এবং Git ইনস্টল করুন। আপনার একটি TypeSafe API key-ও প্রয়োজন।
প্রকল্পটি ক্লোন করুন বা অন্য কোনোভাবে সংগ্রহ করুন, তারপর এর নির্ভরতাগুলো ইনস্টল করুন:
npm installপ্রদত্ত উদাহরণ থেকে এনভায়রনমেন্ট ফাইল তৈরি করুন:
cp .env.example .env.env খুলে আপনার API key যোগ করুন:
TYPESAFE_API_KEY=your_api_keyড্যাশবোর্ডের মাধ্যমে এই ফাইল প্রকাশ করবেন না। Jev Review ড্যাশবোর্ডকে 127.0.0.1-এ সংযুক্ত করে এবং এনভায়রনমেন্ট ফাইল পরিবেশন করে না।
বর্তমান Git Diff রিভিউ করুন
বর্তমান Git diff-এর রিভিউ JSON হিসেবে প্রিন্ট করতে change-review কমান্ড চালিয়ে একটি Git repository-এর পথ দিন:
npm run review:changes -- /path/to/git/repositoryকোনো রিপোজিটরিতে বর্তমানে থাকা পরিবর্তনগুলোর ওপর কেন্দ্রীভূত মতামত চাইলে এই মোডটি কার্যকর।
পরে ড্যাশবোর্ডে দেখার জন্য ফলাফল সংরক্ষণ করতে save ভ্যারিয়েন্ট ব্যবহার করুন:
npm run review:changes:save -- /path/to/git/repositoryসম্পূর্ণ কোডবেস স্ক্যান করুন
আরও বিস্তৃত রিভিউয়ের জন্য কোনো রিপোজিটরি বা প্যাকেজ স্কোপের অধীনে থাকা উপেক্ষা না করা প্রতিটি সোর্স ফাইল স্ক্যান করুন:

npm run review:codebase -- /path/to/git/repository-or-packageএই কমান্ড সম্পূর্ণ কোডবেস স্ক্যানের ফল JSON হিসেবে প্রিন্ট করে। এর পরিবর্তে ড্যাশবোর্ডের জন্য রিপোর্ট সংরক্ষণ করতে চালান:
npm run review:codebase:save -- /path/to/git/repository-or-packageসক্রিয় পরিবর্তনগুলোর কেন্দ্রীভূত রিভিউ দরকার হলে change-review entry point ব্যবহার করুন, আর নির্বাচিত স্কোপজুড়ে উপলভ্য সোর্স ফাইল পরিদর্শন করতে চাইলে complete-codebase entry point ব্যবহার করুন।
স্থানীয় ড্যাশবোর্ড খুলুন
কোনো change review বা codebase scan সংরক্ষণ করার পর স্থানীয় ড্যাশবোর্ড চালু করুন:
npm run dashboardব্রাউজারে http://127.0.0.1:4317 খুলুন। বড় রিপোর্টগুলো ভাঁজযোগ্য সেকশনে দেখানো হয়, ফলে স্থানীয় পরিবেশ ছাড়াই ফলাফল নেভিগেট করা সহজ হয়।
কমান্ড রেফারেন্স
npm run review:changes -- <path>বর্তমান diff-এর রিভিউ JSON হিসেবে প্রিন্ট করে।npm run review:changes:save -- <path>ড্যাশবোর্ডের জন্য বর্তমান diff-এর রিভিউ সংরক্ষণ করে।npm run review:codebase -- <path>সম্পূর্ণ কোডবেস স্ক্যান JSON হিসেবে প্রিন্ট করে।npm run review:codebase:save -- <path>ড্যাশবোর্ডের জন্য সম্পূর্ণ কোডবেস স্ক্যান সংরক্ষণ করে।npm run dashboardস্থানীয় ড্যাশবোর্ড চালু করে।npm run checkপ্রকল্পের টাইপচেক করে, নির্ভরতার প্রবাহ যাচাই করে এবং ড্যাশবোর্ড ক্লায়েন্টের সিনট্যাক্স পরীক্ষা করে।
প্রকল্পের কাঠামো বুঝুন
বাস্তবায়নটি src/-এর অধীনে এমন কয়েকটি স্তরে সংগঠিত, যেগুলো কেবল নিচের স্তরগুলোর ওপর নির্ভর করে:
src/
domain/ config.ts, types.ts, patch.ts
adapters/ git.ts, repository-files.ts
report-store.ts
review/ changes.ts, codebase.ts
*-judgments.ts, workflow.ts
cli/ review-*.ts, save-*.ts
dashboard/ server.ts, public/স্তরগুলোর দায়িত্ব হলো:
- Domain: শেয়ার করা কনফিগারেশন, রিপোর্টের ধরন, নীতি এবং diff পার্সিং।
- Adapters: Git ও সম্পূর্ণ সোর্স আবিষ্কার, পাশাপাশি পারমাণবিকভাবে রিপোর্ট সংরক্ষণ ও লোড করা।
- Review: মোড-নির্দিষ্ট ওয়ার্কফ্লো, Jev কল এবং ধাপে ধাপে অর্কেস্ট্রেশন।
- CLI: স্পষ্ট রিভিউ ও সংরক্ষণের entry point।
- Dashboard: কেবল স্থানীয় HTTP সার্ভার এবং সরল ক্লায়েন্ট।
ইমপোর্ট cli ও dashboard থেকে নিচের দিকে review, তারপর adapters ও domain-এ প্রবাহিত হয়। dashboard ও CLI স্তর একে অপরকে ইমপোর্ট করে না।
উন্নত ব্যবহার ও প্রকল্প পরীক্ষা
ওয়ার্কফ্লোতে পরিবর্তনের ওপর নির্ভর করার বা আর্কিটেকচার-সংক্রান্ত পরিবর্তনে অবদান রাখার আগে প্রকল্পের পরীক্ষা চালান:
npm run checkএই কমান্ডটি টাইপ পরীক্ষা করে, নির্ভরতার প্রবাহ যাচাই করে এবং ড্যাশবোর্ড ক্লায়েন্টের সিনট্যাক্স পরীক্ষা করে। নির্ভরতা স্ক্রিপ্টটি ব্যর্থ হয় যখন এটি ঊর্ধ্বমুখী ইমপোর্ট, cli ও dashboard-এর মধ্যকার ইমপোর্ট, অথবা নির্ভরতার চক্র শনাক্ত করে।
আরও নির্দিষ্ট পর্যালোচনার জন্য, প্রাসঙ্গিক Git পরিবর্তন করার পর একটি পরিবর্তন প্রতিবেদন সংরক্ষণ করুন এবং ড্যাশবোর্ডের মাধ্যমে তা পরীক্ষা করুন। আরও বিস্তৃত অনুসন্ধানের ক্ষেত্রে, যে রিপোজিটরি বা প্যাকেজের পরিসর স্ক্যান করতে চান তার পাথ দিন। এই দুটি এন্ট্রি পয়েন্ট পরিবর্তন-কেন্দ্রিক এবং সম্পূর্ণ-সোর্স ওয়ার্কফ্লোকে আলাদা রাখে।
মনে রাখবেন, Jev Review দ্রুত টাইপ করা সিদ্ধান্ত সমন্বয়ের একটি পরীক্ষামূলক উদ্যোগ। এটি বর্তমানে কম্পাইলার ডায়াগনস্টিক, স্ট্যাটিক অ্যানালাইজার, রিপোজিটরি ইনডেক্সিং বা স্বয়ংক্রিয়ভাবে তৈরি ব্যাখ্যার সঙ্গে সমন্বিত নয়। এর ফলাফলকে মানবিক পর্যালোচনার সূচনা হিসেবে বিবেচনা করুন, বিশেষ করে কেবল কোনো প্রতিবেদনে উল্লেখিত গুরুতরতার ভিত্তিতে পরিবর্তন করার আগে।
উপসংহার
Jev Review দুটি ব্যবহারিক পর্যালোচনা মোড সরবরাহ করে: বর্তমান Git ডিফের একটি কেন্দ্রীভূত বিশ্লেষণ এবং উপেক্ষা না করা সম্পূর্ণ কোডবেসের পরিসরের একটি স্ক্যান। নির্ভরতাগুলো ইনস্টল করুন, TYPESAFE_API_KEY কনফিগার করুন, একটি প্রতিবেদন সংরক্ষণ করুন এবং কাঠামোবদ্ধ ফলাফল পরীক্ষা করতে স্থানীয় ড্যাশবোর্ড খুলুন। এর ধাপে ধাপে সিদ্ধান্ত, প্রমাণ নির্বাচন এবং সুস্পষ্ট ওয়ার্কফ্লো নীতি এটিকে AI-সহায়িত কোড পর্যালোচনা সংগঠিত করার জন্য একটি কার্যকর স্থানীয় পরীক্ষায় পরিণত করে।
