Skip to content
Apothem
रनबुक

परिनियोजन चेकलिस्ट

Apothem इकोसिस्टम को परिनियोजित या साझा करने से पहले की पूर्व-परीक्षण सत्यापन चेकलिस्ट

Apothem इकोसिस्टम को किसी नई मशीन पर परिनियोजित करने, इसे दूसरों के साथ साझा करने, या इसे उत्पादन-तैयार मानने से पहले के पूर्व-परीक्षण सत्यापन चरण।


1. YAML वैधता

  • सभी नियम फ़ाइलें YAML त्रुटियों के बिना पार्स होती हैं — frontmatter ब्लॉक --- से खुलता है, --- से बंद होता है, और ब्लॉक के बाहर कोई अनाथ सामग्री नहीं रखता
  • सभी प्रत्यायोजित वर्कर फ़ाइलें YAML त्रुटियों के बिना पार्स होती हैं
  • सभी कमांड फ़ाइलें YAML त्रुटियों के बिना पार्स होती हैं
  • सभी स्किल SKILL.md फ़ाइलें YAML त्रुटियों के बिना पार्स होती हैं

सत्यापन: python scripts/dev/validate_ecosystem.py प्रत्येक आर्टिफ़ैक्ट के frontmatter को पार्स करता है और YAML त्रुटियों + लुप्त अनिवार्य फ़ील्ड को चिह्नित करता है। तदर्थ अनाथ-सूची-आइटम पहचान के लिए: rg -n "^- " src/apothem/rules/*.md.


2. frontmatter पूर्णता

प्रत्येक आर्टिफ़ैक्ट प्रकार के लिए, सत्यापित करें कि अनिवार्य फ़ील्ड मौजूद हैं:

नियम (src/apothem/rules/*.md)

  • name — फ़ाइलनाम से मेल खाता kebab-case पहचानकर्ता
  • description — एकल-वाक्य सारांश
  • alwaysApply — सदा-चालू नियमों के लिए true, पथ-फ़िल्टर्ड नियमों के लिए false
  • pathFilter — हर नियम पर मौजूद: सदा-चालू नियमों (alwaysApply: true) के लिए "", पथ-फ़िल्टर्ड नियमों (alwaysApply: false) के लिए अल्पविराम-पृथक glob सूची

नियमों में कोई version, updated, scope, या portability कुंजी नहीं होती।

कमांड (src/apothem/commands/*.md)

  • name — kebab-case कमांड नाम
  • version, updated, description, argument-hint, portability, allowed-tools मौजूद
  • disable-model-invocation मौजूद और सोद्देश्य (केवल-पठन या परामर्शी कमांडों के लिए false; true केवल तब जब कमांड चलाने से वर्किंग ट्री के बाहर स्थिति बदलती हो या वह ऑपरेटर द्वारा क्षण चुनने पर निर्भर हो)
  • कोई effort कुंजी नहीं: command.schema.json additionalProperties: false सेट करता है और उसे स्वीकार नहीं करता

प्रत्यायोजित वर्कर

पथ:

src/apothem/agents/*.md
  • name, version, updated, description मौजूद
  • tools — अनुमत टूल की अल्पविराम-पृथक सूची
  • disallowedTools — अननुमत टूल को स्पष्ट रूप से सूचीबद्ध करता है
  • maxTurns — सेट (यदि > 10 हो तो औचित्य टिप्पणी के साथ)
  • permissionMode — "bypassPermissions" नहीं होना चाहिए; कुंजी अनसेट छोड़ें, क्योंकि एग्नॉस्टिक रुख कोई अनुमति मोड पहले से सेट नहीं करता
  • memory तब तक छोड़ें जब तक स्थायी मेमोरी सोद्देश्य न हो; सेट होने पर user, project, local में से एक (बूलियन रूप नहीं)

स्किल (src/apothem/skills/*/SKILL.md)

  • name, version, updated, description, archetype, disable-model-invocation, allowed-tools मौजूद
  • userInvocable घोषित (true/false)। स्रोत वर्तनी userInvocable है; एक स्किल इनमें से ठीक एक रखती है: userInvocable या user-invocable (Claude Code की वर्तनी)।

3. सुरक्षा

  • कोई भी प्रत्यायोजित वर्कर permissionMode: "bypassPermissions" का उपयोग नहीं करता — यह Write/Bash संचालन के लिए इंटरैक्टिव पुष्टि को बायपास करता है
  • वर्कर की tools सूचियाँ न्यूनतम हैं — केवल वे टूल जिनकी वर्कर को वास्तव में आवश्यकता है
  • Bash एक्सेस वाले वर्कर उचित हैं और उनकी maxTurns सीमाएँ हैं
  • किसी भी आर्टिफ़ैक्ट में कोई हार्डकोडेड पथ, टोकन या रहस्य नहीं
  • settings.json में हुक के पास उचित टाइमआउट (≤ 60 सेकंड) हैं और वे उपयोगकर्ता इनपुट से मनमाना कोड निष्पादित नहीं करते

