ఈ పరీక్ష ఎందుకు ముఖ్యం

AI-ఆధారిత కోడ్ అసిస్టెంట్లు తరచుగా టీమ్‌లు తమ రెపో (repo)లో ఒక "రూల్స్" ఫైల్‌ను ఉంచితే, ప్రతి రిక్వెస్ట్‌పై మోడల్ ఆ సూచనలను పాటిస్తుందని భావిస్తాయి. వాస్తవానికి, మోడల్ ఆ ఫైల్‌ను అసలు చూడకపోవచ్చు, లేదా చూసినా దానిలోని అంశాలను విస్మరించవచ్చు. Claude Codeతో చేసిన ఇటీవలి ప్రయోగం ఈ రెండు సమస్యలను చూపించింది. ఆ టూల్ 72 KB AGENTS.md ఫైల్‌ను నిశ్శబ్దంగా స్కిప్ చేసింది; అదే ఫైల్‌ను CLAUDE.mdగా పేరు మార్చినప్పుడు, అసిస్టెంట్ దానిని లోడ్ చేసింది మరియు ప్రతి రిక్వెస్ట్ కోసం టోకెన్ కౌంట్‌ను (token count) పెంచింది. ఆ అదనపు టోకెన్ బడ్జెట్ లేటెన్సీ (latency), ఖర్చును పెంచుతుంది మరియు రిక్వెస్ట్‌ను మోడల్ పరిమితికి మించి నెట్టవచ్చు.

"ఫైల్ ఉంది" అంటే "మోడల్ రూల్స్‌ను పాటిస్తుంది" అని అనుకునే డెవలపర్లు, తెలియని అసమర్థతలు మరియు ఊహించని అవుట్‌పుట్‌లను ఎదుర్కోవాల్సి వస్తుంది. ఈ మూడు-దశల పరీక్ష ప్రతి దశలోనూ—కాన్ఫిగరేషన్, లోడింగ్ మరియు యూస్‌ఫుల్‌నెస్—ఖచ్చితమైన ఆధారాలను కోరుతుంది.

అడగవలసిన మూడు ప్రశ్నలు

  1. కాన్ఫిగర్డ్ (Configured) – అసిస్టెంట్ వెతికే చోట ఫైల్ ఉందా? వేర్వేరు టూల్స్ నిర్దిష్ట పాత్‌లను లేదా ఫైల్ నేమ్ కన్వెన్షన్లను కలిగి ఉంటాయి; వాటి మధ్య తేడా ఉంటే, ఆ ఫైల్ ప్రాంప్ట్ పైప్‌లైన్‌లోకి ఎప్పటికీ రాదు.
  2. లోడెడ్ (Loaded) – అసిస్టెంట్ ఆ ఫైల్‌ను అందుకున్నట్లు ఏదైనా ఆధారాన్ని చూపుతుందా? ఒక హాష్ (hash) ద్వారా డిస్క్‌లో ఉన్న ఫైల్ యొక్క గుర్తింపును ధృవీకరించవచ్చు, కానీ డెలివరీ ట్రేస్ (ఉదాహరణకు, ఒక లాగ్ లైన్ లేదా టోకెన్ కౌంట్) మాత్రమే మోడల్ దానిని నిజంగా గమనించిందని నిరూపిస్తుంది.
  3. యూస్‌ఫుల్ (Useful) – ఫైల్ ఉండటం వల్ల టాస్క్ ఫలితం మెరుగుపడుతుందా? టోకెన్లను పెంచుతూ, ఫలితాన్ని మార్చని లోడ్ చేయబడిన ఫైల్ వల్ల నష్టమే ఎక్కువ.

పరీక్షను నిర్వహించడం

