Build An AI QA Agent for Expo Apps

AI ഏജന്റുകൾ വേഗത്തിൽ കോഡ് എഴുതുന്നു. ഇതിനർത്ഥം കൂടുതൽ pull requests വരുന്നു എന്നാണ്, അതോടൊപ്പം ഗുണനിലവാര പരിശോധനകളുടെ (quality checks) ആവശ്യകതയും വർദ്ധിക്കുന്നു.

Backend ടെസ്റ്റിംഗിനേക്കാൾ പ്രയാസമാണ് Frontend ടെസ്റ്റിംഗ്. AI-ക്ക് UI കോഡ് എഴുതാൻ കഴിയും, എന്നാൽ പലപ്പോഴും വിഷ്വൽ കൃത്യത (visual mark) ഇതിൽ കുറയാറുണ്ട്. യഥാർത്ഥ ഉപകരണങ്ങളിൽ (real devices) ഫലങ്ങൾ പരിശോധിക്കാൻ നിങ്ങൾക്ക് ഒരു മാർഗ്ഗം ആവശ്യമാണ്.

EAS Workflows ഉപയോഗിച്ച് Expo ആപ്പുകൾക്കായി നിങ്ങൾക്ക് ഒരു ലഘുവായ (lightweight) QA ഏജന്റ് നിർമ്മിക്കാം. ഇതിനായി വലിയൊരു പ്ലാറ്റ്‌ഫോം തന്നെ വേണമെന്നില്ല.

ഇത് എങ്ങനെ സജ്ജീകരിക്കാം എന്ന് താഴെ നൽകുന്നു:

  • CNG ഉള്ള ഒരു Expo ആപ്പ് ഉപയോഗിക്കുക.
  • Android, iOS എന്നിവയിൽ ജോബുകൾ പ്രവർത്തിപ്പിക്കാൻ EAS Workflows ഉപയോഗിക്കുക.
  • ഒരു AI SDK ഉള്ള Node.js ഏജന്റ് ഉപയോഗിക്കുക.
  • മൊബൈൽ ഓട്ടോമേഷനായി agent-device ഉപയോഗിക്കുക.
  • ഫലങ്ങൾ നേരിട്ട് GitHub pull requests-ലേക്ക് പോസ്റ്റ് ചെയ്യുക.

ഓരോ pull request-നും ലളിതമായ ഒരു ലൂപ്പ് (loop) എന്നതാണ് ഇതിന്റെ ലക്ഷ്യം:

  • സമയം ലാഭിക്കാൻ നിലവിലുള്ള മൊബൈൽ ബിൽഡുകൾ വീണ്ടും ഉപയോഗിക്കുക.
  • ഒരു എമുലേറ്ററോ (emulator) സിമുലേറ്ററോ (simulator) പ്രവർത്തിപ്പിക്കുക.
  • ആപ്പ് ഇൻസ്റ്റാൾ ചെയ്ത് ലോഞ്ച് ചെയ്യുക.
  • UI പരിശോധിക്കാനും സ്ക്രീൻഷോട്ടുകൾ എടുക്കാനും ഒരു AI ഏജന്റിനെ അനുവദിക്കുക.
  • PR-ന് താഴെ ഒരു സംഗ്രഹം (summary) പോസ്റ്റ് ചെയ്യുക.

ഇത് വിശ്വസനീയമാക്കാൻ, വർക്ക്ഫ്ലോ നിശ്ചിത രീതിയിലുള്ളതാകണം (deterministic). ഇൻസ്റ്റാളേഷനോ സെറ്റപ്പോ കൈകാര്യം ചെയ്യാൻ AI-യെ അനുവദിക്കരുത്. ആദ്യം ആപ്പ് ഇൻസ്റ്റാൾ ചെയ്യാനും തുറക്കാനും സ്ക്രിപ്റ്റുകൾ ഉപയോഗിക്കുക. അതിനുശേഷം, നാവിഗേഷൻ (navigation), ഇൻസ്പെക്ഷൻ (inspection) തുടങ്ങിയ മാറിക്കൊണ്ടിരിക്കുന്ന കാര്യങ്ങൾ കൈകാര്യം ചെയ്യാൻ ഏജന്റിനെ അനുവദിക്കുക.

EAS Workflows നേരത്തെ തന്നെ മൊബൈൽ CI കൈകാര്യം ചെയ്യുന്നതുകൊണ്ടാണ് ഈ രീതി ഫലപ്രദമാകുന്നത്. ഇത് താഴെ പറയുന്നവ നൽകുന്നു:

  • നാറ്റീവ് മാറ്റങ്ങൾ കണ്ടെത്താൻ Fingerprinting.
  • അനാവശ്യമായ റീബിൽഡുകൾ ഒഴിവാക്കാൻ Build reuse.
  • Android, iOS എന്നിവയ്ക്കായി വിർച്വലൈസേഷൻ (virtualization) ഉള്ള റണ്ണറുകൾ.
  • എളുപ്പത്തിലുള്ള ഫീഡ്‌ബാക്കിനായി GitHub integration.

നിങ്ങളുടെ ഏജന്റിനെ കൃത്യമായ ലക്ഷ്യത്തിൽ കേന്ദ്രീകരിക്കുക. ആപ്പിനെ ഒരു 'ബ്ലാക്ക് ബോക്സ്' (black box) ആയിട്ടാണ് അത് കാണേണ്ടത്. അത് PR കോൺടെക്സ്റ്റ് വായിക്കുകയും, UI പരിശോധിക്കുകയും, ഒരു റിപ്പോർട്ട് തയ്യാറാക്കുകയും വേണം. ഒരു ഫലത്തെക്കുറിച്ച് ഏജന്റിന് ഉറപ്പില്ലെങ്കിൽ, അത് വ്യക്തമാക്കുകയും ഒരു സ്ക്രീൻഷോട്ട് ചേർക്കുകയും വേണം.

നിങ്ങൾക്ക് ആൻഡ്രോയിഡ് പോലുള്ള ഒരു പ്ലാറ്റ്‌ഫോമിൽ നിന്ന് തുടങ്ങാം, പിന്നീട് iOS ചേർക്കാം. ഈ സജ്ജീകരണം വേഗതയുള്ളതും ചെറുതും നിങ്ങളുടെ ടീമിനൊപ്പം വളരുന്നതുമാണ്.

ഈ ടെംപ്ലേറ്റ് ഉപയോഗിച്ച് തുടങ്ങാം: callstackincubator/eas-agent-device

Source: https://dev.to/expo/build-an-ai-qa-agent-for-expo-apps-with-eas-workflows-in-minutes-today-13nb

Optional learning community: https://t.me/GyaanSetuAi