روٹ میپ
ایپ شیل
سیکشن کا عنوان “ایپ شیل”ایپ شیل (ControlCenterLayout) ورک اسپیس کے اندر موجود ہر روٹ کو ایک ShellRoute کے ذریعے لپیٹتا ہے۔ شیل کے اندر کی ہر منزل پر ورک اسپیس کا پری فکس لگا ہوتا ہے — /workspaces/:workspaceId/… — اور URL میں موجود ورک اسپیس آئی ڈی فعال ورک اسپیس کا واحد ذریعۂ حقیقت ہے۔ صرف سیاق سے پہلے کی سطحوں پر کوئی پری فکس نہیں ہوتا: /splash، /onboarding، /signed-out اور بغیر سابقہ /workspaces پکر، جو سب فل اسکرین اور شیل سے باہر ہیں۔
گیٹ اُس وقت مکمل ہوتا ہے جب سائن اِن صارف کے لیے کم از کم ایک forge منسلک ہو اور کم از کم ایک ورک اسپیس موجود ہو۔
کسی کریڈنشل کا نہ ہونا اور کوئی سیٹ اپ نہ ہونا دو الگ اسکرینیں ہیں، اور اِن میں فرق کرنے والی چیز users.onboarding_finished_at ہے جو کالر کے اپنے identity.me سے پڑھی جاتی ہے — ہرگز “ورک اسپیسز موجود ہیں” نہیں، جو اُس لمحے غلط ثابت ہو جاتا ہے جب کسی کو ایسے ورک اسپیس میں مدعو کیا جائے جو اُس نے خود نہ بنایا ہو۔ کوئی forge منسلک نہ ہونے پر، وہ اکاؤنٹ جس نے آن بورڈنگ مکمل کر لی ہو دوبارہ تصدیق کے لیے /signed-out پر جاتا ہے؛ اور جس نے نہ کی ہو وہ /onboarding پر جاتا ہے۔ جب تک یہ فلیگ نامعلوم رہتا ہے، گارڈ اندازہ لگانے کے بجائے اسپلاش کو روکے رکھتا ہے، کیونکہ وہ کبھی آن بورڈنگ سے واپس باہر ری ڈائریکٹ نہیں کرتا۔
بغیر پری فکس والے روٹس
سیکشن کا عنوان “بغیر پری فکس والے روٹس”| راستہ | اسکرین |
|---|---|
/splash |
اسٹارٹ اپ اسپلاش جو آن بورڈنگ گیٹ کو حل کرتا ہے |
/onboarding |
ایک forge جوڑیں، ورک اسپیس بنائیں یا اُس میں شامل ہوں، سینڈ باکس، ڈیفالٹ اڈاپٹر، پھر آواز۔ ورک اسپیس والا مرحلہ اُس وقت ہٹا دیا جاتا ہے جب اکاؤنٹ پہلے ہی کسی ورک اسپیس سے وابستہ ہو |
/signed-out |
دوبارہ تصدیق: وہی forge-کنکشنز کارڈ جو ترتیبات رینڈر کرتی ہے، بغیر اسٹیپ بار اور بغیر جاری رکھیں بٹن — forge کے رپورٹ کرتے ہی روٹر خود بخود نکل جاتا ہے |
/workspaces |
ورک اسپیس کی فہرست اور پکر |
/workspaces/:workspaceId |
/workspaces/:workspaceId/inbox پر ری ڈائریکٹ کرتا ہے |
ورک اسپیس روٹس
سیکشن کا عنوان “ورک اسپیس روٹس”نیچے دیے گئے راستوں میں /workspaces/:workspaceId پری فکس شامل نہیں ہے۔
| راستہ | کوئری پیرامز | اسکرین |
|---|---|---|
/inbox |
— | متحد ان باکس: ریویو لائف سائیکل کے مطابق درجہ بند PRs کے ساتھ ساتھ وہ غیر-PR کام بھی جو آپریٹر کو روکے ہوئے ہو۔ گارڈ کے بعد لینڈنگ کا راستہ؛ بغیر سابقہ /workspaces/:workspaceId یہاں ری ڈائریکٹ ہوتا ہے |
/spaces |
— | اسپیس کی سطح، کوئی اسپیس منتخب نہیں |
/spaces/:spaceId |
?m=<messageId>, ?tab=<key> |
ایک اسپیس؛ m کسی پیغام کو ڈیپ لنک کرتا ہے اور کھلنے پر ایک بار استعمال ہو جاتا ہے |
/tickets |
— | ٹکٹ بورڈ |
/tickets/:ticketId |
— | ٹکٹ ماسٹر-ڈیٹیل |
/projects/:projectId |
— | پروجیکٹ کا جائزہ |
/pull-requests |
?repo=<owner/name> |
PR کی فہرست؛ repo بائیں ریل میں اُس ریپوزٹری کو منتخب کرتا ہے |
/pull-requests/compose |
?space=<spaceId> |
نیا pull request تحریر کریں؛ space اُس اسپیس کا نام دیتا ہے جس کا الگ تھلگ ورک ٹری برانچ فراہم کرتا ہے |
/pull-requests/:owner/:repo/:prNumber |
?tab=<key>, ?comment=<id> |
diff ویوئر کے ساتھ PR کی تفصیل؛ comment کسی ایک تبصرے کی عددی REST آئی ڈی ہے |
/pipelines |
— | پائپ لائن رن کی فہرست |
/pipelines/run |
?templateId=<id> |
دستی رن لانچر |
/pipelines/:runId |
— | پائپ لائن رن کی تفصیل (اسٹیپ ٹائم لائن) |
/plans |
— | Plan Studio ہب: فعال پلانز، پلان دستاویزات، پلے بکس |
/plans/:kind/:id |
— | ایک پلان کے لیے Plan Studio؛ kind یا orchestration ہوتا ہے یا document |
/meetings |
— | میٹنگز کی فہرست |
/meetings/record |
— | لائیو میٹنگ ریکارڈنگ اسکرین |
/meetings/:meetingId |
— | میٹنگ کی تفصیل: نوٹس، ٹرانسکرپٹ، ایکشن آئٹمز، فیصلے |
/calendar |
— | کیلنڈر: ماہ، ہفتہ اور ایجنڈا ویو |
/calendar/:eventId |
— | کیلنڈر ایونٹ کی تفصیل (بہن روٹ؛ کیلنڈر صفحہ کی کلید شیئر کرتا ہے) |
/newsfeed |
— | نیوز فیڈ کی فہرست |
/newsfeed/article/:articleId |
— | آرٹیکل ریڈر |
/observability |
— | آبزرویبلٹی ہب: ورک اسپیس کے رن-لاگ فیڈ پر استعمال، بصیرتیں، لائیو اور معیار کے ٹیبز۔ ڈیفالٹ طور پر استعمال ٹیب کھلتا ہے |
/users/:login |
— | GitHub صارف پروفائل |
/teams/:organization/:slug |
— | GitHub آرگنائزیشن ٹیم پروفائل |
/api-keys |
— | API کلیدوں کا انتظام۔ نیویگیشن کا کوئی انٹری پوائنٹ نہیں — صرف URL سے قابلِ رسائی |
/settings/… |
— | ترتیبات کی اسکرینیں (نیچے) |
گفتگوؤں اور تھریڈز کا اپنا کوئی روٹ نہیں ہوتا — تھریڈ /spaces/:spaceId کے اندر ایک گفتگو ہوتی ہے، جو URL سے مخاطب کرنے کے بجائے ایڈیٹر ٹیب کے طور پر کھولی جاتی ہے۔
کوئی /dashboard روٹ نہیں ہے اور نہ کوئی ڈیش بورڈ اسکرین۔ تجزیاتی سطح /observability ہے، جہاں سائیڈبار کے فوٹر سے پہنچا جاتا ہے۔
سائیڈبار میں کوئی “پلانز” آئٹم نہیں ہے۔ Plan Studio اُس گفتگو میں پلان کی قطار سے ایڈیٹر ٹیب کے طور پر کھلتا ہے جس نے اُسے بنایا؛ /plans اور /plans/:kind/:id ڈیپ لنک ہیں۔
/observability اور /pull-requests/compose کا روٹ-ٹائٹل یا بریڈ کرمب رجسٹریوں میں کوئی اندراج نہیں، اس لیے دونوں وِنڈو ٹائٹل میں محض ایپ کا نام دکھاتے ہیں اور کوئی بریڈ کرمب ٹریل نہیں دکھاتے۔
ترتیبات کے روٹس
سیکشن کا عنوان “ترتیبات کے روٹس”/settings، /settings/you/appearance پر ری ڈائریکٹ کرتا ہے۔ سائیڈبار کا ترتیبات بٹن اور Cmd/Ctrl + , دونوں /settings/you/appearance پر جاتے ہیں۔
ترتیبات کے راستے اسکوپ کے مطابق نیم اسپیس میں رکھے جاتے ہیں — you/، workspace/، server/ — کیونکہ یہ سیگمنٹ بتاتا ہے کہ کوئی تبدیلی کس پر اثر ڈالتی ہے۔ دو راستے اِس نیم اسپیسنگ سے پہلے کے ہیں اور URL میں اسکوپ شدہ نہیں: /settings/memory اور /settings/pipelines۔
| راستہ | اسکرین |
|---|---|
/settings/you/appearance |
تھیم، زبان، ٹائپوگرافی، ایڈیٹر تھیم (ترتیبات کی لینڈنگ) |
/settings/you/notifications |
فی ایونٹ ٹوگلز، خاموش اوقات |
/settings/you/keybindings |
کی بورڈ شارٹ کٹ کا حوالہ (صرف پڑھنے کے لیے) |
/settings/you/audio |
مائیکروفون، ڈکٹیشن، میٹنگ کی شناخت اور ساؤنڈ اسکیپ آؤٹ پٹ |
/settings/you/devices |
پیئر شدہ فونز اور ریموٹ کنٹرول |
/settings/you/newsfeed |
فیڈ کا انتظام: ذرائع، ریفریش، پڑھے جانے کی حالت |
ورک اسپیس
سیکشن کا عنوان “ورک اسپیس”| راستہ | اسکرین |
|---|---|
/settings/workspace/profile |
اِس ورک اسپیس میں پروفائل اور شناخت: نام، git مصنف، کوڈ ہوسٹنگ، کیلنڈر |
/settings/workspace/general |
نام، لوگو، سیکرٹ گلوبز، ریویو کی بیک وقتی، برانچ کے نام کا انداز، سنک ہیلتھ، چیٹ برجز، ڈینجر زون |
/settings/workspace/meetings |
میٹنگ نوٹ کے ٹیمپلیٹس اور محفوظ آواز پروفائلز |
/settings/workspace/members |
راسٹر، دعوتیں، آڈٹ ٹریل۔ آڈٹ ٹریل اختیاری ?cursor= کے ساتھ صفحہ بند ہوتی ہے |
/settings/workspace/repositories |
اِس ورک اسپیس میں رجسٹرڈ ریپوزٹریز |
/settings/workspace/agents |
رجسٹرڈ ایجنٹ شناختیں |
/settings/workspace/skills |
مہارت کی کنفیگریشن |
/settings/memory |
ورک اسپیس میموری: حقائق، پالیسیاں، نالج گراف |
/settings/workspace/permissions |
ایجنٹ اجازتیں: گارڈریل میٹرکس اور what-if پروب |
/settings/pipelines |
پائپ لائن ٹیمپلیٹس |
/settings/pipelines/:templateId |
پائپ لائن ٹیمپلیٹ ایڈیٹر (ڈریگ اینڈ ڈراپ کینوس) |
| راستہ | اسکرین |
|---|---|
/settings/server/connection |
کنکشن اور اسٹیٹس |
/settings/server/sso |
سنگل سائن آن (SAML، OIDC، SCIM پروویژننگ) |
/settings/server/providers |
ماڈل فراہم کنندگان اور اڈاپٹرز |
/settings/server/mcp |
بلٹ اِن اور بیرونی MCP سرورز |
/settings/server/voice |
آواز اور میٹنگ ماڈلز (ASR، ڈائریائزیشن) |
/settings/server/rigs |
رگز: یہ ہوسٹ کیا بوٹ کر سکتا ہے، بیس امیجز، حسب ضرورت امیجز، چلتی مشینیں |
/settings/server/sandbox |
سینڈ باکس ایگزیک گرانٹس: وہ پروگرام جو ایجنٹ آپ کے ریپوز کی اپنی ورکنگ کاپی سے چلا سکتے ہیں |
/settings/server/diagnostics |
تشخیص اور پرائیویسی: سینڈ باکسنگ، ایمبیڈنگ، لاگنگ، کریش رپورٹنگ |
/settings/server/backup |
بیک اپ اور بحالی: انسٹال اسنیپ شاٹس، فی ورک اسپیس ایکسپورٹ، امپورٹ اور حذف |
/settings/server/about |
تعارف اور اپ ڈیٹس |
lib/features/settings/settings_nav.dart میں kSettingsNav اِس فہرست کا واحد ذریعۂ حقیقت ہے۔ settings_nav_test.dart منفرد آئی ڈیز، منفرد روٹس، فلیٹ شدہ J/K ترتیب اور تینوں اسکوپس پن کرتا ہے۔ یہ ہر رجسٹرڈ GoRoute پر نہیں چلتا۔
روٹ کنفیگریشن
سیکشن کا عنوان “روٹ کنفیگریشن”| معاملہ | فائل |
|---|---|
| روٹر | lib/router/app_router.dart |
| روٹ بلڈرز | lib/router/routes.dart |
| آتھ گارڈز | lib/router/guards.dart |
| آن بورڈنگ گیٹ | lib/features/auth/providers/onboarding_providers.dart |
| ترتیبات کی نیویگیشن | lib/features/settings/settings_nav.dart |