> ## Documentation Index
> Fetch the complete documentation index at: https://docs.resq.software/llms.txt
> Use this file to discover all available pages before exploring further.

# अवधारणाएं

> ResQ Tactical OS के टुकड़े कैसे जुड़ते हैं: मेश, साक्ष्य श्रृंखला, मिशन प्रवाह, और ऑपरेटर स्कोप।

यह वैचारिक मानचित्र है। API संदर्भ से पहले इसे एक बार पढ़ लें — बाकी
दस्तावेज़ जल्दी समझ में आ जाएगा।

## मेश

ResQ एक **विकेंद्रीकृत मेश** के रूप में चलता है, हब-एंड-स्पोक क्लाउड के
रूप में नहीं। ड्रोन, ज़मीनी इकाइयाँ और ऑपरेटर स्टेशन एक पीयर नेटवर्क बनाते
हैं जो तब भी काम करता रहता है जब अपस्ट्रीम बुनियादी ढांचा डाउन या अनुपलब्ध
हो।

* नोड्स लोकल-फर्स्ट ट्रांसपोर्ट (मेश रेडियो, LTE, Wi-Fi) के माध्यम से
  संवाद करते हैं और अवसर मिलने पर क्लाउड के साथ मिलाते हैं।
* Coordination API इस तरह डिज़ाइन किया गया है कि अपस्ट्रीम निर्भरताएँ
  डिग्रेड होने पर भी टेलीमेट्री स्वीकारता रहे और लाइव स्टेट परोसता रहे।
* कोई एकल विफलता बिंदु नहीं है। यदि कोई कोऑर्डिनेटर गिरता है, पीयर नोड्स
  टेलीमेट्री साझा और काम क्यू करते रहते हैं।

API में, आंशिक आउटेज के दौरान कुछ रूट `503 Service Unavailable` के रूप
में दिखेंगे — रिट्राई गाइडेंस के लिए [त्रुटियाँ](/hi/errors) देखें।

```mermaid theme={null}
flowchart LR
  subgraph mesh["Local mesh — keeps operating when upstream is unreachable"]
    direction TB
    D["Drone fleet"] <--> G["Ground units"]
    G <--> O["Operator stations"]
    D <--> O
  end

  mesh -. "opportunistic reconcile<br/>mesh radio · LTE · Wi-Fi" .-> C["Coordination API<br/>live fleet state"]
  C --> I["Infrastructure API<br/>persistent state"]

  C -. "degraded: 503 on some routes,<br/>peers keep sharing telemetry" .-> mesh
```

## साक्ष्य और श्रृंखला

मिशन में हर परिणामी क्रिया **साक्ष्य** उत्पन्न करती है:

1. ड्रोन सेंसर फ्रेम, वीडियो और संरचित टेलीमेट्री कैप्चर करते हैं।
2. साक्ष्य फ़ाइलें **IPFS** पर पिन की जाती हैं और उनके CID
   (कंटेंट-एड्रेस्ड पहचानकर्ता) से संदर्भित होती हैं।
3. CIDs **Solana** पर एंकर किए जाते हैं, जो छेड़छाड़-प्रूफ श्रृंखला बनाते
   हैं।
4. Infrastructure API दोनों आधे उजागर करता है: `/evidence` IPFS पेलोड
   के लिए, `/blockchain/*` ऑन-चेन एंकर के लिए।

इससे एक्शन के बाद की समीक्षा और चेन-ऑफ़-कस्टडी समीक्षा बिना किसी एकल पक्ष
पर भरोसा किए संभव होती है — CID और चेन संदर्भ रखने वाला कोई भी बाइट्स
सत्यापित कर सकता है।

```mermaid theme={null}
sequenceDiagram
  autonumber
  participant D as Drone
  participant API as Infrastructure API
  participant IPFS
  participant SOL as Solana
  participant V as Any verifier

  D->>API: sensor frames, video, telemetry
  API->>IPFS: pin evidence payload
  IPFS-->>API: CID (content-addressed)
  API->>SOL: anchor CID on chain
  SOL-->>API: transaction reference

  Note over IPFS,SOL: Checks retrieved bytes against the anchored<br/>CID and chain record. Establishes integrity,<br/>not that the captured data is itself true.

  V->>IPFS: GET /evidence — fetch bytes by CID
  V->>SOL: GET /blockchain/* — check the anchor
```

## मानव-इन-द-लूप मिशन