4. क्रॉस-संदर्भ अखंडता

  • src/apothem/rules/ तालिका में सूचीबद्ध प्रत्येक नियम बताए गए पथ पर डिस्क पर मौजूद है
  • src/apothem/commands/ तालिका में सूचीबद्ध प्रत्येक कमांड डिस्क पर मौजूद है
  • src/apothem/agents/ रजिस्ट्री तालिका में सूचीबद्ध प्रत्येक प्रत्यायोजित वर्कर डिस्क पर मौजूद है
  • src/apothem/skills/ तालिका में सूचीबद्ध प्रत्येक स्किल डिस्क पर मौजूद है
  • src/apothem/hooks/ तालिका में प्रत्येक हुक की settings.json में एक संगत प्रविष्टि है
  • सभी src/apothem/rules/*.md फ़ाइलें मौजूद हैं और अपने Bindings क्रॉस-संदर्भ हल करती हैं

5. अधिदेश कवरेज

  • प्रत्येक CM-N अधिदेश का एक प्रवर्तन स्थान है (या तो नियम फ़ाइल या स्पष्ट इनलाइन परिभाषा)
  • कोई नियम फ़ाइल किसी अन्य का खंडन नहीं करती (विशेष रूप से गंभीरता स्केलिंग के आसपास)
  • CM-21 तीन-पहलू सीमांकन का सम्मान किया जाता है — कोई नियम किसी अन्य नियम के CM-21 पहलू का स्वामित्व नहीं जताता

6. कार्यात्मक स्मोक टेस्ट

पहले Python सत्यापन सतह चलाएँ — यह तेज़, ऑफ़लाइन है, और संरचनात्मक प्रतिगमन पकड़ता है:

  • pytest tests — हुक रनटाइम के लिए यूनिट टेस्ट, सभी हरे
  • python scripts/dev/validate_hooks.py — हुक संरचना + केवल-Python स्वच्छता जाँच उत्तीर्ण
  • python scripts/dev/validate_ecosystem.py — पूर्ण ट्री + frontmatter + प्रत्यायोजित हुक जाँच उत्तीर्ण
  • python scripts/dev/chaos_pass.py — प्रत्येक कॉन्फ़िगर किया गया हुक कमांड अपक्षयित इनपुट के तहत एक वैध JSON एनवेलप लौटाता है

फिर लाइव परिदृश्य:

  • /plan-spec <sample-file> — कमांड-स्तर त्रुटियों के बिना अंतर्ग्रहण/स्पष्टीकरण पूरा करता है
  • /plan-generate --dry-run — फ़ाइलें लिखे बिना संरचना पूर्वावलोकन उत्पन्न करता है
  • एक पूर्ण प्लान सूट पर /plan-status — सटीक चरण गणनाएँ लौटाता है
  • प्रत्यायोजित-वर्कर डिस्पैच: छोटे दायरे के साथ आमंत्रित codebase-explorer वर्कर maxTurns के भीतर पूरा होता है और संरचित आउटपुट लौटाता है

7. दस्तावेज़ीकरण समसामयिकता

  • CHANGELOG.md (इकोसिस्टम रूट पर) पिछली रिलीज़ के बाद से प्रत्येक आर्टिफ़ैक्ट परिवर्तन को दर्शाता है; अगली रिलीज़ का अनुभाग टैग के उतरने से पहले भर दिया गया है, या प्रत्येक परिवर्तन पहले से ही किसी रिलीज़ किए गए अनुभाग में काट दिया गया है
  • site/content/docs/developer-guide.mdx वर्तमान आर्टिफ़ैक्ट संरचना का सटीक वर्णन करता है
  • site/content/docs/reference/artifact-schema.mdx आर्टिफ़ैक्ट में वास्तव में मौजूद frontmatter फ़ील्ड से मेल खाता है
  • site/content/docs/reference/settings-reference.mdx settings.json में वास्तविक हुक कॉन्फ़िगरेशन से मेल खाता है
  • README.md डिस्क पर ट्री के साथ संगत है

8. पोर्टेबिलिटी (यदि दूसरों के साथ साझा किया जा रहा है)

  • हुक कमांड में सभी पथ पर्यावरण-अज्ञेयवादी हैं या ~ विस्तार का उपयोग करते हैं
  • हुक कमांड exec रूप का उपयोग करते हैं और शेल-विशिष्ट कमांड स्ट्रिंग से बचते हैं
  • किसी भी आर्टिफ़ैक्ट में कोई हार्डकोडेड C:\Users\username या /home/username पथ नहीं
  • settings.json एक ही हुक इवेंट कवरेज तालिका और विहित डिस्पैच मॉड्यूल पथ का उपयोग करता है

9. संस्करण संरेखण

  • CLAUDE.md version ट्री में किसी भी आर्टिफ़ैक्ट का सर्वोच्च है (या परंपरा के अनुसार सबसे हाल ही में बंप किए गए आर्टिफ़ैक्ट के संस्करण के बराबर)
  • प्रत्येक आर्टिफ़ैक्ट का version बताए गए semver (MAJOR.MINOR.PATCH) से मेल खाता है
  • CHANGELOG.md में टैगिंग से पहले लक्ष्य संस्करण की ठीक रिलीज़ प्रविष्टि होती है
  • प्रत्येक आर्टिफ़ैक्ट का updated फ़ील्ड उसके अंतिम व्यवहार-परिवर्तक संपादन की तिथि पर या उसके बाद है
  • कोई आर्टिफ़ैक्ट उस संस्करण से निम्न version नहीं रखता जिस पर उसे अंतिम बार छुआ गया था (कोई प्रतिगमन नहीं)
  • src/apothem/skills/plan-suite/SKILL.md और src/apothem/skills/plan-suite/master-template.md एक ही टेम्पलेट संस्करण रेखा पर पिन किए गए हैं

अनुमोदन

जाँच श्रेणीस्थितिटिप्पणियाँ
YAML वैधता
frontmatter पूर्णता
सुरक्षा
क्रॉस-संदर्भ अखंडता
अधिदेश कवरेज
कार्यात्मक स्मोक टेस्ट
दस्तावेज़ीकरण समसामयिकता
पोर्टेबिलिटी
संस्करण संरेखण

परिनियोजन अनुमोदित किया: ___________________ तिथि: ___________________ परिनियोजित इकोसिस्टम संस्करण: ___________________

On this page