Markdown ڈاؤن لوڈ کریںGitHub پر اصل دستاویز
ایپ انضمام کی قبولیتی جانچ
اکاؤنٹ موڈ probes اب مختصر مدت شناخت assertions لیتے ہیں۔ منفی Launch خریداری حالت صرف خریداری کا ثبوت ہے، Licentivo رن ٹائم انکار کا نہیں۔ رن ٹائم ثبوت کے لیے سرکاری SDK probe ضروری؛ پروڈکشن تعیناتی یا SDK اشاعت مراد نہیں۔ اکاؤنٹ حد دیکھیں۔
ثبوت کی دو الگ سطحیں ہیں: کنٹرول شدہ مقامی خودکار جانچیں اور بیرونی مرچنٹ sandbox probes۔ test double، کامیاب کیٹلاگ مطالعہ، تیار ترتیب یا کامیاب health check حقیقی ادائیگی، لائسنس اجراء یا ایکٹیویشن ثابت نہیں کرتے۔ اس ترقیاتی دور میں بیرونی سروس ترتیب واضح طور پر مؤخر تھی۔
مقامی خودکار جانچیں
ذخیرے کی جڑ سے چلائیں:
go test ./...
go vet ./...
node --check internal/httpapi/web/app.js
node --check internal/httpapi/web/integration.js
node --check internal/httpapi/web/integration-prompts.js
node --test scripts/integration-prompts.test.mjs scripts/integration-state.test.mjs
python scripts/test_acceptance.py
./scripts/test-mysql.ps1
MySQL مددگار .cache میں نیا الگ سرور اور ڈیٹا بیس بناتا ہے؛ اسے گاہک کے ڈیٹا بیس کی طرف نہ کریں۔ سادہ go test ./... الگ DSNs نہ ملنے پر ڈیٹا بیس منظرنامے چھوڑتا ہے۔ SDK/پیکیج جانچ اور بلڈ integration-packages.md میں ہیں۔ ریلیز ریکارڈ کے ساتھ ٹیسٹ آؤٹ پٹ اور ٹول ورژن محفوظ رکھیں۔
مقامی میٹرکس میں توثیق، مشروط ای میل توثیق، پروڈکٹ/ماحول ملکیت، pending/expired/suspended حالت، ادائیگی ایونٹ ری پلے، لائسنسنگ ملاپ، تجدید/واپسی، اکاؤنٹ تبدیلی، محفوظ سیشن استقامت اور آف لائن fallback فیصلے شامل ہیں۔ لائف سائیکل ٹیسٹ کنٹرول شدہ رن ٹائم استعمال کرتے ہیں؛ حقیقی خفیہ نگاری رن ٹائم توثیق سرکاری SDK کی ذمہ داری ہے اور ریلیز سے پہلے الگ آزمائی جاتی ہے۔
آپریشن ٹولز → AI فوری انضمام کے لیے نو زبانوں کے انتخاب، پلیٹ فارم/پروجیکٹ/فیچر انتخاب، غیر مرتب مسودہ اور مصدقہ عوامی ترتیب سے بنا پرامپٹ جانچیں۔ دکھائے پرامپٹ سے کاپی اور ڈاؤن لوڈ ملائیں، اور پروڈکٹ یا ماحول بدلنے پر پرانی مصدقہ ترتیب باقی نہ رہنے دیں۔ پرامپٹ سے سیشن، پاس ورڈ، رن ٹائم لائسنس/ڈیوائس اسناد اور انتظامی کلیدیں خارج ہوں؛ پرامپٹ بنانا یا کاپی کرنا AI سروس کال نہ کرے۔ اوپر سورس بنڈل Node ٹیسٹ کمانڈ خالص جنریٹر آزماتی ہے۔ تیار پرامپٹ یا بعد میں AI ٹول سے بنا کوڈ بھی زبان ٹیسٹ اور نیچے بیرونی قبولیتی مراحل مانگتا ہے۔
بیرونی sandbox قبولیتی جانچ تیار کریں
- قابل رسائی HTTPS origin اور فراہم کنندہ ویب ہکس والا مخصوص Launch ٹیسٹ انسٹینس تعینات کریں۔ live فروخت غیر فعال رکھیں۔
- ایک ادائیگی فراہم کنندہ کی sandbox اسناد اور Licentivo پڑھنے/لکھنے کنکشن ترتیب دیں۔ ادائیگی sandbox ریکارڈ الگ ہیں، لیکن مرتب Licentivo سروس استعمال کرتے اور حقیقی ٹیسٹ لائسنس/ڈیوائس ریکارڈ بنا سکتے ہیں۔ مخصوص ٹیسٹ پروڈکٹ/پالیسی اور ٹیسٹ گاہک استعمال کریں۔
- sandbox پلان شائع کریں اور پروگرام انضمام سے
launch-config.jsonاور مصدقہproduct.jsonکو.local/acceptance/میں برآمد کریں۔ - صرف جائزہ شدہ Launch Python پیکیج مقامی انسٹال کریں:
python -m pip install ./sdk/python، یا اس کا wheel۔ نجی SDK نفاذ شامل ہے۔ exportجیسا غیر میٹر ٹیسٹ فیچر استعمال کریں۔--activateسرکاری SDK شروع، مطابقتی طور پرrefresh_online()کال، فعال آن لائن حالت لازم اور محفوظ کارروائی API چلاتا ہے۔ صرف کیش شدہ آف لائن گرانٹ یہ probe پاس نہیں کر سکتا؛ یہ probe میٹرنگ نہیں آزماتا۔
اسناد بغیر echo مانگی جاتی ہیں۔ آٹومیشن اپنے نجی عمل ماحول میں LAUNCH_ACCEPTANCE_EMAIL اور LAUNCH_ACCEPTANCE_PASSWORD دے سکتی ہے۔ پاس ورڈ کمانڈ arguments، رپورٹس، اسکرین شاٹس یا commit فائلوں میں نہ رکھیں۔ ٹول ہر مصدقہ probe کے بعد اپنا عارضی ڈیسک ٹاپ سیشن منسوخ کرتا ہے، مگر عام اخراج پر ڈیوائس غیر فعال نہیں کرتا۔
python scripts/acceptance.py preflight --config .local/acceptance/launch-config.json --report .local/acceptance/01-preflight.json
python scripts/acceptance.py verify --config .local/acceptance/launch-config.json --expect not_purchased --report .local/acceptance/02-no-purchase.json
ٹول live ماحول ترتیب، non-loopback HTTP، اسناد والے redirects، غیر مماثل پروڈکٹس اور رن ٹائم راز والی عوامی ترتیب مسترد کرتا ہے۔ درخواست سے پہلے verify کے باہر ایکٹیویشن/آرڈر assertions اور checkout کے باہر چیک آؤٹ تخلیق اختیارات مسترد کرتا ہے۔ موجودہ رپورٹس اوور رائٹ نہیں ہوتیں۔ رپورٹس میں اجازت فہرست والے ثبوت ہیں، خام جواب، رسائی ٹوکن یا لائسنس کلیدیں نہیں۔ سرور یا SDK غائب ہو تو ناکام probe بنتا ہے، مصنوعی کامیابی نہیں۔
مقامی مرچنٹ probes، scope: local_sandbox_probe اور licensing_scope: not_called استعمال کرتے ہیں۔ verify --activate مرچنٹ localhost پر ہو تب بھی سرکاری بیرونی لائسنس سروس سے رابطہ کرتا ہے؛ یہ مجموعہ local_merchant_external_licensing_probe اور licensing_scope: official_external_service کے ساتھ درج ہوتا ہے۔
پہلی ادائیگی اور ایکٹیویشن
مرچنٹ ویب سائٹ پر ٹیسٹ چیک آؤٹ بنائیں، یا مستحکم کارروائی UUID سے بنائیں:
$operation = [guid]::NewGuid().ToString()
python scripts/acceptance.py checkout --config .local/acceptance/launch-config.json --provider stripe --plan-version-id PLAN_VERSION_UUID --operation-id $operation --report .local/acceptance/03-checkout.json
فراہم کنندہ اور پلان ورژن اپنے شائع sandbox پلان سے بدلیں۔ غیر یقینی چیک آؤٹ تخلیق کی دوبارہ کوشش میں وہی کارروائی UUID رکھیں اور استعمال کریں۔ ٹول آرڈر ID پرنٹ کرتا ہے۔ اپنا آرڈر مرچنٹ اکاؤنٹ سینٹر میں فراہم کنندہ کے سرکاری sandbox چیک آؤٹ سے مکمل کریں۔ probe جان بوجھ کر فراہم کنندہ UI تعامل کی نقل نہیں کرتا۔
فراہم کنندہ کی ادائیگی تصدیق اور ویب ہک موصول ہونے کے بعد:
python scripts/acceptance.py verify --config .local/acceptance/launch-config.json --order-id ORDER_UUID --expect-order paid --expect active --activate --product-config .local/acceptance/product.json --feature export --report .local/acceptance/04-activation.json
یہ مصدقہ اکاؤنٹ، ملکیتی sandbox آرڈر، استحقاق، اسناد/پروڈکٹ مطابقت اور حقیقی سرکاری SDK محفوظ کارروائی جانچتا ہے۔ زیر التوا اجازت محدود وقت میں زیادہ سے زیادہ پانچ بار آزمائی جاتی ہے (طے شدہ 30 سیکنڈ، زیادہ سے زیادہ 120)، Retry-After کی پابندی کے ساتھ۔ غیر متوقع اجازت ناکامی SDK کا خام غلطی متن ظاہر کیے بغیر درج ہوتی ہے۔
لائف سائیکل قبولیتی میٹرکس
ہر جاری زبان/OS جوڑے کے لیے تاریخ والا ریکارڈ رکھیں جس میں سورس نظر ثانی، Launch/client/SDK ورژن، فراہم کنندہ ماحول، گمنام گاہک لیبل، آرڈر IDs، متوقع نتیجہ، مشاہدہ شدہ نتیجہ اور متعلقہ رپورٹ فائل نام ہو۔ نہ چلائی قطاریں not run نشان زد کریں۔ پہلی ادائیگی probe سے پورا میٹرکس کامیاب نہ نشان زد کریں۔
| منظرنامہ | طریقہ | ضروری ثبوت |
|---|---|---|
| رجسٹریشن / توثیق | بغیر خریداری رجسٹر کریں؛ توثیق فعال اور غیر فعال پر دہرائیں | غیر فعال توثیق نہیں روکتی؛ فعال توثیق تکمیل تک EMAIL_VERIFICATION_REQUIRED دیتی ہے |
| کوئی خریداری نہیں | verify --expect not_purchased چلائیں |
اسناد مسترد؛ کوئی محفوظ کارروائی نہیں چلتی |
| پہلی خریداری | sandbox ادائیگی مکمل کر کے ایکٹیویشن probe چلائیں | فراہم کنندہ ادائیگی مصدق؛ ایک ادا شدہ استحقاق، ایک ہم آہنگ لائسنس، SDK کارروائی کامیاب |
| دوبارہ آغاز | یاد رکھے لاگ ان کے ساتھ منتخب زبان کی مثال بند کریں، نیا عمل شروع کر کے بحال کریں | پاس ورڈ پرامپٹ نہیں؛ وہی اکاؤنٹ/پروڈکٹ کیش اور درست دستخط شدہ گرانٹ |
| آف لائن آغاز | کامیاب یاد رکھی ایکٹیویشن کے بعد اس ٹیسٹ عمل/مشین کا نیٹ ورک بند کر کے دوبارہ شروع کریں | دستخط شدہ کیش گرانٹ صرف پالیسی اجازت یافتہ کارروائیاں دیتا ہے؛ no-offline/floating پالیسی آغاز مسترد کرتی ہے |
| آف لائن میعاد / گھڑی rollback | مختصر مدت ٹیسٹ پالیسی اور قابل تلف ٹیسٹ مشین استعمال کریں | SDK ختم شدہ/rollback حالت مسترد کرتا ہے؛ فیچر کال بیک نہیں چلتا |
| تجدید / اپ گریڈ | sandbox اسٹور فرنٹ سے تجدید یا کوٹ شدہ اپ گریڈ خریدیں | درست آرڈر/کوریج؛ ہم آہنگی اور SDK ریفریش کے بعد نئی میعاد/فیچرز دکھتے ہیں |
| رقم واپسی | مکمل sandbox واپسی مانگیں/منظور کریں؛ فراہم کنندہ تصدیق کا انتظار کریں | فراہم کنندہ واپسی اور مقامی کوریج متفق؛ مناسب طور پر verify --expect suspended یا --expect expired؛ دوسری ادا شدہ کوریج قابل استعمال رہتی ہے |
| لاگ آؤٹ / اکاؤنٹ تبدیلی | A لاگ آؤٹ، بغیر خریداری B سے سائن ان کریں؛ دوبارہ آغاز اور رویہ جانچیں | A کا محفوظ سیشن/کیش ہٹا؛ B، A کا لائسنس، ڈیوائس یا فیچرز استعمال نہیں کر سکتا |
| پروڈکٹ / ماحول علیحدگی | دوسرا پروڈکٹ استعمال کریں اور الگ sandbox/live ترتیبات بدلیں | اسناد اور کیش شناختی دائروں کے پار نہیں جا سکتے؛ بیرونی probe خود live مسترد کرتا ہے |
| ڈیوائس مکمل / ریلیز | پالیسی کی زیادہ سے زیادہ منفرد ٹیسٹ ڈیوائسز پر ایکٹیویٹ کریں؛ ایک مزید آزمائیں پھر واضح طور پر ایک ریلیز کریں | SDK اضافی ڈیوائس مسترد اور مصدقہ ریلیز کے بعد متبادل اجازت دیتا ہے؛ عام بندش ریلیز کوٹا خرچ نہیں کرتی |
| بحالی | زیر التوا اجراء میں Launch دوبارہ شروع، دستخط شدہ sandbox ویب ہک ری پلے کریں | ایک آرڈر کوریج/لائسنس، بالآخر ملاپ؛ ڈپلیکیٹ چیک آؤٹ یا چارج نہیں |
پہلے جاری آف لائن گرانٹ پر واپسی/معطلی اثرات سرکاری SDK کی دستخط شدہ آف لائن پالیسی سے محدود ہیں۔ منقطع حالت میں فوری تنسیخ کا دعویٰ نہیں۔ معاہدہ ختم ہونے پر طویل Launch خرابی upstream معطلی مؤخر کر سکتی ہے؛ معاہدے کی حدود دیکھیں۔
تکمیل اور محفوظ ثبوت
ہر probe رپورٹ جان بوجھ کر acceptance_complete: false مقرر کرتی ہے: صرف اسی بار واقعی چلائی جانچیں درج ہیں۔ ریلیز قبول کرنے سے پہلے میٹرکس اور فراہم کنندہ ریکارڈ دیکھیں۔ بیرونی سروس بعد میں ترتیب دے کر اوپر کمانڈ دوبارہ چلائیں؛ غائب نتائج کامیاب فلیگ سے نہ بدلیں یا صرف مقامی ٹیسٹ کامیاب ہونے پر live فروخت فعال نہ کریں۔