ResQ के स्वायत्त प्रवाह **HITL-गेटेड** हैं। प्लेटफ़ॉर्म
[यूरोपीय संघ AI अधिनियम की धारा 14](https://artificialintelligenceact.eu/article/14/)
मानव निरीक्षण लागू करता है: सिस्टम के क्रियान्वयन से पहले एक अधिकृत ऑपरेटर
को उच्च-जोखिम क्रिया अनुमोदित करनी होगी।

मिशन अनुमोदन Coordination API के माध्यम से उजागर है:

* `GET /admin/missions/pending` — अनुमोदन की प्रतीक्षा में क्रियाएँ
* `POST /admin/missions/approve` — एक लंबित मिशन को हरी झंडी
* `POST /admin/missions/reject` — ब्लॉक करें और कारण रिकॉर्ड करें

अनुमोदन के लिए `missions.approve` ऑपरेटर स्कोप चाहिए। इसके बिना कॉल
`403` लौटाते हैं — [त्रुटियाँ](/hi/errors) देखें।

```mermaid theme={null}
flowchart TD
  P["Autonomous action proposed"] --> A{"Inside permitted airspace?<br/>/solana registry"}
  A -- no --> RJ["Dispatcher refuses the flight plan"]
  A -- yes --> Q["GET /admin/missions/pending"]

  Q --> S{"Operator holds<br/>missions.approve?"}
  S -- no --> F["403 — needs an administrator,<br/>do not retry"]
  S -- yes --> DEC{"Operator decision<br/>EU AI Act Art. 14"}

  DEC -- approve --> OK["POST /admin/missions/approve<br/>system commits the action"]
  DEC -- reject --> NO["POST /admin/missions/reject<br/>reason recorded"]
```

## एयरस्पेस और परमिट

डिलीवरी और स्वायत्त उड़ान के लिए, ResQ Solana पर ऑन-चेन **एयरस्पेस
रजिस्ट्री** उपयोग करता है। Infrastructure API के `/solana` एंडपॉइंट
परमिट, डिलीवरी इवेंट और रजिस्ट्री क्वेरी रिकॉर्ड करते हैं। डिस्पैचर
अनुमत एयरस्पेस से बाहर की उड़ान योजनाओं को अस्वीकार करता है; यह गेट
मिशन अनुमोदन से पहले है, बाद में नहीं।

## टेलीमेट्री और लाइव इवेंट

दो प्रवाह वास्तविक-समय डेटा ले जाते हैं:

* **इंजेशन**: ड्रोन फ़्लीट Coordination API के
  `POST /fleet/telemetry` पर टेलीमेट्री बैच भेजते हैं। बैच एज पर बफ़र
  होते हैं और रिट्राई किए जाते हैं — टेलीमेट्री कभी चुपचाप नहीं गिरती।
* **सब्सक्रिप्शन**: क्लाइंट `/events` पर Server-Sent Events और
  `/metrics` पर Prometheus स्क्रेप के माध्यम से लाइव स्टेट उपभोग करते
  हैं (Coordination API)।

## ऑपरेटर पहचान और स्कोप

ऑपरेटर `POST /login` पर उपयोगकर्ता नाम और पासवर्ड के साथ प्रमाणित होते
हैं और एक अल्पकालिक JWT प्राप्त करते हैं ([प्रमाणीकरण](/hi/authentication)
देखें)। टोकन ऑपरेटर के **स्कोप** ले जाता है — सूक्ष्म अनुमतियाँ जैसे
`missions.approve`, `evidence.write`, या `airspace.admin`।

प्रमाणीकरण में सफल लेकिन आवश्यक स्कोप के बिना अनुरोध `403` लौटाता है।
इसे ऑपरेटर को दिखाएँ और रिट्राई न करें; इसके लिए प्रशासक कार्रवाई
चाहिए।

## फ़ॉल्ट इंजेक्शन और सिमुलेशन

Coordination API फ़ॉल्ट इंजेक्शन के लिए `Simulation` एंडपॉइंट उजागर
करता है, और SDK सिमुलेशन हार्नेस के साथ आते हैं। उद्देश्य प्रोडक्शन में
उस पर निर्भर होने से पहले मेश के डिग्रेडेड-मोड व्यवहार का परीक्षण करना है।
इसका उपयोग एकीकरण परीक्षण में करें, लाइव संचालन में नहीं।

## क्या कहाँ है

| आप चाहते हैं…                    | देखें                            |
| -------------------------------- | -------------------------------- |
| घटनाएँ, साक्ष्य, एंकर बनाए रखना  | Infrastructure API               |
| लाइव फ़्लीट स्टेट भेजना या पढ़ना | Coordination API                 |
| कौन क्या कर सकता है जाँचना       | [प्रमाणीकरण](/hi/authentication) |
| विफलताएँ और रिट्राई समझना        | [त्रुटियाँ](/hi/errors)          |
| बिना क्लाइंट लिखे निर्माण करना   | [SDKs](/sdks)                    |

## अगला

<CardGroup cols={3}>
  <Card title="त्वरित प्रारंभ" icon="rocket" href="/hi/quickstart">
    पहला प्रमाणित कॉल।
  </Card>

  <Card title="प्रमाणीकरण" icon="key" href="/hi/authentication">
    JWT जीवनचक्र और स्कोप।
  </Card>

  <Card title="API संदर्भ" icon="code" href="/hi/api-reference/introduction">
    सभी एंडपॉइंट।
  </Card>
</CardGroup>