ఈ విధానం కావాలనే చాలా సరళంగా రూపొందించబడింది, తద్వారా దీనిని ఏ ప్లాట్‌ఫామ్‌లోనైనా పునరావృతం చేయవచ్చు.

  1. కనిపించే రూల్‌ను సృష్టించండి – సరళమైన, గమనించదగిన సూచనను వ్రాయండి. ఉదాహరణకు: “ఎడిట్ చేయడానికి ముందు ఖచ్చితంగా రెండు ఫైల్‌లను జాబితా చేయండి.” ఈ రూల్ యొక్క ప్రభావాన్ని అసిస్టెంట్ ఇచ్చే సమాధానంలో తనిఖీ చేయవచ్చు.

  2. టూల్ వెర్షన్ మరియు మోడల్‌ను తనిఖీ చేయండి – కొత్త సెషన్‌ను ప్రారంభించి, వెర్షన్ స్ట్రింగ్ మరియు మోడల్ ఐడెంటిఫైయర్‌ను గమనించండి. వేర్వేరు వెర్షన్లు అవి గుర్తించే ఫైల్ పేరును మార్చవచ్చు.

  3. రెండు రన్లను అమలు చేయండి Run A: టూల్ గుర్తించని ఫైల్ పేరును ఉపయోగించండి (ఉదా: AGENTS.md). Run B: టూల్ యొక్క నేటివ్ (native) ఫైల్ పేరును ఉపయోగించండి (ఉదా: CLAUDE.md).

    ఈ క్రింది వాటిని నమోదు చేయండి:

    • ఫైల్ యొక్క సోర్స్ హాష్ (ఫైల్ కంటెంట్ మారలేదని నిరూపించడానికి).
    • ఉపయోగించిన ఖచ్చితమైన పాత్ (path).
    • ఫైల్‌ను లోడ్ చేసినట్లు అసిస్టెంట్ చూపిన ఏదైనా ఆధారాలు (టోకెన్ కౌంట్ పెరగడం, "loaded X.md" అనే స్పష్టమైన సందేశం మొదలైనవి).
    • ప్రతి రిక్వెస్ట్ కోసం టోకెన్ కౌంట్.
    • టాస్క్ ఫలితం (అసిస్టెంట్ ఖచ్చితంగా రెండు ఫైల్‌లను జాబితా చేసిందా?).

ఒకవేళ Run B లో రూల్ పాటించబడుతున్నట్లు మరియు టోకెన్ కౌంట్ ఆశించిన స్థాయిలో పెరుగుతున్నట్లు కనిపిస్తే, ఆ ఫైల్ లోడ్ చేయబడింది మరియు ఉపయోగకరంగా ఉంది అని అర్థం. టోకెన్ల పెరుగుదల ఉన్నప్పటికీ రూల్ విస్మరించబడితే, ఫైల్ చదవబడుతున్నప్పటికీ మోడల్ యొక్క ప్రాంప్ట్ పార్సింగ్ (prompt parsing) ఆ సూచనను పక్కనవేస్తోంది అని అర్థం. అటువంటప్పుడు, ఫైల్‌కు మరిన్ని పదాలను జోడించడం వల్ల ఉపయోగం ఉండదు; ఆ రూల్‌ను హార్డ్-కోడెడ్ పాలసీ గేట్ లేదా టెస్ట్ హార్నెస్ (test harness)కు మార్చండి.

డేటా ఏమి చెబుతోంది

Claude Code కేసు కాన్ఫిగరేషన్ మరియు లోడింగ్ మధ్య ఉన్న స్పష్టమైన వ్యత్యాసాన్ని చూపించింది. 72 KB ఫైల్ ఉంది, సరైన హాష్ ఉంది మరియు రెపోలోకి సింక్ చేయబడింది, అయినప్పటికీ అసిస్టెంట్ దానిని ఎప్పుడూ ప్రస్తావించలేదు. ఫైల్‌ను నేటివ్ CLAUDE.mdగా పేరు మార్చడం వల్ల లోడింగ్ ప్రారంభమైంది, కానీ అది గణనీయమైన టోకెన్ ఓవర్‌హెడ్‌ను కూడా పెంచింది. ప్రతి అదనపు టోకెన్ కంప్యూట్ సైకిల్స్‌ను వినియోగించుకుంటుంది మరియు రిక్వెస్ట్‌ను రేట్ లిమిట్‌ల (rate limits) దాటి పంపవచ్చు.

ఈ మూడు-దశల పరీక్ష ఇటువంటి దాగి ఉన్న ఖర్చులను అవి ప్రొడక్షన్ అడ్డంకులుగా మారకముందే బయటపెడుతుంది. టోకెన్ వ్యత్యాసాన్ని (token delta) గమనించడం ద్వారా, రూల్ వల్ల కలిగే ప్రయోజనం దాని ఖర్చు కంటే ఎక్కువగా ఉందో లేదో టీమ్‌లు నిర్ణయించుకోవచ్చు.

ముఖ్య గమనిక

ఒక రూల్ ఫైల్ రెపోలో ఉంది కదా అని అది పని చేస్తోందని ఎప్పుడూ అనుకోవద్దు. ఆ ఊహను కొలవదగిన ఆధారంగా మార్చడానికి మూడు-దశల పరీక్షను—కాన్ఫిగర్, లోడ్, యూస్‌ఫుల్‌నెస్‌ను నిరూపించు—ఉపయోగించండి. ఒక ఫైల్ కేవలం టోకెన్ సింక్ (token sink) మాత్రమే అని తేలితే, ఆ లాజిక్‌ను ప్రాంప్ట్ నుండి తీసివేసి ఒక డిటర్మినిస్టిక్ గేట్ (deterministic gate)లోకి మార్చండి. దీనివల్ల మరింత వేగవంతమైన, తక్కువ ఖర్చుతో కూడిన మరియు మరింత ఊహించదగిన AI కోడింగ్ వర్క్‌ఫ్లో లభిస్తుంది.