<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE rfc [
  <!ENTITY RFC2119 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
  <!ENTITY RFC8174 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
  <!ENTITY RFC8126 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8126.xml">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude"
     category="exp"
     docName="draft-myclerk-protocol-ops-00"
     ipr="trust200902"
     submissionType="independent"
     xml:lang="en"
     version="3">

  <front>
    <title abbrev="MyClerk Protocol Operations">MyClerk Protocol Application Operations Registry</title>

    <seriesInfo name="Internet-Draft" value="draft-myclerk-protocol-ops-00"/>

    <author fullname="Michael J. Arcan" initials="M.J." surname="Arcan">
      <organization>Arcan Consulting</organization>
      <address>
        <email>protocol@arcan-it.de</email>
        <uri>https://myclerk.eu</uri>
      </address>
    </author>

    <date year="2026" month="April" day="27"/>

    <area>Applications and Real-Time</area>
    <keyword>family</keyword>
    <keyword>IoT</keyword>
    <keyword>protocol</keyword>

    <abstract>
      <t>
        This document defines the application-layer operation codes for
        the MyClerk Protocol. It serves as the authoritative registry
        for operation codes in the 0x0700-0x1DFF range, covering
        knowledge management, settings, messaging, telephony, calendar,
        tasks, smart home, automation, AI assistant, synchronization,
        orchestration, presence, health, location, plugins, mobile
        device management, legal documents, mobility, travel, audit,
        audio pipeline, and desktop client operations.
      </t>
      <t>
        This companion document follows the "Assigned Numbers" pattern
        established by Bluetooth SIG specifications, separating the
        operation registry from the core protocol specification to allow
        independent evolution of application operations.
      </t>
    </abstract>
  </front>

  <middle>

    <section anchor="introduction">
      <name>Introduction</name>
      <t>
        The MyClerk Protocol <xref target="MYCLERK-CORE"/> defines a
        tiered-security communication protocol for distributed family
        orchestration systems. The core specification covers the wire
        format, security tiers, session management, and foundational
        operations in the 0x0000-0x06FF range.
      </t>
      <t>
        This document extends the protocol with application-layer
        operations in the 0x0700-0x1DFF range. These operations
        implement the full feature set of the MyClerk platform including
        smart home control, AI assistant integration, telephony, calendar
        management, health tracking, and more.
      </t>
      <t>
        The MyClerk reference implementation serves as the normative
        source for operation semantics. All operations defined herein
        are implemented in the reference codebase.
      </t>

      <section anchor="requirements-language">
        <name>Requirements Language</name>
        <t>
          The key words "MUST", "MUST NOT", "REQUIRED", "SHALL",
          "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED",
          "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document
          are to be interpreted as described in BCP 14
          <xref target="RFC2119"/> <xref target="RFC8174"/> when,
          and only when, they appear in all capitals, as shown here.
        </t>
      </section>
    </section>

    <section anchor="conventions">
      <name>Conventions</name>
      <t>
        Operation codes are 16-bit unsigned integers. The high byte
        identifies the category (e.g., 0x0B for Telephony) and the
        low byte identifies the specific operation within that category.
      </t>
      <t>
        All payloads use MessagePack encoding as specified in
        <xref target="MYCLERK-CORE"/>. Field names in payload
        descriptions use snake_case.
      </t>
      <t>
        The "Tier" column in operation tables indicates the minimum
        security tier required. Operations without a tier specification
        default to Tier 2 (authenticated).
      </t>
    </section>

    <section anchor="operations">
      <name>Application Operations</name>

      <t>
        This section defines all application-layer operations organized
        by category. Each category occupies a 256-code range identified
        by the high byte of the operation code.
      </t>

      <section anchor="ops-knowledge-base">
        <name>Knowledge Base (0x0700-0x07FF)</name>
        <table>
          <name>Knowledge Base Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x0700</td><td>KNOWLEDGE_NODE_CREATE</td><td>Create knowledge node</td></tr>
            <tr><td>0x0701</td><td>KNOWLEDGE_NODE_GET</td><td>Get knowledge node</td></tr>
            <tr><td>0x0702</td><td>KNOWLEDGE_NODE_UPDATE</td><td>Update knowledge node</td></tr>
            <tr><td>0x0703</td><td>KNOWLEDGE_NODE_DELETE</td><td>Delete knowledge node (soft delete)</td></tr>
            <tr><td>0x0704</td><td>KNOWLEDGE_NODE_LIST</td><td>List knowledge nodes</td></tr>
            <tr><td>0x0705</td><td>KNOWLEDGE_NODE_RESTORE</td><td>Restore deleted node</td></tr>
            <tr><td>0x0710</td><td>KNOWLEDGE_BLOCK_ADD</td><td>Add block to node</td></tr>
            <tr><td>0x0711</td><td>KNOWLEDGE_BLOCK_UPDATE</td><td>Update block content</td></tr>
            <tr><td>0x0712</td><td>KNOWLEDGE_BLOCK_DELETE</td><td>Delete block</td></tr>
            <tr><td>0x0713</td><td>KNOWLEDGE_BLOCK_MOVE</td><td>Move/reorder block</td></tr>
            <tr><td>0x0720</td><td>KNOWLEDGE_EDGE_CREATE</td><td>Create knowledge edge</td></tr>
            <tr><td>0x0721</td><td>KNOWLEDGE_EDGE_DELETE</td><td>Delete knowledge edge</td></tr>
            <tr><td>0x0722</td><td>KNOWLEDGE_RELATED_GET</td><td>Get related nodes</td></tr>
            <tr><td>0x0730</td><td>KNOWLEDGE_SEARCH</td><td>Full-text search</td></tr>
            <tr><td>0x0731</td><td>KNOWLEDGE_SEMANTIC_SEARCH</td><td>Semantic/vector search</td></tr>
            <tr><td>0x0740</td><td>KNOWLEDGE_VERSION_LIST</td><td>List node versions</td></tr>
            <tr><td>0x0741</td><td>KNOWLEDGE_VERSION_RESTORE</td><td>Restore to version</td></tr>
            <tr><td>0x0750</td><td>KNOWLEDGE_ACCESS_CHECK</td><td>Check access to knowledge node</td></tr>
            <tr><td>0x0751</td><td>KNOWLEDGE_ACCESS_POLICY_CREATE</td><td>Create access policy</td></tr>
            <tr><td>0x0752</td><td>KNOWLEDGE_ACCESS_POLICY_GET</td><td>Get access policy</td></tr>
            <tr><td>0x0753</td><td>KNOWLEDGE_ACCESS_POLICY_UPDATE</td><td>Update access policy</td></tr>
            <tr><td>0x0754</td><td>KNOWLEDGE_ACCESS_POLICY_DELETE</td><td>Delete access policy</td></tr>
            <tr><td>0x0755</td><td>KNOWLEDGE_ACCESS_POLICY_LIST</td><td>List access policies</td></tr>
            <tr><td>0x0756</td><td>KNOWLEDGE_ACCESS_LOG_LIST</td><td>List access log entries</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-settings-config">
        <name>Settings &amp; Configuration (0x0800-0x08FF)</name>
        <table>
          <name>Settings &amp; Configuration Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x0800</td><td>SETTINGS_GET</td><td>Get single setting</td></tr>
            <tr><td>0x0801</td><td>SETTINGS_SET</td><td>Set single setting</td></tr>
            <tr><td>0x0810</td><td>SETTINGS_LIST</td><td>List settings by namespace</td></tr>
            <tr><td>0x0811</td><td>SETTINGS_LIST_ALL</td><td>List all settings</td></tr>
            <tr><td>0x0820</td><td>SETTINGS_BATCH_SET</td><td>Set multiple settings atomically</td></tr>
            <tr><td>0x0821</td><td>SETTINGS_DELETE</td><td>Delete setting</td></tr>
            <tr><td>0x0830</td><td>SETTINGS_RESET</td><td>Reset namespace to defaults</td></tr>
            <tr><td>0x0831</td><td>SETTINGS_RESET_ALL</td><td>Reset all to defaults</td></tr>
            <tr><td>0x0840</td><td>SETTINGS_EXPORT</td><td>Export config as YAML</td></tr>
            <tr><td>0x0841</td><td>SETTINGS_IMPORT</td><td>Import config from YAML</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-room-channel">
        <name>Room/Channel Management (0x0900-0x09FF)</name>
        <table>
          <name>Room/Channel Management Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x0900</td><td>ROOM_CREATE</td><td>Create room</td></tr>
            <tr><td>0x0901</td><td>ROOM_GET</td><td>Get room info</td></tr>
            <tr><td>0x0902</td><td>ROOM_UPDATE</td><td>Update room</td></tr>
            <tr><td>0x0903</td><td>ROOM_DELETE</td><td>Delete room</td></tr>
            <tr><td>0x0904</td><td>ROOM_LIST</td><td>List rooms</td></tr>
            <tr><td>0x0910</td><td>ROOM_JOIN</td><td>Join room</td></tr>
            <tr><td>0x0911</td><td>ROOM_LEAVE</td><td>Leave room</td></tr>
            <tr><td>0x0912</td><td>ROOM_INVITE</td><td>Invite to room</td></tr>
            <tr><td>0x0913</td><td>ROOM_KICK</td><td>Kick from room</td></tr>
            <tr><td>0x0914</td><td>ROOM_BAN</td><td>Ban from room</td></tr>
            <tr><td>0x0915</td><td>ROOM_UNBAN</td><td>Unban from room</td></tr>
            <tr><td>0x0916</td><td>ROOM_MUTE</td><td>Mute room</td></tr>
            <tr><td>0x0917</td><td>ROOM_UNMUTE</td><td>Unmute room</td></tr>
            <tr><td>0x0920</td><td>ROOM_MEMBERS</td><td>List members</td></tr>
            <tr><td>0x0921</td><td>ROOM_MEMBER_UPDATE</td><td>Update member</td></tr>
            <tr><td>0x0930</td><td>ROOM_SETTINGS</td><td>Room settings</td></tr>
            <tr><td>0x0940</td><td>KIDS_CHAT_ROOM_CREATE</td><td>Create kids chat room</td></tr>
            <tr><td>0x0941</td><td>KIDS_CHAT_ROOM_GET</td><td>Get kids chat room</td></tr>
            <tr><td>0x0942</td><td>KIDS_CHAT_ROOM_UPDATE</td><td>Update kids chat room</td></tr>
            <tr><td>0x0943</td><td>KIDS_CHAT_ROOM_DELETE</td><td>Delete kids chat room</td></tr>
            <tr><td>0x0944</td><td>KIDS_CHAT_ROOM_LIST</td><td>List kids chat rooms</td></tr>
            <tr><td>0x0945</td><td>KIDS_CHAT_ROOM_LOCK</td><td>Lock kids chat room</td></tr>
            <tr><td>0x0946</td><td>KIDS_CHAT_ROOM_UNLOCK</td><td>Unlock kids chat room</td></tr>
            <tr><td>0x0947</td><td>KIDS_CHAT_SEND_MESSAGE</td><td>Send kids chat message</td></tr>
            <tr><td>0x0948</td><td>KIDS_CHAT_GET_MESSAGES</td><td>Get kids chat messages</td></tr>
            <tr><td>0x0949</td><td>KIDS_CHAT_REPORT</td><td>Report kids chat message</td></tr>
            <tr><td>0x094A</td><td>KIDS_CHAT_REVIEW_REPORT</td><td>Review kids chat report</td></tr>
            <tr><td>0x094B</td><td>KIDS_CHAT_SETTINGS</td><td>Get kids chat settings</td></tr>
            <tr><td>0x094C</td><td>KIDS_CHAT_SETTINGS_UPDATE</td><td>Update kids chat settings</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-media-handling">
        <name>Media Handling (0x0A00-0x0AFF)</name>
        <table>
          <name>Media Handling Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x0A00</td><td>MEDIA_UPLOAD</td><td>Upload media</td></tr>
            <tr><td>0x0A01</td><td>MEDIA_DOWNLOAD</td><td>Download media</td></tr>
            <tr><td>0x0A02</td><td>MEDIA_GET</td><td>Get media info</td></tr>
            <tr><td>0x0A03</td><td>MEDIA_DELETE</td><td>Delete media</td></tr>
            <tr><td>0x0A04</td><td>MEDIA_LIST</td><td>List media</td></tr>
            <tr><td>0x0A10</td><td>MEDIA_SHARE</td><td>Share media</td></tr>
            <tr><td>0x0A11</td><td>MEDIA_UNSHARE</td><td>Unshare media</td></tr>
            <tr><td>0x0A20</td><td>MEDIA_THUMBNAIL</td><td>Get thumbnail</td></tr>
            <tr><td>0x0A30</td><td>MEDIA_STREAM</td><td>Stream media</td></tr>
            <tr><td>0x0A31</td><td>MEDIA_STREAM_START</td><td>Start streaming</td></tr>
            <tr><td>0x0A32</td><td>MEDIA_STREAM_STOP</td><td>Stop streaming</td></tr>
            <tr><td>0x0A40</td><td>MEDIA_TRANSCODE</td><td>Transcode request</td></tr>
            <tr><td>0x0A50</td><td>MEDIA_ALBUM_CREATE</td><td>Create album</td></tr>
            <tr><td>0x0A51</td><td>MEDIA_ALBUM_GET</td><td>Get album</td></tr>
            <tr><td>0x0A52</td><td>MEDIA_ALBUM_UPDATE</td><td>Update album</td></tr>
            <tr><td>0x0A53</td><td>MEDIA_ALBUM_DELETE</td><td>Delete album</td></tr>
            <tr><td>0x0A54</td><td>MEDIA_ALBUM_LIST</td><td>List albums</td></tr>
            <tr><td>0x0A55</td><td>MEDIA_ALBUM_ADD_MEDIA</td><td>Add media to album</td></tr>
            <tr><td>0x0A56</td><td>MEDIA_ALBUM_REM_MEDIA</td><td>Remove media from album</td></tr>
            <tr><td>0x0A57</td><td>MEDIA_ALBUM_GET_MEDIA</td><td>Get media in album</td></tr>
            <tr><td>0x0A60</td><td>MEDIA_PERSON_CREATE</td><td>Create person</td></tr>
            <tr><td>0x0A61</td><td>MEDIA_PERSON_GET</td><td>Get person</td></tr>
            <tr><td>0x0A62</td><td>MEDIA_PERSON_UPDATE</td><td>Update person</td></tr>
            <tr><td>0x0A63</td><td>MEDIA_PERSON_DELETE</td><td>Delete person</td></tr>
            <tr><td>0x0A64</td><td>MEDIA_PERSON_LIST</td><td>List persons</td></tr>
            <tr><td>0x0A70</td><td>MEDIA_FACE_DETECT</td><td>Detect faces in media</td></tr>
            <tr><td>0x0A71</td><td>MEDIA_FACE_GET</td><td>Get face detection</td></tr>
            <tr><td>0x0A72</td><td>MEDIA_FACE_ASSIGN</td><td>Assign face to person</td></tr>
            <tr><td>0x0A73</td><td>MEDIA_FACE_LIST_BY_PERSON</td><td>List faces by person</td></tr>
            <tr><td>0x0A80</td><td>MEDIA_TAG_ADD</td><td>Add tag to media</td></tr>
            <tr><td>0x0A81</td><td>MEDIA_TAG_REMOVE</td><td>Remove tag from media</td></tr>
            <tr><td>0x0A82</td><td>MEDIA_TAG_LIST</td><td>List tags for media</td></tr>
            <tr><td>0x0A83</td><td>MEDIA_TAG_SEARCH</td><td>Search media by tag</td></tr>
            <tr><td>0x0A90</td><td>MEDIA_SHARE_LINK_CREATE</td><td>Create share link</td></tr>
            <tr><td>0x0A91</td><td>MEDIA_SHARE_LINK_GET</td><td>Get share link</td></tr>
            <tr><td>0x0A92</td><td>MEDIA_SHARE_LINK_REVOKE</td><td>Revoke share link</td></tr>
            <tr><td>0x0A93</td><td>MEDIA_SHARE_LINK_ACCESS</td><td>Access share link</td></tr>
            <tr><td>0x0AA0</td><td>MEDIA_TIMELINE</td><td>Get media timeline</td></tr>
            <tr><td>0x0AA1</td><td>MEDIA_SEARCH</td><td>Search media</td></tr>
            <tr><td>0x0AA2</td><td>MEDIA_MEMORIES</td><td>Get memories/on-this-day</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-telephony">
        <name>Telephony (Voice, Video, SMS, IVR) (0x0B00-0x0BFF)</name>
        <table>
          <name>Telephony (Voice, Video, SMS, IVR) Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x0B00</td><td>CALL_INITIATE</td><td>Initiate call</td></tr>
            <tr><td>0x0B01</td><td>CALL_RING</td><td>Ring notification</td></tr>
            <tr><td>0x0B02</td><td>CALL_ANSWER</td><td>Answer call</td></tr>
            <tr><td>0x0B03</td><td>CALL_REJECT</td><td>Reject call</td></tr>
            <tr><td>0x0B04</td><td>CALL_END</td><td>End call</td></tr>
            <tr><td>0x0B05</td><td>CALL_HOLD</td><td>Hold call</td></tr>
            <tr><td>0x0B06</td><td>CALL_RESUME</td><td>Resume call</td></tr>
            <tr><td>0x0B07</td><td>CALL_TRANSFER</td><td>Transfer call</td></tr>
            <tr><td>0x0B10</td><td>CALL_MUTE</td><td>Mute microphone</td></tr>
            <tr><td>0x0B11</td><td>CALL_UNMUTE</td><td>Unmute microphone</td></tr>
            <tr><td>0x0B12</td><td>CALL_VIDEO_ON</td><td>Enable video</td></tr>
            <tr><td>0x0B13</td><td>CALL_VIDEO_OFF</td><td>Disable video</td></tr>
            <tr><td>0x0B14</td><td>CALL_SHARE</td><td>Screen share</td></tr>
            <tr><td>0x0B20</td><td>CALL_OFFER</td><td>WebRTC offer</td></tr>
            <tr><td>0x0B21</td><td>CALL_ANSWER</td><td>WebRTC answer</td></tr>
            <tr><td>0x0B22</td><td>CALL_I_C_E</td><td>ICE candidate</td></tr>
            <tr><td>0x0B30</td><td>VOICEMAIL_LIST</td><td>List voicemails</td></tr>
            <tr><td>0x0B31</td><td>VOICEMAIL_GET</td><td>Get voicemail</td></tr>
            <tr><td>0x0B32</td><td>VOICEMAIL_DELETE</td><td>Delete voicemail</td></tr>
            <tr><td>0x0B33</td><td>VOICEMAIL_TRANSCRIBE</td><td>Transcribe voicemail</td></tr>
            <tr><td>0x0B34</td><td>VOICEMAIL_GREETING</td><td>Set/get greeting</td></tr>
            <tr><td>0x0B35</td><td>VOICEMAIL_SETTINGS</td><td>Voicemail settings</td></tr>
            <tr><td>0x0B40</td><td>SCREENING_RULE_CREATE</td><td>Create screening rule</td></tr>
            <tr><td>0x0B41</td><td>SCREENING_RULE_GET</td><td>Get screening rule</td></tr>
            <tr><td>0x0B42</td><td>SCREENING_RULE_UPDATE</td><td>Update screening rule</td></tr>
            <tr><td>0x0B43</td><td>SCREENING_RULE_DELETE</td><td>Delete screening rule</td></tr>
            <tr><td>0x0B44</td><td>SCREENING_RULE_LIST</td><td>List screening rules</td></tr>
            <tr><td>0x0B45</td><td>SCREENING_EVENT</td><td>Call screening event</td></tr>
            <tr><td>0x0B46</td><td>SCREENING_VERDICT</td><td>Screening verdict (allow/block/vm)</td></tr>
            <tr><td>0x0B50</td><td>S_M_S_CREATE</td><td>Create outgoing SMS</td></tr>
            <tr><td>0x0B51</td><td>S_M_S_SEND</td><td>Send SMS via gateway</td></tr>
            <tr><td>0x0B52</td><td>S_M_S_RECEIVE</td><td>Incoming SMS notification</td></tr>
            <tr><td>0x0B53</td><td>S_M_S_GET</td><td>Get SMS by ID</td></tr>
            <tr><td>0x0B54</td><td>S_M_S_LIST</td><td>List SMS messages</td></tr>
            <tr><td>0x0B55</td><td>S_M_S_DELETE</td><td>Delete SMS</td></tr>
            <tr><td>0x0B56</td><td>S_M_S_STATUS</td><td>Delivery status update</td></tr>
            <tr><td>0x0B57</td><td>S_M_S_RETRY</td><td>Retry failed SMS</td></tr>
            <tr><td>0x0B58</td><td>S_M_S_QUEUE_STATUS</td><td>Get send queue status</td></tr>
            <tr><td>0x0B59</td><td>S_M_S_CONTACT_LOOKUP</td><td>Lookup contact for number</td></tr>
            <tr><td>0x0B60</td><td>S_M_S_PARSED</td><td>Parsed SMS event (after classification)</td></tr>
            <tr><td>0x0B61</td><td>S_M_S_CATEGORY_UPDATE</td><td>Update SMS category</td></tr>
            <tr><td>0x0B62</td><td>S_M_S_T_A_N_RECEIVED</td><td>TAN/OTP received event</td></tr>
            <tr><td>0x0B63</td><td>S_M_S_T_A_N_ANNOUNCE</td><td>Announce TAN to family</td></tr>
            <tr><td>0x0B64</td><td>S_M_S_T_A_N_ACKNOWLEDGE</td><td>Acknowledge TAN receipt</td></tr>
            <tr><td>0x0B65</td><td>S_M_S_T_A_N_EXPIRED</td><td>TAN expired notification</td></tr>
            <tr><td>0x0B66</td><td>S_M_S</td><td>Forward 2FA to device</td></tr>
            <tr><td>0x0B67</td><td>S_M_S_DELIVERY_PARSED</td><td>Parsed delivery notification</td></tr>
            <tr><td>0x0B68</td><td>S_M_S_BANKING_PARSED</td><td>Parsed banking notification</td></tr>
            <tr><td>0x0B69</td><td>S_M_S_ALERT_PARSED</td><td>Parsed alert/warning SMS</td></tr>
            <tr><td>0x0B70</td><td>EMERGENCY_GATEWAY_STATUS</td><td>Gateway health status</td></tr>
            <tr><td>0x0B71</td><td>EMERGENCY_INTERNET_DOWN</td><td>Internet outage detected</td></tr>
            <tr><td>0x0B72</td><td>EMERGENCY_INTERNET_UP</td><td>Internet restored</td></tr>
            <tr><td>0x0B73</td><td>EMERGENCY_S_M_S_ALERT</td><td>Emergency alert via SMS</td></tr>
            <tr><td>0x0B74</td><td>EMERGENCY_S_M_S_COMMAND</td><td>Emergency command via SMS</td></tr>
            <tr><td>0x0B75</td><td>EMERGENCY_GEOFENCE_ALERT</td><td>Geofence breach alert</td></tr>
            <tr><td>0x0B76</td><td>EMERGENCY_FALLBACK_ROUTE</td><td>Route via SMS fallback</td></tr>
            <tr><td>0x0B77</td><td>EMERGENCY_HEARTBEAT</td><td>Heartbeat check</td></tr>
            <tr><td>0x0B78</td><td>EMERGENCY_BATTERY_LOW</td><td>Low battery alert</td></tr>
            <tr><td>0x0B79</td><td>EMERGENCY_POWER_LOST</td><td>Power failure detected</td></tr>
            <tr><td>0x0B7A</td><td>EMERGENCY_POWER_RESTORED</td><td>Power restored</td></tr>
            <tr><td>0x0B80</td><td>TRUNK_CREATE</td><td>Create SIP trunk</td></tr>
            <tr><td>0x0B81</td><td>TRUNK_GET</td><td>Get trunk details</td></tr>
            <tr><td>0x0B82</td><td>TRUNK_UPDATE</td><td>Update trunk config</td></tr>
            <tr><td>0x0B83</td><td>TRUNK_DELETE</td><td>Delete trunk</td></tr>
            <tr><td>0x0B84</td><td>TRUNK_LIST</td><td>List trunks for family</td></tr>
            <tr><td>0x0B85</td><td>TRUNK_HEALTH</td><td>Get trunk health status</td></tr>
            <tr><td>0x0B86</td><td>TRUNK_TEMPLATES</td><td>List provider templates</td></tr>
            <tr><td>0x0B87</td><td>TRUNK_REGISTER</td><td>Force trunk re-registration</td></tr>
            <tr><td>0x0B90</td><td>ROUTE_TEST</td><td>Test routing for a number (dry-run)</td></tr>
            <tr><td>0x0B91</td><td>ROUTE_EVALUATE</td><td>Evaluate outbound route (LCR)</td></tr>
            <tr><td>0x0B92</td><td>D_I_D_LIST</td><td>List all DIDs across trunks</td></tr>
            <tr><td>0x0B93</td><td>D_I_D_LOOKUP</td><td>Look up which trunk handles a DID</td></tr>
            <tr><td>0x0B94</td><td>L_C_R_STATUS</td><td>Get LCR routing table status</td></tr>
            <tr><td>0x0B95</td><td>L_C_R_ROUTE_ADD</td><td>Add custom LCR route</td></tr>
            <tr><td>0x0B96</td><td>L_C_R_ROUTE_REMOVE</td><td>Remove custom LCR route</td></tr>
            <tr><td>0x0B97</td><td>ROUTING_STATS</td><td>Get routing statistics</td></tr>
            <tr><td>0x0BA0</td><td>CONFERENCE_CREATE</td><td>Create a conference room</td></tr>
            <tr><td>0x0BA1</td><td>CONFERENCE_JOIN</td><td>Join a conference room</td></tr>
            <tr><td>0x0BA2</td><td>CONFERENCE_LEAVE</td><td>Leave a conference room</td></tr>
            <tr><td>0x0BA3</td><td>CONFERENCE_KICK</td><td>Kick a participant from a conference</td></tr>
            <tr><td>0x0BA4</td><td>CONFERENCE_MUTE</td><td>Mute a conference participant</td></tr>
            <tr><td>0x0BA5</td><td>CONFERENCE_UNMUTE</td><td>Unmute a conference participant</td></tr>
            <tr><td>0x0BA6</td><td>CONFERENCE_LIST</td><td>List active conferences</td></tr>
            <tr><td>0x0BA7</td><td>CONFERENCE_INFO</td><td>Get conference room details</td></tr>
            <tr><td>0x0BA8</td><td>CONFERENCE_END</td><td>End a conference room (owner only)</td></tr>
            <tr><td>0x0BB0</td><td>BRIDGE_CREATE</td><td>Create a cross-channel bridge</td></tr>
            <tr><td>0x0BB1</td><td>BRIDGE_GET</td><td>Get bridge details</td></tr>
            <tr><td>0x0BB2</td><td>BRIDGE_LIST</td><td>List active bridges</td></tr>
            <tr><td>0x0BB3</td><td>BRIDGE_CLOSE</td><td>Close a bridge</td></tr>
            <tr><td>0x0BB4</td><td>BRIDGE_MUTE</td><td>Mute a bridge</td></tr>
            <tr><td>0x0BB5</td><td>BRIDGE_UNMUTE</td><td>Unmute a bridge</td></tr>
            <tr><td>0x0BB6</td><td>BRIDGE_HOLD</td><td>Hold a bridge</td></tr>
            <tr><td>0x0BB7</td><td>BRIDGE_RESUME</td><td>Resume a held bridge</td></tr>
            <tr><td>0x0BB8</td><td>BRIDGE_TRANSFER</td><td>Transfer a bridge to a new target</td></tr>
            <tr><td>0x0BB9</td><td>BRIDGE_NOTIFY</td><td>Incoming call notification across channels</td></tr>
            <tr><td>0x0BBA</td><td>S_M_S_CHAT_CREATE</td><td>Create an SMS-chat bridge session</td></tr>
            <tr><td>0x0BBB</td><td>S_M_S_CHAT_CLOSE</td><td>Close an SMS-chat bridge session</td></tr>
            <tr><td>0x0BBC</td><td>S_M_S_CHAT_LIST</td><td>List SMS-chat bridge sessions</td></tr>
            <tr><td>0x0BC0</td><td>I_V_R_MENU_CREATE</td><td>Create IVR menu</td></tr>
            <tr><td>0x0BC1</td><td>I_V_R_MENU_GET</td><td>Get IVR menu</td></tr>
            <tr><td>0x0BC2</td><td>I_V_R_MENU_UPDATE</td><td>Update IVR menu</td></tr>
            <tr><td>0x0BC3</td><td>I_V_R_MENU_DELETE</td><td>Delete IVR menu</td></tr>
            <tr><td>0x0BC4</td><td>I_V_R_MENU_LIST</td><td>List IVR menus</td></tr>
            <tr><td>0x0BC5</td><td>I_V_R_SESSION_START</td><td>Start IVR session on call</td></tr>
            <tr><td>0x0BC6</td><td>I_V_R_SESSION_INFO</td><td>Get IVR session state</td></tr>
            <tr><td>0x0BC7</td><td>I_V_R_SESSION_END</td><td>End IVR session</td></tr>
            <tr><td>0x0BC8</td><td>I_V_R_D_T_M_F_INPUT</td><td>DTMF input event</td></tr>
            <tr><td>0x0BC9</td><td>TION_ADD</td><td>Add menu option</td></tr>
            <tr><td>0x0BCA</td><td>TION_UPDATE</td><td>Update menu option</td></tr>
            <tr><td>0x0BCB</td><td>TION_DELETE</td><td>Delete menu option</td></tr>
            <tr><td>0x0BD0</td><td>VIDEO_CALL_CREATE</td><td>Create video call</td></tr>
            <tr><td>0x0BD1</td><td>VIDEO_CALL_GET</td><td>Get video call</td></tr>
            <tr><td>0x0BD2</td><td>VIDEO_CALL_JOIN</td><td>Join video call</td></tr>
            <tr><td>0x0BD3</td><td>VIDEO_CALL_LEAVE</td><td>Leave video call</td></tr>
            <tr><td>0x0BD4</td><td>VIDEO_CALL_END</td><td>End video call</td></tr>
            <tr><td>0x0BD5</td><td>VIDEO_CALL_INVITE</td><td>Invite to video call</td></tr>
            <tr><td>0x0BD6</td><td>VIDEO_CALL_LAYOUT</td><td>Set video layout</td></tr>
            <tr><td>0x0BD7</td><td>VIDEO_CALL_RECORD</td><td>Toggle recording</td></tr>
            <tr><td>0x0BD8</td><td>VIDEO_CALL_STATS</td><td>Get call stats</td></tr>
            <tr><td>0x0BD9</td><td>VIDEO_CALL_LIST</td><td>List scheduled calls</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-calendar-events">
        <name>Calendar &amp; Events (0x0C00-0x0CFF)</name>
        <table>
          <name>Calendar &amp; Events Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x0C00</td><td>EVENT_CREATE</td><td>Create event</td></tr>
            <tr><td>0x0C01</td><td>EVENT_GET</td><td>Get event</td></tr>
            <tr><td>0x0C02</td><td>EVENT_UPDATE</td><td>Update event</td></tr>
            <tr><td>0x0C03</td><td>EVENT_DELETE</td><td>Delete event</td></tr>
            <tr><td>0x0C04</td><td>EVENT_LIST</td><td>List events</td></tr>
            <tr><td>0x0C05</td><td>EVENT_SEARCH</td><td>Search events</td></tr>
            <tr><td>0x0C10</td><td>EVENT_R_S_V_P</td><td>RSVP to event</td></tr>
            <tr><td>0x0C11</td><td>EVENT_REMIND</td><td>Set/delete reminder</td></tr>
            <tr><td>0x0C12</td><td>EVENT_SHARE</td><td>Share event</td></tr>
            <tr><td>0x0C13</td><td>EVENT_ATTENDEES</td><td>List event attendees</td></tr>
            <tr><td>0x0C20</td><td>EVENT_SYNC</td><td>Sync calendar</td></tr>
            <tr><td>0x0C30</td><td>CALENDAR_CREATE</td><td>Create calendar</td></tr>
            <tr><td>0x0C31</td><td>CALENDAR_GET</td><td>Get calendar</td></tr>
            <tr><td>0x0C32</td><td>CALENDAR_UPDATE</td><td>Update calendar</td></tr>
            <tr><td>0x0C33</td><td>CALENDAR_DELETE</td><td>Delete calendar</td></tr>
            <tr><td>0x0C34</td><td>CALENDAR_LIST</td><td>List calendars</td></tr>
            <tr><td>0x0C35</td><td>CALENDAR_STATS</td><td>Get calendar statistics</td></tr>
            <tr><td>0x0C36</td><td>CALENDAR_SHARE</td><td>Share calendar with user</td></tr>
            <tr><td>0x0C37</td><td>CALENDAR_UNSHARE</td><td>Remove calendar share</td></tr>
            <tr><td>0x0C38</td><td>CALENDAR_PERMISSIONS</td><td>List calendar permissions</td></tr>
            <tr><td>0x0C40</td><td>CALENDAR_R_S_V_P_REWARD</td><td>Award XP for RSVP</td></tr>
            <tr><td>0x0C41</td><td>CALENDAR_EVENT_TASK_LINK</td><td>Link event to task</td></tr>
            <tr><td>0x0C42</td><td>CALENDAR_FAMILY_ACTIVITY</td><td>Get family activity summary</td></tr>
            <tr><td>0x0C50</td><td>EVENT_SUGGEST</td><td>Create event suggestion</td></tr>
            <tr><td>0x0C51</td><td>EVENT_SUGGESTION_LIST</td><td>List pending suggestions</td></tr>
            <tr><td>0x0C52</td><td>EVENT_SUGGESTION_ACCEPT</td><td>Accept event suggestion</td></tr>
            <tr><td>0x0C53</td><td>EVENT_SUGGESTION_DECLINE</td><td>Decline event suggestion</td></tr>
            <tr><td>0x0C54</td><td>EVENT_DETECTION_CONFIG</td><td>Get/set detection config</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-tasks-shopping">
        <name>Tasks, Shopping &amp; Gamification (0x0D00-0x0DFF)</name>
        <table>
          <name>Tasks, Shopping &amp; Gamification Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x0D00</td><td>TASK_CREATE</td><td>Create task</td></tr>
            <tr><td>0x0D01</td><td>TASK_GET</td><td>Get task</td></tr>
            <tr><td>0x0D02</td><td>TASK_UPDATE</td><td>Update task</td></tr>
            <tr><td>0x0D03</td><td>TASK_DELETE</td><td>Delete task</td></tr>
            <tr><td>0x0D04</td><td>TASK_LIST</td><td>List tasks</td></tr>
            <tr><td>0x0D05</td><td>TASK_SKIP</td><td>Skip task</td></tr>
            <tr><td>0x0D06</td><td>TASK_UNASSIGN</td><td>Unassign task</td></tr>
            <tr><td>0x0D07</td><td>TASK_AGENDA</td><td>Daily agenda</td></tr>
            <tr><td>0x0D08</td><td>TASK_STATS</td><td>Task stats</td></tr>
            <tr><td>0x0D10</td><td>TASK_COMPLETE</td><td>Mark complete</td></tr>
            <tr><td>0x0D11</td><td>TASK_ASSIGN</td><td>Assign task</td></tr>
            <tr><td>0x0D12</td><td>TASK_PRIORITY</td><td>Set priority</td></tr>
            <tr><td>0x0D20</td><td>LIST_CREATE</td><td>Create list</td></tr>
            <tr><td>0x0D21</td><td>LIST_GET</td><td>Get list</td></tr>
            <tr><td>0x0D22</td><td>LIST_UPDATE</td><td>Update list</td></tr>
            <tr><td>0x0D23</td><td>LIST_DELETE</td><td>Delete list</td></tr>
            <tr><td>0x0D24</td><td>LIST_SHARE</td><td>Share list</td></tr>
            <tr><td>0x0D25</td><td>LIST_LIST</td><td>List all lists</td></tr>
            <tr><td>0x0D26</td><td>LIST_UNSHARE</td><td>Remove share</td></tr>
            <tr><td>0x0D27</td><td>LIST_ARCHIVE</td><td>Archive list</td></tr>
            <tr><td>0x0D30</td><td>ITEM_CREATE</td><td>Add item to list</td></tr>
            <tr><td>0x0D31</td><td>ITEM_GET</td><td>Get item</td></tr>
            <tr><td>0x0D32</td><td>ITEM_UPDATE</td><td>Update item</td></tr>
            <tr><td>0x0D33</td><td>ITEM_DELETE</td><td>Delete item</td></tr>
            <tr><td>0x0D34</td><td>ITEM_CHECK</td><td>Check/uncheck item</td></tr>
            <tr><td>0x0D35</td><td>ITEM_MOVE</td><td>Move item to another list</td></tr>
            <tr><td>0x0D36</td><td>ITEM_LIST</td><td>List items in a list</td></tr>
            <tr><td>0x0D40</td><td>CHALLENGE_CREATE</td><td>Create challenge</td></tr>
            <tr><td>0x0D41</td><td>CHALLENGE_GET</td><td>Get challenge</td></tr>
            <tr><td>0x0D42</td><td>CHALLENGE_LIST</td><td>List challenges</td></tr>
            <tr><td>0x0D43</td><td>CHALLENGE_JOIN</td><td>Join challenge</td></tr>
            <tr><td>0x0D50</td><td>REWARD_CREATE</td><td>Create reward</td></tr>
            <tr><td>0x0D51</td><td>REWARD_GET</td><td>Get reward</td></tr>
            <tr><td>0x0D52</td><td>REWARD_LIST</td><td>List rewards</td></tr>
            <tr><td>0x0D53</td><td>REWARD_CLAIM</td><td>Claim reward</td></tr>
            <tr><td>0x0D54</td><td>REWARD_FULFILL</td><td>Fulfill reward claim</td></tr>
            <tr><td>0x0D60</td><td>ROTATION_CREATE</td><td>Create rotation schedule</td></tr>
            <tr><td>0x0D61</td><td>ROTATION_GET</td><td>Get rotation schedule</td></tr>
            <tr><td>0x0D62</td><td>ROTATION_UPDATE</td><td>Update rotation schedule</td></tr>
            <tr><td>0x0D63</td><td>ROTATION_DELETE</td><td>Delete rotation schedule</td></tr>
            <tr><td>0x0D64</td><td>ROTATION_LIST</td><td>List rotation schedules</td></tr>
            <tr><td>0x0D65</td><td>ROTATION_NEXT</td><td>Get next assignee</td></tr>
            <tr><td>0x0D66</td><td>ROTATION_ASSIGN</td><td>Assign next rotation</td></tr>
            <tr><td>0x0D67</td><td>ROTATION_SKIP</td><td>Skip rotation turn</td></tr>
            <tr><td>0x0D68</td><td>ROTATION_SWAP</td><td>Swap rotation turns</td></tr>
            <tr><td>0x0D69</td><td>ROTATION_STATS</td><td>Get rotation statistics</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-smart-home">
        <name>Smart Home Devices (0x0E00-0x0EFF)</name>
        <table>
          <name>Smart Home Devices Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x0E00</td><td>SMART_DEVICE_ADD</td><td>Add smart device</td></tr>
            <tr><td>0x0E01</td><td>SMART_DEVICE_REMOVE</td><td>Remove smart device</td></tr>
            <tr><td>0x0E02</td><td>SMART_DEVICE_LIST</td><td>List smart devices</td></tr>
            <tr><td>0x0E03</td><td>SMART_DEVICE_GET</td><td>Get smart device</td></tr>
            <tr><td>0x0E10</td><td>SMART_DEVICE_CONTROL</td><td>Control device</td></tr>
            <tr><td>0x0E11</td><td>SMART_DEVICE_STATE</td><td>Get state</td></tr>
            <tr><td>0x0E12</td><td>SMART_DEVICE_SET</td><td>Set state</td></tr>
            <tr><td>0x0E20</td><td>SMART_GROUP_CREATE</td><td>Create group</td></tr>
            <tr><td>0x0E21</td><td>SMART_GROUP_GET</td><td>Get group</td></tr>
            <tr><td>0x0E22</td><td>SMART_GROUP_UPDATE</td><td>Update group</td></tr>
            <tr><td>0x0E23</td><td>SMART_GROUP_DELETE</td><td>Delete group</td></tr>
            <tr><td>0x0E24</td><td>SMART_GROUP_LIST</td><td>List groups</td></tr>
            <tr><td>0x0E25</td><td>SMART_GROUP_CONTROL</td><td>Control group</td></tr>
            <tr><td>0x0E26</td><td>SMART_GROUP_ADD_DEVICE</td><td>Add device to group</td></tr>
            <tr><td>0x0E27</td><td>SMART_GROUP_REMOVE_DEVICE</td><td>Remove device from group</td></tr>
            <tr><td>0x0E30</td><td>SMART_SCENE_CREATE</td><td>Create scene</td></tr>
            <tr><td>0x0E31</td><td>SMART_SCENE_GET</td><td>Get scene</td></tr>
            <tr><td>0x0E32</td><td>SMART_SCENE_UPDATE</td><td>Update scene</td></tr>
            <tr><td>0x0E33</td><td>SMART_SCENE_DELETE</td><td>Delete scene</td></tr>
            <tr><td>0x0E34</td><td>SMART_SCENE_LIST</td><td>List scenes</td></tr>
            <tr><td>0x0E35</td><td>SMART_SCENE_ACTIVATE</td><td>Activate scene</td></tr>
            <tr><td>0x0E36</td><td>SMART_SCENE_DEACTIVATE</td><td>Deactivate scene</td></tr>
            <tr><td>0x0E40</td><td>SMART_ROOM_CREATE</td><td>Create room</td></tr>
            <tr><td>0x0E41</td><td>SMART_ROOM_GET</td><td>Get room</td></tr>
            <tr><td>0x0E42</td><td>SMART_ROOM_UPDATE</td><td>Update room</td></tr>
            <tr><td>0x0E43</td><td>SMART_ROOM_DELETE</td><td>Delete room</td></tr>
            <tr><td>0x0E44</td><td>SMART_ROOM_LIST</td><td>List rooms</td></tr>
            <tr><td>0x0E50</td><td>ENERGY_SYSTEM_GET</td><td>Get energy system</td></tr>
            <tr><td>0x0E51</td><td>ENERGY_SYSTEM_UPDATE</td><td>Update energy system</td></tr>
            <tr><td>0x0E52</td><td>ENERGY_READING_RECORD</td><td>Record energy reading</td></tr>
            <tr><td>0x0E53</td><td>ENERGY_READING_HISTORY</td><td>Get reading history</td></tr>
            <tr><td>0x0E54</td><td>TARIFF_GET_CURRENT</td><td>Get current tariff price</td></tr>
            <tr><td>0x0E55</td><td>TARIFF_GET_PRICES</td><td>Get tariff prices for period</td></tr>
            <tr><td>0x0E56</td><td>LOAD_SCHEDULE</td><td>Schedule a load</td></tr>
            <tr><td>0x0E57</td><td>LOAD_GET_SCHEDULE</td><td>Get scheduled loads</td></tr>
            <tr><td>0x0E58</td><td>TIMIZE</td><td>Get optimization recommendations</td></tr>
            <tr><td>0x0E59</td><td>ADAPTER_CONFIG_GET</td><td>Get adapter config</td></tr>
            <tr><td>0x0E5A</td><td>ADAPTER_CONFIG_SET</td><td>Set adapter config</td></tr>
            <tr><td>0x0E5B</td><td>ADAPTER_CONFIG_LIST</td><td>List adapter configs</td></tr>
            <tr><td>0x0E5C</td><td>SMART_DEVICE_DISCOVER</td><td>Discover devices</td></tr>
            <tr><td>0x0E5D</td><td>DEVICE_STATE_HISTORY</td><td>Get device state history</td></tr>
            <tr><td>0x0E5E</td><td>DEVICE_FAMILY_STATE_HISTORY</td><td>Get family device state history</td></tr>
            <tr><td>0x0E5F</td><td>DEVICE_STATE_HISTORY_CLEAN</td><td>Clean old state history</td></tr>
            <tr><td>0x0E60</td><td>DASHBOARD_OVERVIEW</td><td>Get full dashboard overview</td></tr>
            <tr><td>0x0E61</td><td>DASHBOARD_DEVICE_SUMMARY</td><td>Get device summary stats</td></tr>
            <tr><td>0x0E62</td><td>DASHBOARD_ENERGY_SUMMARY</td><td>Get energy overview</td></tr>
            <tr><td>0x0E63</td><td>DASHBOARD_ENERGY_CHART</td><td>Get energy chart data</td></tr>
            <tr><td>0x0E64</td><td>DASHBOARD_AUTOMATION_SUMMARY</td><td>Get automation summary</td></tr>
            <tr><td>0x0E65</td><td>DASHBOARD_RECENT_ALERTS</td><td>Get recent alerts</td></tr>
            <tr><td>0x0E66</td><td>DASHBOARD_WIDGET_GET</td><td>Get widget configuration</td></tr>
            <tr><td>0x0E67</td><td>DASHBOARD_WIDGET_UPDATE</td><td>Update widget configuration</td></tr>
            <tr><td>0x0E68</td><td>DASHBOARD_DEVICES_BY_ROOM</td><td>Get devices grouped by room</td></tr>
            <tr><td>0x0E69</td><td>DASHBOARD_STATE_CHART</td><td>Get device state chart data</td></tr>
            <tr><td>0x0E6A</td><td>DASHBOARD_ALERT_ACK</td><td>Acknowledge alert</td></tr>
            <tr><td>0x0E6B</td><td>DASHBOARD_ALERT_CONFIG</td><td>Get/update alert config</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-automation-rules">
        <name>Automation Rules (0x0F00-0x0FFF)</name>
        <table>
          <name>Automation Rules Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x0F00</td><td>RULE_CREATE</td><td>Create rule</td></tr>
            <tr><td>0x0F01</td><td>RULE_GET</td><td>Get rule</td></tr>
            <tr><td>0x0F02</td><td>RULE_UPDATE</td><td>Update rule</td></tr>
            <tr><td>0x0F03</td><td>RULE_DELETE</td><td>Delete rule</td></tr>
            <tr><td>0x0F04</td><td>RULE_LIST</td><td>List rules</td></tr>
            <tr><td>0x0F10</td><td>RULE_ENABLE</td><td>Enable rule</td></tr>
            <tr><td>0x0F11</td><td>RULE_DISABLE</td><td>Disable rule</td></tr>
            <tr><td>0x0F12</td><td>RULE_TRIGGER</td><td>Manual trigger</td></tr>
            <tr><td>0x0F13</td><td>RULE_TEST</td><td>Test rule</td></tr>
            <tr><td>0x0F20</td><td>TRIGGER_EVENT</td><td>Trigger event</td></tr>
            <tr><td>0x0F21</td><td>ACTION_EXEC</td><td>Execute action</td></tr>
            <tr><td>0x0F30</td><td>RULE_LOG_GET</td><td>Get automation execution logs</td></tr>
            <tr><td>0x0F31</td><td>RULE_LOG_LIST</td><td>List all execution logs for family</td></tr>
            <tr><td>0x0F40</td><td>TEMPLATE_CREATE</td><td>Create automation template</td></tr>
            <tr><td>0x0F41</td><td>TEMPLATE_GET</td><td>Get automation template</td></tr>
            <tr><td>0x0F42</td><td>TEMPLATE_UPDATE</td><td>Update automation template</td></tr>
            <tr><td>0x0F43</td><td>TEMPLATE_DELETE</td><td>Delete automation template</td></tr>
            <tr><td>0x0F44</td><td>TEMPLATE_LIST</td><td>List automation templates</td></tr>
            <tr><td>0x0F45</td><td>TEMPLATE_INSTANTIATE</td><td>Instantiate rule from template</td></tr>
            <tr><td>0x0F50</td><td>PATTERN_EVALUATE</td><td>Evaluate state pattern against history</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-maya-ai">
        <name>Maya AI Assistant (0x1000-0x10FF)</name>
        <table>
          <name>Maya AI Assistant Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x1000</td><td>MAYA_QUERY</td><td>Send query</td></tr>
            <tr><td>0x1001</td><td>MAYA_RESPONSE</td><td>Query response</td></tr>
            <tr><td>0x1002</td><td>MAYA_STREAM</td><td>Streaming response</td></tr>
            <tr><td>0x1010</td><td>MAYA_COMMAND</td><td>Execute command</td></tr>
            <tr><td>0x1011</td><td>MAYA_RESULT</td><td>Command result</td></tr>
            <tr><td>0x1020</td><td>MAYA_CONTEXT</td><td>Set context</td></tr>
            <tr><td>0x1021</td><td>MAYA_MEMORY</td><td>Memory operation</td></tr>
            <tr><td>0x1022</td><td>MAYA_PERSONALITY</td><td>Set personality</td></tr>
            <tr><td>0x1030</td><td>MAYA_VOICE</td><td>Voice input</td></tr>
            <tr><td>0x1031</td><td>MAYA_SPEAK</td><td>Voice output</td></tr>
            <tr><td>0x1032</td><td>MAYA_T_T_S</td><td>Text-to-speech</td></tr>
            <tr><td>0x1033</td><td>MAYA_S_T_T</td><td>Speech-to-text</td></tr>
            <tr><td>0x1034</td><td>MAYA_VOICE_CATALOG</td><td>Voice catalog management</td></tr>
            <tr><td>0x1040</td><td>MAYA_LEARN</td><td>Learn interaction</td></tr>
            <tr><td>0x1041</td><td>MAYA_SUGGEST</td><td>Get suggestions</td></tr>
            <tr><td>0x1050</td><td>MAYA_CONVERSATION_LIST</td><td>List conversations</td></tr>
            <tr><td>0x1051</td><td>MAYA_CONVERSATION_GET</td><td>Get conversation</td></tr>
            <tr><td>0x1052</td><td>MAYA_CONVERSATION_DELETE</td><td>Delete conversation</td></tr>
            <tr><td>0x1053</td><td>MAYA_MESSAGES_GET</td><td>Get conversation messages</td></tr>
            <tr><td>0x1060</td><td>MAYA_MODELS_GET</td><td>Get available models</td></tr>
            <tr><td>0x1061</td><td>MAYA_HEALTH_GET</td><td>Get provider health</td></tr>
            <tr><td>0x1062</td><td>MAYA_USAGE_GET</td><td>Get usage statistics</td></tr>
            <tr><td>0x1063</td><td>MAYA_BUDGET_GET</td><td>Get budget for family</td></tr>
            <tr><td>0x1064</td><td>MAYA_BUDGET_SET</td><td>Set budget for family</td></tr>
            <tr><td>0x1070</td><td>MAYA_RECORDING_START</td><td>Start story recording</td></tr>
            <tr><td>0x1071</td><td>MAYA_RECORDING_STOP</td><td>Stop story recording</td></tr>
            <tr><td>0x1072</td><td>MAYA_RECORDING_PAUSE</td><td>Pause story recording</td></tr>
            <tr><td>0x1073</td><td>MAYA_RECORDING_RESUME</td><td>Resume story recording</td></tr>
            <tr><td>0x1074</td><td>MAYA_RECORDING_GET</td><td>Get story recording</td></tr>
            <tr><td>0x1075</td><td>MAYA_RECORDING_LIST</td><td>List story recordings</td></tr>
            <tr><td>0x1076</td><td>MAYA_RECORDING_TRANSCRIBE</td><td>Transcribe story recording</td></tr>
            <tr><td>0x1077</td><td>MAYA_RECORDING_APPEND_AUDIO</td><td>Append audio to recording</td></tr>
            <tr><td>0x1078</td><td>MAYA_TRANSCRIPT_LIST</td><td>List voice transcripts</td></tr>
            <tr><td>0x1079</td><td>MAYA_TRANSCRIPT_GET</td><td>Get a voice transcript</td></tr>
            <tr><td>0x107A</td><td>MAYA_TRANSCRIPT_DELETE</td><td>Delete a voice transcript</td></tr>
            <tr><td>0x107B</td><td>MAYA_TRANSCRIPT_EXPORT</td><td>Export user transcripts (DSGVO)</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-sync-federation">
        <name>Synchronization &amp; Federation (0x1100-0x11FF)</name>
        <table>
          <name>Synchronization &amp; Federation Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x1100</td><td>SYNC_REQUEST</td><td>Request sync</td></tr>
            <tr><td>0x1101</td><td>SYNC_START</td><td>Start sync</td></tr>
            <tr><td>0x1102</td><td>SYNC_DATA</td><td>Sync data chunk</td></tr>
            <tr><td>0x1103</td><td>SYNC_COMPLETE</td><td>Sync complete</td></tr>
            <tr><td>0x1110</td><td>SYNC_CONFLICT</td><td>Conflict detected</td></tr>
            <tr><td>0x1111</td><td>SYNC_RESOLVE</td><td>Resolve conflict</td></tr>
            <tr><td>0x1120</td><td>SYNC_STATUS</td><td>Sync status</td></tr>
            <tr><td>0x1121</td><td>SYNC_RESET</td><td>Reset sync state</td></tr>
            <tr><td>0x1130</td><td>V_F_S_FEDERATION_CONNECT</td><td>Connect to federated VFS</td></tr>
            <tr><td>0x1131</td><td>V_F_S_FEDERATION_DISCONNECT</td><td>Disconnect from federated VFS</td></tr>
            <tr><td>0x1132</td><td>V_F_S_FEDERATION_SYNC</td><td>Sync with federated VFS</td></tr>
            <tr><td>0x1133</td><td>V_F_S_FEDERATION_STATUS</td><td>Get federation status</td></tr>
            <tr><td>0x1134</td><td>V_F_S_FEDERATION_INVITE</td><td>Invite to federation</td></tr>
            <tr><td>0x1135</td><td>V_F_S_FEDERATION_ACCEPT</td><td>Accept federation invite</td></tr>
            <tr><td>0x1136</td><td>V_F_S_FEDERATION_REJECT</td><td>Reject federation invite</td></tr>
            <tr><td>0x1137</td><td>V_F_S_FEDERATION_LEAVE</td><td>Leave federation</td></tr>
            <tr><td>0x1140</td><td>SPACE_CREATE</td><td>Create space</td></tr>
            <tr><td>0x1141</td><td>SPACE_GET</td><td>Get space details</td></tr>
            <tr><td>0x1142</td><td>SPACE_UPDATE</td><td>Update space</td></tr>
            <tr><td>0x1143</td><td>SPACE_DELETE</td><td>Delete space</td></tr>
            <tr><td>0x1144</td><td>SPACE_LIST</td><td>List spaces</td></tr>
            <tr><td>0x1145</td><td>SPACE_MEMBERS</td><td>List space members</td></tr>
            <tr><td>0x1150</td><td>FEDERATION_CONNECT</td><td>Establish instance connection</td></tr>
            <tr><td>0x1151</td><td>FEDERATION_DISCONNECT</td><td>Remove instance connection</td></tr>
            <tr><td>0x1152</td><td>FEDERATION_LIST</td><td>List connections</td></tr>
            <tr><td>0x1153</td><td>FEDERATION_STATUS</td><td>Get connection status</td></tr>
            <tr><td>0x1154</td><td>FEDERATION_ANNOUNCE</td><td>Announce capabilities</td></tr>
            <tr><td>0x1155</td><td>FEDERATION_HEARTBEAT</td><td>Instance heartbeat</td></tr>
            <tr><td>0x1160</td><td>SATELLITE_REGISTER</td><td>Register satellite</td></tr>
            <tr><td>0x1161</td><td>SATELLITE_GET</td><td>Get satellite config</td></tr>
            <tr><td>0x1162</td><td>SATELLITE_UPDATE</td><td>Update satellite config</td></tr>
            <tr><td>0x1163</td><td>SATELLITE_REMOVE</td><td>Remove satellite</td></tr>
            <tr><td>0x1164</td><td>SATELLITE_LIST</td><td>List satellites</td></tr>
            <tr><td>0x1165</td><td>SATELLITE_STATUS</td><td>Get satellite status</td></tr>
            <tr><td>0x1170</td><td>RESOURCE_REGISTER</td><td>Register shared resource</td></tr>
            <tr><td>0x1171</td><td>RESOURCE_GET</td><td>Get resource details</td></tr>
            <tr><td>0x1172</td><td>RESOURCE_UPDATE</td><td>Update resource</td></tr>
            <tr><td>0x1173</td><td>RESOURCE_REMOVE</td><td>Remove resource</td></tr>
            <tr><td>0x1174</td><td>RESOURCE_LIST</td><td>List resources</td></tr>
            <tr><td>0x1175</td><td>RESOURCE_REQUEST</td><td>Request resource allocation</td></tr>
            <tr><td>0x1176</td><td>RESOURCE_RELEASE</td><td>Release resource allocation</td></tr>
            <tr><td>0x1178</td><td>SHARING_RULE_CREATE</td><td>Create sharing rule</td></tr>
            <tr><td>0x1179</td><td>SHARING_RULE_DELETE</td><td>Delete sharing rule</td></tr>
            <tr><td>0x117A</td><td>SHARING_RULE_LIST</td><td>List sharing rules</td></tr>
            <tr><td>0x1180</td><td>H_A_CONFIG_GET</td><td>Get HA configuration</td></tr>
            <tr><td>0x1181</td><td>H_A_CONFIG_UPDATE</td><td>Update HA configuration</td></tr>
            <tr><td>0x1182</td><td>H_A_STATUS</td><td>Get HA status</td></tr>
            <tr><td>0x1183</td><td>H_A_FAILOVER</td><td>Trigger failover</td></tr>
            <tr><td>0x1184</td><td>H_A_FAILBACK</td><td>Trigger failback</td></tr>
            <tr><td>0x1185</td><td>H_A_BACKUP_ADD</td><td>Add backup instance</td></tr>
            <tr><td>0x1186</td><td>H_A_BACKUP_REMOVE</td><td>Remove backup instance</td></tr>
            <tr><td>0x1187</td><td>H_A_BACKUP_LIST</td><td>List backup instances</td></tr>
            <tr><td>0x1190</td><td>DISCOVERY_START</td><td>Start LAN discovery</td></tr>
            <tr><td>0x1191</td><td>DISCOVERY_STOP</td><td>Stop LAN discovery</td></tr>
            <tr><td>0x1192</td><td>DISCOVERY_LIST</td><td>List discovered instances</td></tr>
            <tr><td>0x1193</td><td>PAIRING_INITIATE</td><td>Start pairing</td></tr>
            <tr><td>0x1194</td><td>PAIRING_CONFIRM</td><td>Confirm pairing with code</td></tr>
            <tr><td>0x1195</td><td>PAIRING_DENY</td><td>Deny pairing request</td></tr>
            <tr><td>0x1196</td><td>PAIRING_STATUS</td><td>Get pairing status</td></tr>
            <tr><td>0x11A0</td><td>WIRE_GUARD_SETUP</td><td>Setup WireGuard tunnel for connection</td></tr>
            <tr><td>0x11A1</td><td>WIRE_GUARD_TEARDOWN</td><td>Tear down WireGuard tunnel</td></tr>
            <tr><td>0x11A2</td><td>WIRE_GUARD_STATUS</td><td>Get WireGuard tunnel status</td></tr>
            <tr><td>0x11A3</td><td>WIRE_GUARD_KEY_EXCHANGE</td><td>Exchange public keys between instances</td></tr>
            <tr><td>0x11A4</td><td>WIRE_GUARD_ENDPOINT_UPDATE</td><td>Update remote endpoint (roaming)</td></tr>
            <tr><td>0x11A5</td><td>WIRE_GUARD_LIST</td><td>List WireGuard tunnels</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-orchestration">
        <name>Orchestration (Notifications, Finance) (0x1200-0x12FF)</name>
        <table>
          <name>Orchestration (Notifications, Finance) Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x1200</td><td>ORCHESTRATION_CREATE</td><td>Create orchestration</td></tr>
            <tr><td>0x1201</td><td>ORCHESTRATION_GET</td><td>Get orchestration</td></tr>
            <tr><td>0x1202</td><td>ORCHESTRATION_UPDATE</td><td>Update orchestration</td></tr>
            <tr><td>0x1203</td><td>ORCHESTRATION_DELETE</td><td>Delete orchestration</td></tr>
            <tr><td>0x1204</td><td>ORCHESTRATION_LIST</td><td>List orchestrations</td></tr>
            <tr><td>0x1205</td><td>ORCHESTRATION_STATS</td><td>Get orchestration stats</td></tr>
            <tr><td>0x1206</td><td>ORCHESTRATION_START</td><td>Start planning</td></tr>
            <tr><td>0x1207</td><td>ORCHESTRATION_ACTIVATE</td><td>Activate orchestration</td></tr>
            <tr><td>0x1208</td><td>ORCHESTRATION_COMPLETE</td><td>Complete orchestration</td></tr>
            <tr><td>0x1209</td><td>ORCHESTRATION_CANCEL</td><td>Cancel orchestration</td></tr>
            <tr><td>0x1210</td><td>ORCH_TASK_CREATE</td><td>Create task</td></tr>
            <tr><td>0x1211</td><td>ORCH_TASK_GET</td><td>Get task</td></tr>
            <tr><td>0x1212</td><td>ORCH_TASK_UPDATE</td><td>Update task</td></tr>
            <tr><td>0x1213</td><td>ORCH_TASK_DELETE</td><td>Delete task</td></tr>
            <tr><td>0x1214</td><td>ORCH_TASK_LIST</td><td>List tasks</td></tr>
            <tr><td>0x1215</td><td>ORCH_TASK_ASSIGN</td><td>Assign task</td></tr>
            <tr><td>0x1216</td><td>ORCH_TASK_COMPLETE</td><td>Complete task</td></tr>
            <tr><td>0x1217</td><td>ORCH_TASK_SKIP</td><td>Skip task</td></tr>
            <tr><td>0x1220</td><td>BUDGET_CREATE</td><td>Create budget</td></tr>
            <tr><td>0x1221</td><td>BUDGET_GET</td><td>Get budget</td></tr>
            <tr><td>0x1222</td><td>BUDGET_UPDATE</td><td>Update budget</td></tr>
            <tr><td>0x1223</td><td>BUDGET_DELETE</td><td>Delete budget</td></tr>
            <tr><td>0x1230</td><td>BUDGET_CATEGORY_CREATE</td><td>Create category</td></tr>
            <tr><td>0x1231</td><td>BUDGET_CATEGORY_GET</td><td>Get category</td></tr>
            <tr><td>0x1232</td><td>BUDGET_CATEGORY_UPDATE</td><td>Update category</td></tr>
            <tr><td>0x1233</td><td>BUDGET_CATEGORY_DELETE</td><td>Delete category</td></tr>
            <tr><td>0x1234</td><td>BUDGET_CATEGORY_LIST</td><td>List categories</td></tr>
            <tr><td>0x1240</td><td>EXPENSE_CREATE</td><td>Add expense</td></tr>
            <tr><td>0x1241</td><td>EXPENSE_GET</td><td>Get expense</td></tr>
            <tr><td>0x1242</td><td>EXPENSE_UPDATE</td><td>Update expense</td></tr>
            <tr><td>0x1243</td><td>EXPENSE_DELETE</td><td>Delete expense</td></tr>
            <tr><td>0x1244</td><td>EXPENSE_LIST</td><td>List expenses</td></tr>
            <tr><td>0x1250</td><td>MILESTONE_CREATE</td><td>Create milestone</td></tr>
            <tr><td>0x1251</td><td>MILESTONE_GET</td><td>Get milestone</td></tr>
            <tr><td>0x1252</td><td>MILESTONE_UPDATE</td><td>Update milestone</td></tr>
            <tr><td>0x1253</td><td>MILESTONE_DELETE</td><td>Delete milestone</td></tr>
            <tr><td>0x1254</td><td>MILESTONE_LIST</td><td>List milestones</td></tr>
            <tr><td>0x1255</td><td>MILESTONE_COMPLETE</td><td>Complete milestone</td></tr>
            <tr><td>0x1256</td><td>MILESTONE_SKIP</td><td>Skip milestone</td></tr>
            <tr><td>0x1260</td><td>CONTRIBUTOR_ADD</td><td>Add contributor</td></tr>
            <tr><td>0x1261</td><td>CONTRIBUTOR_UPDATE</td><td>Update contributor</td></tr>
            <tr><td>0x1262</td><td>CONTRIBUTOR_REMOVE</td><td>Remove contributor</td></tr>
            <tr><td>0x1263</td><td>CONTRIBUTOR_LIST</td><td>List contributors</td></tr>
            <tr><td>0x1270</td><td>NOTIFICATION_CREATE</td><td>Create/send notification</td></tr>
            <tr><td>0x1271</td><td>NOTIFICATION_GET</td><td>Get notification by ID</td></tr>
            <tr><td>0x1272</td><td>NOTIFICATION_LIST</td><td>List notifications for user</td></tr>
            <tr><td>0x1273</td><td>NOTIFICATION_MARK_READ</td><td>Mark notification as read</td></tr>
            <tr><td>0x1274</td><td>NOTIFICATION_MARK_ALL_READ</td><td>Mark all notifications as read</td></tr>
            <tr><td>0x1275</td><td>NOTIFICATION_DELETE</td><td>Delete notification</td></tr>
            <tr><td>0x1276</td><td>NOTIFICATION_DELETE_ALL</td><td>Delete all notifications for user</td></tr>
            <tr><td>0x1277</td><td>NOTIFICATION_COUNT</td><td>Get unread count</td></tr>
            <tr><td>0x1280</td><td>NOTIFICATION_PREFS_GET</td><td>Get user preferences</td></tr>
            <tr><td>0x1281</td><td>NOTIFICATION_PREFS_UPDATE</td><td>Update user preferences</td></tr>
            <tr><td>0x1282</td><td>NOTIFICATION_CHANNEL_TEST</td><td>Test notification channel</td></tr>
            <tr><td>0x1283</td><td>NOTIFICATION_SUBSCRIBE</td><td>Subscribe to push notifications</td></tr>
            <tr><td>0x1284</td><td>NOTIFICATION_UNSUBSCRIBE</td><td>Unsubscribe from push</td></tr>
            <tr><td>0x1288</td><td>NOTIFICATION_SEND</td><td>Admin: send to specific user</td></tr>
            <tr><td>0x1289</td><td>NOTIFICATION_BROADCAST</td><td>Admin: broadcast to family/all</td></tr>
            <tr><td>0x1290</td><td>FIN_ACCOUNT_CREATE</td><td>Create bank account</td></tr>
            <tr><td>0x1291</td><td>FIN_ACCOUNT_GET</td><td>Get bank account</td></tr>
            <tr><td>0x1292</td><td>FIN_ACCOUNT_UPDATE</td><td>Update bank account</td></tr>
            <tr><td>0x1293</td><td>FIN_ACCOUNT_DELETE</td><td>Delete bank account</td></tr>
            <tr><td>0x1294</td><td>FIN_ACCOUNT_LIST</td><td>List bank accounts</td></tr>
            <tr><td>0x1295</td><td>FIN_ACCOUNT_SYNC</td><td>Update sync status</td></tr>
            <tr><td>0x1298</td><td>FIN_TXN_IMPORT</td><td>Import transactions</td></tr>
            <tr><td>0x1299</td><td>FIN_TXN_GET</td><td>Get transaction</td></tr>
            <tr><td>0x129A</td><td>FIN_TXN_UPDATE</td><td>Update transaction</td></tr>
            <tr><td>0x129B</td><td>FIN_TXN_DELETE</td><td>Delete transaction</td></tr>
            <tr><td>0x129C</td><td>FIN_TXN_LIST</td><td>List transactions</td></tr>
            <tr><td>0x129D</td><td>FIN_TXN_CATEGORIZE</td><td>Categorize transaction</td></tr>
            <tr><td>0x129E</td><td>FIN_TXN_STATS</td><td>Transaction statistics</td></tr>
            <tr><td>0x129F</td><td>FIN_TXN_SEARCH</td><td>Search transactions</td></tr>
            <tr><td>0x12A1</td><td>FIN_CATEGORY_CREATE</td><td>Create category</td></tr>
            <tr><td>0x12A2</td><td>FIN_CATEGORY_GET</td><td>Get category</td></tr>
            <tr><td>0x12A3</td><td>FIN_CATEGORY_UPDATE</td><td>Update category</td></tr>
            <tr><td>0x12A4</td><td>FIN_CATEGORY_DELETE</td><td>Delete category</td></tr>
            <tr><td>0x12A5</td><td>FIN_CATEGORY_LIST</td><td>List categories</td></tr>
            <tr><td>0x12A6</td><td>FIN_CATEGORY_SUBS</td><td>List subcategories</td></tr>
            <tr><td>0x12A8</td><td>FIN_BUDGET_CREATE</td><td>Create budget</td></tr>
            <tr><td>0x12A9</td><td>FIN_BUDGET_GET</td><td>Get budget</td></tr>
            <tr><td>0x12AA</td><td>FIN_BUDGET_UPDATE</td><td>Update budget</td></tr>
            <tr><td>0x12AB</td><td>FIN_BUDGET_DELETE</td><td>Delete budget</td></tr>
            <tr><td>0x12AC</td><td>FIN_BUDGET_LIST</td><td>List budgets</td></tr>
            <tr><td>0x12AD</td><td>FIN_BUDGET_STATUS</td><td>Get budget status</td></tr>
            <tr><td>0x12AE</td><td>FIN_BUDGET_SPEND</td><td>Record spending</td></tr>
            <tr><td>0x12B2</td><td>FIN_ALLOWANCE_CREATE</td><td>Create allowance account</td></tr>
            <tr><td>0x12B3</td><td>FIN_ALLOWANCE_GET</td><td>Get allowance account</td></tr>
            <tr><td>0x12B4</td><td>FIN_ALLOWANCE_UPDATE</td><td>Update allowance account</td></tr>
            <tr><td>0x12B5</td><td>FIN_ALLOWANCE_DELETE</td><td>Delete allowance account</td></tr>
            <tr><td>0x12B6</td><td>FIN_ALLOWANCE_LIST</td><td>List allowance accounts</td></tr>
            <tr><td>0x12B7</td><td>FIN_ALLOWANCE_TXN_ADD</td><td>Add allowance transaction</td></tr>
            <tr><td>0x12B8</td><td>FIN_ALLOWANCE_TXN_LIST</td><td>List allowance transactions</td></tr>
            <tr><td>0x12B9</td><td>FIN_ALLOWANCE_APPROVE</td><td>Approve pending transaction</td></tr>
            <tr><td>0x12BE</td><td>FIN_GOAL_CREATE</td><td>Create savings goal</td></tr>
            <tr><td>0x12BF</td><td>FIN_GOAL_GET</td><td>Get savings goal</td></tr>
            <tr><td>0x12C0</td><td>FIN_GOAL_UPDATE</td><td>Update savings goal</td></tr>
            <tr><td>0x12C1</td><td>FIN_GOAL_DELETE</td><td>Delete savings goal</td></tr>
            <tr><td>0x12C2</td><td>FIN_GOAL_LIST</td><td>List savings goals</td></tr>
            <tr><td>0x12C3</td><td>FIN_GOAL_CONTRIBUTE</td><td>Contribute to savings goal</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-presence-education">
        <name>Presence, Status &amp; Education (0x1300-0x13FF)</name>
        <table>
          <name>Presence, Status &amp; Education Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x1300</td><td>PRESENCE_SET</td><td>Set presence</td></tr>
            <tr><td>0x1301</td><td>PRESENCE_GET</td><td>Get presence</td></tr>
            <tr><td>0x1310</td><td>PRESENCE_SUBSCRIBE</td><td>Subscribe to presence</td></tr>
            <tr><td>0x1311</td><td>PRESENCE_UNSUBSCRIBE</td><td>Unsubscribe</td></tr>
            <tr><td>0x1312</td><td>PRESENCE_UPDATE</td><td>Presence update notification</td></tr>
            <tr><td>0x1320</td><td>STATUS_SET</td><td>Set status message</td></tr>
            <tr><td>0x1321</td><td>STATUS_GET</td><td>Get status message</td></tr>
            <tr><td>0x1322</td><td>DETECTION_RULE_CREATE</td><td>Create detection rule</td></tr>
            <tr><td>0x1323</td><td>DETECTION_RULE_GET</td><td>Get detection rule</td></tr>
            <tr><td>0x1324</td><td>DETECTION_RULE_LIST</td><td>List detection rules</td></tr>
            <tr><td>0x1325</td><td>DETECTION_RULE_UPDATE</td><td>Update detection rule</td></tr>
            <tr><td>0x1326</td><td>DETECTION_RULE_DELETE</td><td>Delete detection rule</td></tr>
            <tr><td>0x1327</td><td>PRESENCE_HISTORY</td><td>Get presence history</td></tr>
            <tr><td>0x1328</td><td>PRESENCE_MOOD_SET</td><td>Set presence mood</td></tr>
            <tr><td>0x1329</td><td>PRESENCE_MOOD_GET</td><td>Get presence mood</td></tr>
            <tr><td>0x132A</td><td>PRESENCE_FAMILY_GET</td><td>Get all family presence</td></tr>
            <tr><td>0x1330</td><td>GAMIFICATION_PROFILE_GET</td><td>Get user profile</td></tr>
            <tr><td>0x1331</td><td>GAMIFICATION_PROFILE_UPDATE</td><td>Update profile settings</td></tr>
            <tr><td>0x1340</td><td>GAMIFICATION_X_P_AWARD</td><td>Award XP to user</td></tr>
            <tr><td>0x1341</td><td>GAMIFICATION_X_P_HISTORY</td><td>Get XP history</td></tr>
            <tr><td>0x1350</td><td>GAMIFICATION_BADGE_GET</td><td>Get badge definition</td></tr>
            <tr><td>0x1351</td><td>GAMIFICATION_BADGE_LIST</td><td>List all badges</td></tr>
            <tr><td>0x1352</td><td>GAMIFICATION_BADGE_USER_GET</td><td>Get user badges</td></tr>
            <tr><td>0x1353</td><td>GAMIFICATION_BADGE_AWARD</td><td>Award badge to user</td></tr>
            <tr><td>0x1354</td><td>GAMIFICATION_BADGE_CREATE</td><td>Create badge definition</td></tr>
            <tr><td>0x1355</td><td>GAMIFICATION_BADGE_PROGRESS</td><td>Update badge progress</td></tr>
            <tr><td>0x1360</td><td>GAMIFICATION_LEADERBOARD</td><td>Get family leaderboard</td></tr>
            <tr><td>0x1370</td><td>GAMIFICATION_SETTINGS_GET</td><td>Get family settings</td></tr>
            <tr><td>0x1371</td><td>GAMIFICATION_SETTINGS_UPDATE</td><td>Update family settings</td></tr>
            <tr><td>0x1380</td><td>EDU_STUDENT_CREATE</td><td>Create student profile</td></tr>
            <tr><td>0x1381</td><td>EDU_STUDENT_GET</td><td>Get student profile</td></tr>
            <tr><td>0x1382</td><td>EDU_STUDENT_UPDATE</td><td>Update student profile</td></tr>
            <tr><td>0x1383</td><td>EDU_STUDENT_DELETE</td><td>Delete student profile</td></tr>
            <tr><td>0x1384</td><td>EDU_STUDENT_LIST</td><td>List family students</td></tr>
            <tr><td>0x1388</td><td>EDU_SUBJECT_CREATE</td><td>Create subject</td></tr>
            <tr><td>0x1389</td><td>EDU_SUBJECT_GET</td><td>Get subject</td></tr>
            <tr><td>0x138A</td><td>EDU_SUBJECT_UPDATE</td><td>Update subject</td></tr>
            <tr><td>0x138B</td><td>EDU_SUBJECT_DELETE</td><td>Delete subject</td></tr>
            <tr><td>0x138C</td><td>EDU_SUBJECT_LIST</td><td>List family subjects</td></tr>
            <tr><td>0x1390</td><td>EDU_GRADE_CREATE</td><td>Add grade</td></tr>
            <tr><td>0x1391</td><td>EDU_GRADE_GET</td><td>Get grade</td></tr>
            <tr><td>0x1392</td><td>EDU_GRADE_UPDATE</td><td>Update grade</td></tr>
            <tr><td>0x1393</td><td>EDU_GRADE_DELETE</td><td>Delete grade</td></tr>
            <tr><td>0x1394</td><td>EDU_GRADE_LIST</td><td>List student grades</td></tr>
            <tr><td>0x1396</td><td>EDU_AVERAGE_GET</td><td>Get subject average</td></tr>
            <tr><td>0x1397</td><td>EDU_AVERAGE_LIST</td><td>List subject averages</td></tr>
            <tr><td>0x13A0</td><td>EDU_HOMEWORK_CREATE</td><td>Create homework</td></tr>
            <tr><td>0x13A1</td><td>EDU_HOMEWORK_GET</td><td>Get homework</td></tr>
            <tr><td>0x13A2</td><td>EDU_HOMEWORK_UPDATE</td><td>Update homework</td></tr>
            <tr><td>0x13A3</td><td>EDU_HOMEWORK_DELETE</td><td>Delete homework</td></tr>
            <tr><td>0x13A4</td><td>EDU_HOMEWORK_LIST</td><td>List student homework</td></tr>
            <tr><td>0x13A5</td><td>EDU_HOMEWORK_COMPLETE</td><td>Complete homework</td></tr>
            <tr><td>0x13A6</td><td>EDU_HOMEWORK_HELP</td><td>Request help</td></tr>
            <tr><td>0x13A7</td><td>EDU_HOMEWORK_OVERDUE</td><td>List overdue homework</td></tr>
            <tr><td>0x13A8</td><td>EDU_ATTACHMENT_ADD</td><td>Add attachment</td></tr>
            <tr><td>0x13A9</td><td>EDU_ATTACHMENT_LIST</td><td>List attachments</td></tr>
            <tr><td>0x13B0</td><td>EDU_TIMETABLE_CREATE</td><td>Add lesson</td></tr>
            <tr><td>0x13B1</td><td>EDU_TIMETABLE_UPDATE</td><td>Update lesson</td></tr>
            <tr><td>0x13B2</td><td>EDU_TIMETABLE_DELETE</td><td>Delete lesson</td></tr>
            <tr><td>0x13B3</td><td>EDU_TIMETABLE_LIST</td><td>List lessons</td></tr>
            <tr><td>0x13B4</td><td>EDU_TIMETABLE_TODAY</td><td>Get today's lessons</td></tr>
            <tr><td>0x13B5</td><td>EDU_TIMETABLE_WEEK</td><td>Get week's lessons</td></tr>
            <tr><td>0x13C0</td><td>EDU_MESSAGE_SEND</td><td>Send message</td></tr>
            <tr><td>0x13C1</td><td>EDU_MESSAGE_RECEIVE</td><td>Record incoming message</td></tr>
            <tr><td>0x13C2</td><td>EDU_MESSAGE_LIST</td><td>List messages</td></tr>
            <tr><td>0x13C3</td><td>EDU_MESSAGE_READ</td><td>Mark as read</td></tr>
            <tr><td>0x13C8</td><td>EDU_APPOINTMENT_CREATE</td><td>Create appointment</td></tr>
            <tr><td>0x13C9</td><td>EDU_APPOINTMENT_LIST</td><td>List appointments</td></tr>
            <tr><td>0x13CA</td><td>EDU_APPOINTMENT_UPDATE</td><td>Update appointment</td></tr>
            <tr><td>0x13CB</td><td>EDU_APPOINTMENT_R_S_V_P</td><td>RSVP appointment</td></tr>
            <tr><td>0x13CC</td><td>EDU_APPOINTMENT_CANCEL</td><td>Cancel appointment</td></tr>
            <tr><td>0x13D0</td><td>EDU_ABSENCE_REPORT</td><td>Report absence</td></tr>
            <tr><td>0x13D1</td><td>EDU_ABSENCE_LIST</td><td>List absences</td></tr>
            <tr><td>0x13D2</td><td>EDU_ABSENCE_CONFIRM</td><td>Confirm absence</td></tr>
            <tr><td>0x13D3</td><td>EDU_ABSENCE_EXCUSE</td><td>Submit excuse</td></tr>
            <tr><td>0x13D4</td><td>EDU_ABSENCE_MEDICAL</td><td>Submit medical note</td></tr>
            <tr><td>0x13D8</td><td>EDU_RECOMMEND_LIST</td><td>List recommendations</td></tr>
            <tr><td>0x13D9</td><td>EDU_RECOMMEND_SUBJECT</td><td>List subject recommendations</td></tr>
            <tr><td>0x13DA</td><td>EDU_RECOMMEND_ACKNOWLEDGE</td><td>Acknowledge recommendation</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-health-community">
        <name>Health, Social &amp; Community (0x1400-0x14FF)</name>
        <table>
          <name>Health, Social &amp; Community Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x1400</td><td>HEALTH_RECORD_CREATE</td><td>Create health record</td></tr>
            <tr><td>0x1401</td><td>HEALTH_RECORD_GET</td><td>Get health record</td></tr>
            <tr><td>0x1402</td><td>HEALTH_RECORD_UPDATE</td><td>Update health record</td></tr>
            <tr><td>0x1403</td><td>HEALTH_RECORD_DELETE</td><td>Delete health record</td></tr>
            <tr><td>0x1404</td><td>HEALTH_RECORD_LIST</td><td>List health records</td></tr>
            <tr><td>0x1405</td><td>HEALTH_RECORD_QUERY</td><td>Query health records by type/range</td></tr>
            <tr><td>0x1410</td><td>MEDICATION_CREATE</td><td>Create medication</td></tr>
            <tr><td>0x1411</td><td>MEDICATION_GET</td><td>Get medication</td></tr>
            <tr><td>0x1412</td><td>MEDICATION_UPDATE</td><td>Update medication</td></tr>
            <tr><td>0x1413</td><td>MEDICATION_DELETE</td><td>Delete medication</td></tr>
            <tr><td>0x1414</td><td>MEDICATION_LIST</td><td>List medications</td></tr>
            <tr><td>0x1415</td><td>MEDICATION_REMIND</td><td>Medication reminder</td></tr>
            <tr><td>0x1416</td><td>MEDICATION_CONFIRM</td><td>Confirm medication taken</td></tr>
            <tr><td>0x1417</td><td>MEDICATION_SKIP</td><td>Skip medication dose</td></tr>
            <tr><td>0x1420</td><td>FALL_DETECTED</td><td>Fall detected event</td></tr>
            <tr><td>0x1421</td><td>FALL_FALSE_POSITIVE</td><td>Mark fall as false positive</td></tr>
            <tr><td>0x1422</td><td>EMERGENCY_TRIGGER</td><td>Trigger emergency</td></tr>
            <tr><td>0x1423</td><td>EMERGENCY_CANCEL</td><td>Cancel emergency</td></tr>
            <tr><td>0x1424</td><td>EMERGENCY_CONTACTS</td><td>List emergency contacts</td></tr>
            <tr><td>0x1425</td><td>EMERGENCY_CONTACT_ADD</td><td>Add emergency contact</td></tr>
            <tr><td>0x1426</td><td>EMERGENCY_CONTACT_REMOVE</td><td>Remove emergency contact</td></tr>
            <tr><td>0x1427</td><td>EMERGENCY_CONTACT_UPDATE</td><td>Update emergency contact</td></tr>
            <tr><td>0x1428</td><td>EMERGENCY_STATUS</td><td>Get active emergency status</td></tr>
            <tr><td>0x1429</td><td>EMERGENCY_LOCATION_UPDATE</td><td>Update emergency location</td></tr>
            <tr><td>0x142A</td><td>EMERGENCY_CALL_CHAIN_CONFIG</td><td>Get/set call chain configuration</td></tr>
            <tr><td>0x142B</td><td>EMERGENCY_CALL_CHAIN_STATUS</td><td>Get call chain escalation status</td></tr>
            <tr><td>0x142C</td><td>EMERGENCY_ACKNOWLEDGE</td><td>Acknowledge emergency</td></tr>
            <tr><td>0x142D</td><td>EMERGENCY_RESOLVE</td><td>Resolve emergency</td></tr>
            <tr><td>0x142E</td><td>EMERGENCY_HISTORY</td><td>Get emergency event history</td></tr>
            <tr><td>0x142F</td><td>EMERGENCY_ACTIONS</td><td>Get emergency event actions</td></tr>
            <tr><td>0x1430</td><td>ACTIVITY_LOG</td><td>Log activity</td></tr>
            <tr><td>0x1431</td><td>ACTIVITY_GET</td><td>Get activity</td></tr>
            <tr><td>0x1432</td><td>ACTIVITY_LIST</td><td>List activities</td></tr>
            <tr><td>0x1433</td><td>ACTIVITY_STATS</td><td>Get activity statistics</td></tr>
            <tr><td>0x1434</td><td>SLEEP_RECORD</td><td>Record sleep data</td></tr>
            <tr><td>0x1435</td><td>SLEEP_GET</td><td>Get sleep record</td></tr>
            <tr><td>0x1436</td><td>SLEEP_LIST</td><td>List sleep records</td></tr>
            <tr><td>0x1437</td><td>SLEEP_STATS</td><td>Get sleep statistics</td></tr>
            <tr><td>0x1440</td><td>MOOD_RECORD</td><td>Record mood entry</td></tr>
            <tr><td>0x1441</td><td>MOOD_GET</td><td>Get mood entry</td></tr>
            <tr><td>0x1442</td><td>MOOD_LIST</td><td>List mood entries by date range</td></tr>
            <tr><td>0x1443</td><td>MOOD_DELETE</td><td>Delete mood entry</td></tr>
            <tr><td>0x1448</td><td>HEALTH_ALERT_CREATE</td><td>Create health alert</td></tr>
            <tr><td>0x1449</td><td>HEALTH_ALERT_LIST</td><td>List alerts for user</td></tr>
            <tr><td>0x144A</td><td>HEALTH_ALERT_UNACKED</td><td>List unacknowledged alerts</td></tr>
            <tr><td>0x144B</td><td>HEALTH_ALERT_ACK</td><td>Acknowledge alert</td></tr>
            <tr><td>0x144C</td><td>HEALTH_ALERT_DELETE</td><td>Delete alert</td></tr>
            <tr><td>0x1450</td><td>DRUG_INTERACTION_CHECK</td><td>Check interactions for user's medications</td></tr>
            <tr><td>0x1451</td><td>DRUG_INTERACTION_GET</td><td>Get interaction by ID</td></tr>
            <tr><td>0x1452</td><td>DRUG_INTERACTION_CREATE</td><td>Create interaction record</td></tr>
            <tr><td>0x1453</td><td>DRUG_INTERACTION_DELETE</td><td>Delete interaction record</td></tr>
            <tr><td>0x1458</td><td>HEALTH_PRIVACY_GET</td><td>Get privacy settings</td></tr>
            <tr><td>0x1459</td><td>HEALTH_PRIVACY_UPDATE</td><td>Update privacy settings</td></tr>
            <tr><td>0x1460</td><td>AIR_QUALITY_RECORD</td><td>Record air quality reading</td></tr>
            <tr><td>0x1461</td><td>AIR_QUALITY_LIST</td><td>List readings by family</td></tr>
            <tr><td>0x1462</td><td>AIR_QUALITY_ROOM</td><td>Get readings by room</td></tr>
            <tr><td>0x1463</td><td>AIR_QUALITY_LATEST</td><td>Get latest family reading</td></tr>
            <tr><td>0x1468</td><td>TELEHEALTH_CREATE</td><td>Create appointment</td></tr>
            <tr><td>0x1469</td><td>TELEHEALTH_GET</td><td>Get appointment</td></tr>
            <tr><td>0x146A</td><td>TELEHEALTH_UPCOMING</td><td>List upcoming appointments</td></tr>
            <tr><td>0x146B</td><td>TELEHEALTH_COMPLETE</td><td>Complete appointment</td></tr>
            <tr><td>0x146C</td><td>TELEHEALTH_CANCEL</td><td>Cancel appointment</td></tr>
            <tr><td>0x146D</td><td>TELEHEALTH_DELETE</td><td>Delete appointment</td></tr>
            <tr><td>0x1470</td><td>FITNESS_GOAL_CREATE</td><td>Create fitness goal</td></tr>
            <tr><td>0x1471</td><td>FITNESS_GOAL_GET</td><td>Get fitness goal</td></tr>
            <tr><td>0x1472</td><td>FITNESS_GOAL_ACTIVE</td><td>List active goals</td></tr>
            <tr><td>0x1473</td><td>FITNESS_GOAL_PROGRESS</td><td>Update goal progress</td></tr>
            <tr><td>0x1474</td><td>FITNESS_GOAL_DELETE</td><td>Delete fitness goal</td></tr>
            <tr><td>0x1478</td><td>FITNESS_CHALLENGE_CREATE</td><td>Create challenge</td></tr>
            <tr><td>0x1479</td><td>FITNESS_CHALLENGE_GET</td><td>Get challenge</td></tr>
            <tr><td>0x147A</td><td>FITNESS_CHALLENGE_ACTIVE</td><td>List active challenges</td></tr>
            <tr><td>0x147B</td><td>FITNESS_CHALLENGE_FAMILY</td><td>List family challenges</td></tr>
            <tr><td>0x147C</td><td>FITNESS_CHALLENGE_UPDATE</td><td>Update challenge</td></tr>
            <tr><td>0x147D</td><td>FITNESS_CHALLENGE_DELETE</td><td>Delete challenge</td></tr>
            <tr><td>0x147E</td><td>F_H_I_R_EXPORT_BUNDLE</td><td>Export health data as FHIR R4 Bundle</td></tr>
            <tr><td>0x147F</td><td>F_H_I_R_RESOURCE_TYPES</td><td>List exportable FHIR resource types</td></tr>
            <tr><td>0x1480</td><td>NEIGHBOR_DISCOVER</td><td>Discover neighbors</td></tr>
            <tr><td>0x1481</td><td>NEIGHBOR_CONNECT</td><td>Connect with neighbor</td></tr>
            <tr><td>0x1482</td><td>NEIGHBOR_GET</td><td>Get neighbor info</td></tr>
            <tr><td>0x1483</td><td>NEIGHBOR_LIST</td><td>List neighbors</td></tr>
            <tr><td>0x1484</td><td>NEIGHBOR_BLOCK</td><td>Block neighbor</td></tr>
            <tr><td>0x1485</td><td>NEIGHBOR_UNBLOCK</td><td>Unblock neighbor</td></tr>
            <tr><td>0x1490</td><td>TOOL_SHARE_OFFER</td><td>Offer tool for sharing</td></tr>
            <tr><td>0x1491</td><td>TOOL_SHARE_GET</td><td>Get tool details</td></tr>
            <tr><td>0x1492</td><td>TOOL_SHARE_LIST</td><td>List available tools</td></tr>
            <tr><td>0x1493</td><td>TOOL_SHARE_REQUEST</td><td>Request to borrow tool</td></tr>
            <tr><td>0x1494</td><td>TOOL_SHARE_APPROVE</td><td>Approve borrow request</td></tr>
            <tr><td>0x1495</td><td>TOOL_SHARE_RETURN</td><td>Return borrowed tool</td></tr>
            <tr><td>0x1496</td><td>TOOL_SHARE_UPDATE</td><td>Update tool listing</td></tr>
            <tr><td>0x1497</td><td>TOOL_SHARE_REMOVE</td><td>Remove tool from sharing</td></tr>
            <tr><td>0x14A0</td><td>COMMUNITY_POST_CREATE</td><td>Create community post</td></tr>
            <tr><td>0x14A1</td><td>COMMUNITY_POST_GET</td><td>Get community post</td></tr>
            <tr><td>0x14A2</td><td>COMMUNITY_POST_UPDATE</td><td>Update community post</td></tr>
            <tr><td>0x14A3</td><td>COMMUNITY_POST_DELETE</td><td>Delete community post</td></tr>
            <tr><td>0x14A4</td><td>COMMUNITY_POST_LIST</td><td>List community posts</td></tr>
            <tr><td>0x14A5</td><td>COMMUNITY_EVENT_CREATE</td><td>Create community event</td></tr>
            <tr><td>0x14A6</td><td>COMMUNITY_EVENT_GET</td><td>Get community event</td></tr>
            <tr><td>0x14A7</td><td>COMMUNITY_EVENT_LIST</td><td>List community events</td></tr>
            <tr><td>0x14A8</td><td>COMMUNITY_EVENT_JOIN</td><td>Join community event</td></tr>
            <tr><td>0x14A9</td><td>COMMUNITY_EVENT_LEAVE</td><td>Leave community event</td></tr>
            <tr><td>0x14B0</td><td>HELP_REQUEST_CREATE</td><td>Create help request</td></tr>
            <tr><td>0x14B1</td><td>HELP_REQUEST_GET</td><td>Get help request</td></tr>
            <tr><td>0x14B2</td><td>HELP_REQUEST_UPDATE</td><td>Update help request</td></tr>
            <tr><td>0x14B3</td><td>HELP_REQUEST_DELETE</td><td>Delete help request</td></tr>
            <tr><td>0x14B4</td><td>HELP_REQUEST_LIST</td><td>List help requests</td></tr>
            <tr><td>0x14B5</td><td>HELP_OFFER</td><td>Offer help</td></tr>
            <tr><td>0x14B6</td><td>HELP_ACCEPT</td><td>Accept help offer</td></tr>
            <tr><td>0x14B7</td><td>HELP_COMPLETE</td><td>Mark help as complete</td></tr>
            <tr><td>0x14C0</td><td>CARPOOL_CREATE</td><td>Create carpool offer</td></tr>
            <tr><td>0x14C1</td><td>CARPOOL_GET</td><td>Get carpool details</td></tr>
            <tr><td>0x14C2</td><td>CARPOOL_UPDATE</td><td>Update carpool</td></tr>
            <tr><td>0x14C3</td><td>CARPOOL_DELETE</td><td>Delete carpool</td></tr>
            <tr><td>0x14C4</td><td>CARPOOL_LIST</td><td>List carpools</td></tr>
            <tr><td>0x14C5</td><td>CARPOOL_SEARCH</td><td>Search carpools</td></tr>
            <tr><td>0x14C6</td><td>CARPOOL_REQUEST</td><td>Request to join carpool</td></tr>
            <tr><td>0x14C7</td><td>CARPOOL_APPROVE</td><td>Approve carpool request</td></tr>
            <tr><td>0x14C8</td><td>CARPOOL_LEAVE</td><td>Leave carpool</td></tr>
            <tr><td>0x14D0</td><td>PET_CREATE</td><td>Create pet profile</td></tr>
            <tr><td>0x14D1</td><td>PET_GET</td><td>Get pet profile</td></tr>
            <tr><td>0x14D2</td><td>PET_UPDATE</td><td>Update pet profile</td></tr>
            <tr><td>0x14D3</td><td>PET_DELETE</td><td>Delete pet profile</td></tr>
            <tr><td>0x14D4</td><td>PET_LIST</td><td>List family pets</td></tr>
            <tr><td>0x14D5</td><td>PET_ARCHIVE</td><td>Archive deceased pet</td></tr>
            <tr><td>0x14D8</td><td>PET_FEED_SCHEDULE_GET</td><td>Get feeding schedule</td></tr>
            <tr><td>0x14D9</td><td>PET_FEED_SCHEDULE_SET</td><td>Set feeding schedule</td></tr>
            <tr><td>0x14DA</td><td>PET_FEED_LOG_ADD</td><td>Add feeding log entry</td></tr>
            <tr><td>0x14DB</td><td>PET_FEED_LOG_LIST</td><td>List feeding log</td></tr>
            <tr><td>0x14DC</td><td>PET_FEED_LOG_DELETE</td><td>Delete feeding log entry</td></tr>
            <tr><td>0x14E0</td><td>PET_WALK_LOG_ADD</td><td>Add walk log entry</td></tr>
            <tr><td>0x14E1</td><td>PET_WALK_LOG_LIST</td><td>List walk log</td></tr>
            <tr><td>0x14E2</td><td>PET_WALK_LOG_DELETE</td><td>Delete walk log entry</td></tr>
            <tr><td>0x14E3</td><td>PET_WALK_STATS</td><td>Get walk statistics</td></tr>
            <tr><td>0x14E8</td><td>PET_VET_CREATE</td><td>Create vet appointment</td></tr>
            <tr><td>0x14E9</td><td>PET_VET_GET</td><td>Get vet appointment</td></tr>
            <tr><td>0x14EA</td><td>PET_VET_UPDATE</td><td>Update vet appointment</td></tr>
            <tr><td>0x14EB</td><td>PET_VET_DELETE</td><td>Delete vet appointment</td></tr>
            <tr><td>0x14EC</td><td>PET_VET_LIST</td><td>List vet appointments</td></tr>
            <tr><td>0x14ED</td><td>PET_VAX_ADD</td><td>Add vaccination record</td></tr>
            <tr><td>0x14EE</td><td>PET_VAX_LIST</td><td>List vaccinations</td></tr>
            <tr><td>0x14EF</td><td>PET_VAX_DELETE</td><td>Delete vaccination record</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-location-property">
        <name>Location, Mobility &amp; Property (0x1500-0x15FF)</name>
        <table>
          <name>Location, Mobility &amp; Property Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x1500</td><td>LOCATION_UPDATE</td><td>Update location</td></tr>
            <tr><td>0x1501</td><td>LOCATION_GET</td><td>Get location</td></tr>
            <tr><td>0x1502</td><td>LOCATION_HISTORY</td><td>Get location history</td></tr>
            <tr><td>0x1503</td><td>LOCATION_SHARE</td><td>Share location</td></tr>
            <tr><td>0x1504</td><td>LOCATION_UNSHARE</td><td>Stop sharing location</td></tr>
            <tr><td>0x1505</td><td>LOCATION_SUBSCRIBE</td><td>Subscribe to location updates</td></tr>
            <tr><td>0x1510</td><td>NAV_ROUTE_PLAN</td><td>Plan route</td></tr>
            <tr><td>0x1511</td><td>NAV_ROUTE_START</td><td>Start navigation</td></tr>
            <tr><td>0x1512</td><td>NAV_ROUTE_UPDATE</td><td>Update route progress</td></tr>
            <tr><td>0x1513</td><td>NAV_ROUTE_STOP</td><td>Stop navigation</td></tr>
            <tr><td>0x1514</td><td>NAV_ROUTE_GET</td><td>Get route details</td></tr>
            <tr><td>0x1515</td><td>NAV_ROUTE_LIST</td><td>List saved routes</td></tr>
            <tr><td>0x1520</td><td>TRANSIT_QUERY</td><td>Query public transit</td></tr>
            <tr><td>0x1521</td><td>TRANSIT_DEPARTURES</td><td>Get departures</td></tr>
            <tr><td>0x1522</td><td>TRANSIT_ARRIVALS</td><td>Get arrivals</td></tr>
            <tr><td>0x1523</td><td>TRANSIT_ALERTS</td><td>Get service alerts</td></tr>
            <tr><td>0x1530</td><td>VEHICLE_CREATE</td><td>Register vehicle</td></tr>
            <tr><td>0x1531</td><td>VEHICLE_GET</td><td>Get vehicle info</td></tr>
            <tr><td>0x1532</td><td>VEHICLE_UPDATE</td><td>Update vehicle</td></tr>
            <tr><td>0x1533</td><td>VEHICLE_DELETE</td><td>Remove vehicle</td></tr>
            <tr><td>0x1534</td><td>VEHICLE_LIST</td><td>List vehicles</td></tr>
            <tr><td>0x1535</td><td>VEHICLE_STATUS</td><td>Get vehicle status</td></tr>
            <tr><td>0x1536</td><td>VEHICLE_LOCK</td><td>Lock vehicle</td></tr>
            <tr><td>0x1537</td><td>VEHICLE_UNLOCK</td><td>Unlock vehicle</td></tr>
            <tr><td>0x1538</td><td>VEHICLE_CLIMATE</td><td>Control climate</td></tr>
            <tr><td>0x1540</td><td>GEOFENCE_CREATE</td><td>Create geofence</td></tr>
            <tr><td>0x1541</td><td>GEOFENCE_GET</td><td>Get geofence</td></tr>
            <tr><td>0x1542</td><td>GEOFENCE_UPDATE</td><td>Update geofence</td></tr>
            <tr><td>0x1543</td><td>GEOFENCE_DELETE</td><td>Delete geofence</td></tr>
            <tr><td>0x1544</td><td>GEOFENCE_LIST</td><td>List geofences</td></tr>
            <tr><td>0x1545</td><td>GEOFENCE_TRIGGER</td><td>Geofence triggered event</td></tr>
            <tr><td>0x1550</td><td>HEALTH_ANALYTICS_TREND</td><td>Compute metric trend</td></tr>
            <tr><td>0x1551</td><td>HEALTH_ANALYTICS_SUMMARY</td><td>Compute health summary</td></tr>
            <tr><td>0x1552</td><td>HEALTH_ANALYTICS_CORRELATION</td><td>Air quality-health correlations</td></tr>
            <tr><td>0x1553</td><td>HEALTH_ANALYTICS_ANOMALIES</td><td>Detect metric anomalies</td></tr>
            <tr><td>0x1580</td><td>PROPERTY_ASSET_CREATE</td><td>Create asset</td></tr>
            <tr><td>0x1581</td><td>PROPERTY_ASSET_GET</td><td>Get asset details</td></tr>
            <tr><td>0x1582</td><td>PROPERTY_ASSET_UPDATE</td><td>Update asset</td></tr>
            <tr><td>0x1583</td><td>PROPERTY_ASSET_DELETE</td><td>Delete asset</td></tr>
            <tr><td>0x1584</td><td>PROPERTY_ASSET_LIST</td><td>List family assets</td></tr>
            <tr><td>0x1585</td><td>PROPERTY_ASSET_SEARCH</td><td>Search assets</td></tr>
            <tr><td>0x1590</td><td>PROPERTY_LOCATION_CREATE</td><td>Create location/room</td></tr>
            <tr><td>0x1591</td><td>PROPERTY_LOCATION_GET</td><td>Get location details</td></tr>
            <tr><td>0x1592</td><td>PROPERTY_LOCATION_UPDATE</td><td>Update location</td></tr>
            <tr><td>0x1593</td><td>PROPERTY_LOCATION_DELETE</td><td>Delete location</td></tr>
            <tr><td>0x1594</td><td>PROPERTY_LOCATION_LIST</td><td>List locations</td></tr>
            <tr><td>0x15A0</td><td>PROPERTY_MAINT_CREATE</td><td>Create maintenance task</td></tr>
            <tr><td>0x15A1</td><td>PROPERTY_MAINT_GET</td><td>Get maintenance task</td></tr>
            <tr><td>0x15A2</td><td>PROPERTY_MAINT_UPDATE</td><td>Update maintenance task</td></tr>
            <tr><td>0x15A3</td><td>PROPERTY_MAINT_DELETE</td><td>Delete maintenance task</td></tr>
            <tr><td>0x15A4</td><td>PROPERTY_MAINT_LIST</td><td>List maintenance tasks</td></tr>
            <tr><td>0x15A5</td><td>PROPERTY_MAINT_COMPLETE</td><td>Mark maintenance complete</td></tr>
            <tr><td>0x15B0</td><td>PROPERTY_DOC_CREATE</td><td>Create document</td></tr>
            <tr><td>0x15B1</td><td>PROPERTY_DOC_GET</td><td>Get document</td></tr>
            <tr><td>0x15B2</td><td>PROPERTY_DOC_DELETE</td><td>Delete document</td></tr>
            <tr><td>0x15B3</td><td>PROPERTY_DOC_LIST</td><td>List documents</td></tr>
            <tr><td>0x15C0</td><td>PROPERTY_VALUATION_ADD</td><td>Add valuation</td></tr>
            <tr><td>0x15C1</td><td>PROPERTY_VALUATION_LIST</td><td>List valuations</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-debug-plugins">
        <name>Debug, Testing &amp; Plugins (0x1600-0x16FF)</name>
        <table>
          <name>Debug, Testing &amp; Plugins Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x1600</td><td>DEBUG_ECHO</td><td>Echo request</td></tr>
            <tr><td>0x1601</td><td>DEBUG_DUMP</td><td>Dump state</td></tr>
            <tr><td>0x1602</td><td>DEBUG_LOG</td><td>Log message</td></tr>
            <tr><td>0x1603</td><td>DEBUG_TRACE</td><td>Start/stop tracing</td></tr>
            <tr><td>0x1604</td><td>DEBUG_STATS</td><td>Get debug statistics</td></tr>
            <tr><td>0x1605</td><td>DEBUG_CONFIG</td><td>Get/set debug config</td></tr>
            <tr><td>0x1610</td><td>PLUGIN_INSTALL</td><td>Install a plugin</td></tr>
            <tr><td>0x1611</td><td>PLUGIN_UNINSTALL</td><td>Uninstall a plugin</td></tr>
            <tr><td>0x1612</td><td>PLUGIN_START</td><td>Start a plugin</td></tr>
            <tr><td>0x1613</td><td>PLUGIN_STOP</td><td>Stop a plugin</td></tr>
            <tr><td>0x1614</td><td>PLUGIN_RESTART</td><td>Restart a plugin</td></tr>
            <tr><td>0x1615</td><td>PLUGIN_UPDATE</td><td>Update a plugin's WASM binary</td></tr>
            <tr><td>0x1618</td><td>PLUGIN_GET</td><td>Get plugin details</td></tr>
            <tr><td>0x1619</td><td>PLUGIN_LIST</td><td>List plugins</td></tr>
            <tr><td>0x161A</td><td>PLUGIN_GET_LOGS</td><td>Get plugin execution logs</td></tr>
            <tr><td>0x161B</td><td>PLUGIN_GET_USAGE</td><td>Get plugin resource usage</td></tr>
            <tr><td>0x1620</td><td>PLUGIN_PERM_GRANT</td><td>Grant a plugin permission</td></tr>
            <tr><td>0x1621</td><td>PLUGIN_PERM_REVOKE</td><td>Revoke a plugin permission</td></tr>
            <tr><td>0x1622</td><td>PLUGIN_PERM_LIST</td><td>List plugin permissions</td></tr>
            <tr><td>0x1624</td><td>PLUGIN_STORAGE_LIST</td><td>List plugin storage keys</td></tr>
            <tr><td>0x1625</td><td>PLUGIN_WIDGET_CREATE</td><td>Create a widget</td></tr>
            <tr><td>0x1626</td><td>PLUGIN_WIDGET_GET</td><td>Get widget details</td></tr>
            <tr><td>0x1627</td><td>PLUGIN_WIDGET_LIST</td><td>List plugin widgets</td></tr>
            <tr><td>0x1628</td><td>PLUGIN_WIDGET_DELETE</td><td>Delete a widget</td></tr>
            <tr><td>0x1629</td><td>PLUGIN_WIDGET_CONFIG_GET</td><td>Get user widget config</td></tr>
            <tr><td>0x162A</td><td>PLUGIN_WIDGET_CONFIG_SET</td><td>Set user widget config</td></tr>
            <tr><td>0x162B</td><td>PLUGIN_SUB_CREATE</td><td>Subscribe to event</td></tr>
            <tr><td>0x162C</td><td>PLUGIN_SUB_DELETE</td><td>Unsubscribe from event</td></tr>
            <tr><td>0x162D</td><td>PLUGIN_SUB_LIST</td><td>List subscriptions</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-mdm">
        <name>Mobile Device Management (MDM) (0x1700-0x17FF)</name>
        <table>
          <name>Mobile Device Management (MDM) Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x1700</td><td>M_D_M_DEVICE_LIST</td><td>List managed devices</td></tr>
            <tr><td>0x1701</td><td>M_D_M_DEVICE_GET</td><td>Get managed device</td></tr>
            <tr><td>0x1702</td><td>M_D_M_DEVICE_REGISTER</td><td>Register device for MDM</td></tr>
            <tr><td>0x1703</td><td>M_D_M_DEVICE_UNREGISTER</td><td>Unregister device from MDM</td></tr>
            <tr><td>0x1704</td><td>M_D_M_DEVICE_COMMAND</td><td>Send command to device</td></tr>
            <tr><td>0x1705</td><td>M_D_M_POLICY_GET</td><td>Get device policy</td></tr>
            <tr><td>0x1706</td><td>M_D_M_POLICY_SET</td><td>Set device policy</td></tr>
            <tr><td>0x1710</td><td>SCREEN_TIME_POLICY_GET</td><td>Get screen time policy</td></tr>
            <tr><td>0x1711</td><td>SCREEN_TIME_POLICY_SET</td><td>Set screen time policy</td></tr>
            <tr><td>0x1712</td><td>SCREEN_TIME_USAGE_TODAY</td><td>Get today's usage</td></tr>
            <tr><td>0x1713</td><td>SCREEN_TIME_USAGE_HISTORY</td><td>Get usage history</td></tr>
            <tr><td>0x1714</td><td>SCREEN_TIME_REQUEST_EXTRA</td><td>Request extra time</td></tr>
            <tr><td>0x1715</td><td>SCREEN_TIME_APPROVE_REQ</td><td>Approve/deny time request</td></tr>
            <tr><td>0x1716</td><td>SCREEN_TIME_GRANT_EXTRA</td><td>Grant extra time directly</td></tr>
            <tr><td>0x1717</td><td>SCREEN_TIME_PAUSE</td><td>Pause device</td></tr>
            <tr><td>0x1718</td><td>SCREEN_TIME_UNPAUSE</td><td>Unpause device</td></tr>
            <tr><td>0x1719</td><td>SCREEN_TIME_PENDING_REQS</td><td>List pending time requests</td></tr>
            <tr><td>0x1720</td><td>M_D_M_LOCATION_POLICY_GET</td><td>Get MDM location policy</td></tr>
            <tr><td>0x1721</td><td>M_D_M_LOCATION_POLICY_SET</td><td>Set MDM location policy</td></tr>
            <tr><td>0x1722</td><td>M_D_M_LOCATION_CURRENT_GET</td><td>Get current device location</td></tr>
            <tr><td>0x1723</td><td>M_D_M_LOCATION_HISTORY</td><td>Get device location history</td></tr>
            <tr><td>0x1724</td><td>M_D_M_LOCATION_REQUEST</td><td>Request device location update</td></tr>
            <tr><td>0x1730</td><td>M_D_M_GEOFENCE_CREATE</td><td>Create MDM geofence</td></tr>
            <tr><td>0x1731</td><td>M_D_M_GEOFENCE_UPDATE</td><td>Update MDM geofence</td></tr>
            <tr><td>0x1732</td><td>M_D_M_GEOFENCE_DELETE</td><td>Delete MDM geofence</td></tr>
            <tr><td>0x1733</td><td>M_D_M_GEOFENCE_LIST</td><td>List MDM geofences</td></tr>
            <tr><td>0x1740</td><td>M_D_M_APP_POLICY_GET</td><td>Get MDM app policy</td></tr>
            <tr><td>0x1741</td><td>M_D_M_APP_POLICY_SET</td><td>Set MDM app policy</td></tr>
            <tr><td>0x1742</td><td>M_D_M_APP_CATALOG_LIST</td><td>List MDM app catalog</td></tr>
            <tr><td>0x1743</td><td>M_D_M_APP_CATALOG_ADD</td><td>Add to MDM app catalog</td></tr>
            <tr><td>0x1744</td><td>M_D_M_APP_INSTALL_REQUEST</td><td>Request MDM app install</td></tr>
            <tr><td>0x1745</td><td>M_D_M_APP_INSTALL_APPROVE</td><td>Approve MDM app install</td></tr>
            <tr><td>0x1746</td><td>M_D_M_APP_INSTALLED_LIST</td><td>List MDM installed apps</td></tr>
            <tr><td>0x1750</td><td>M_D_M_KIOSK_ENABLE</td><td>Enable MDM kiosk mode</td></tr>
            <tr><td>0x1751</td><td>M_D_M_KIOSK_DISABLE</td><td>Disable MDM kiosk mode</td></tr>
            <tr><td>0x1760</td><td>M_D_M_PRIVILEGE_POINTS_GET</td><td>Get MDM privilege points</td></tr>
            <tr><td>0x1761</td><td>M_D_M_PRIVILEGE_POINTS_AWARD</td><td>Award MDM privilege points</td></tr>
            <tr><td>0x1762</td><td>M_D_M_PRIVILEGE_LIST_AVAILABLE</td><td>List available MDM privileges</td></tr>
            <tr><td>0x1763</td><td>M_D_M_PRIVILEGE_UNLOCK</td><td>Unlock MDM privilege</td></tr>
            <tr><td>0x1764</td><td>M_D_M_PRIVILEGE_REVOKE</td><td>Revoke MDM privilege</td></tr>
            <tr><td>0x1765</td><td>M_D_M_PRIVILEGE_CHILD_STATUS</td><td>Get MDM child status</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-legal-documents">
        <name>Legal Documents &amp; Care Directives (0x1800-0x18FF)</name>
        <table>
          <name>Legal Documents &amp; Care Directives Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x1800</td><td>LEGAL_DOC_CREATE</td><td>Create legal document</td></tr>
            <tr><td>0x1801</td><td>LEGAL_DOC_GET</td><td>Get legal document</td></tr>
            <tr><td>0x1802</td><td>LEGAL_DOC_UPDATE</td><td>Update legal document</td></tr>
            <tr><td>0x1803</td><td>LEGAL_DOC_DELETE</td><td>Delete legal document</td></tr>
            <tr><td>0x1804</td><td>LEGAL_DOC_LIST</td><td>List legal documents</td></tr>
            <tr><td>0x1808</td><td>LEGAL_VERSION_LIST</td><td>List document versions</td></tr>
            <tr><td>0x1809</td><td>LEGAL_VERSION_GET</td><td>Get specific version</td></tr>
            <tr><td>0x180A</td><td>LEGAL_VERSION_RESTORE</td><td>Restore document to version</td></tr>
            <tr><td>0x1810</td><td>LEGAL_ACCESS_GRANT</td><td>Grant document access</td></tr>
            <tr><td>0x1811</td><td>LEGAL_ACCESS_REVOKE</td><td>Revoke document access</td></tr>
            <tr><td>0x1812</td><td>LEGAL_ACCESS_LIST</td><td>List document access grants</td></tr>
            <tr><td>0x1813</td><td>LEGAL_ACCESS_CHECK</td><td>Check access for user</td></tr>
            <tr><td>0x1818</td><td>LEGAL_SHARE_CREATE</td><td>Create Shamir shares</td></tr>
            <tr><td>0x1819</td><td>LEGAL_SHARE_LIST</td><td>List shares for document</td></tr>
            <tr><td>0x181A</td><td>LEGAL_SHARE_VERIFY</td><td>Verify share holder access</td></tr>
            <tr><td>0x181B</td><td>LEGAL_SHARE_RECOVER</td><td>Recover document from shares</td></tr>
            <tr><td>0x1820</td><td>LEGAL_EXT_SHARE_CREATE</td><td>Create external share link</td></tr>
            <tr><td>0x1821</td><td>LEGAL_EXT_SHARE_REVOKE</td><td>Revoke external share</td></tr>
            <tr><td>0x1822</td><td>LEGAL_EXT_SHARE_LIST</td><td>List external shares</td></tr>
            <tr><td>0x1823</td><td>LEGAL_EXT_SHARE_ACCESS</td><td>Access via external share</td></tr>
            <tr><td>0x1828</td><td>LEGAL_REMINDER_CREATE</td><td>Create reminder</td></tr>
            <tr><td>0x1829</td><td>LEGAL_REMINDER_UPDATE</td><td>Update reminder</td></tr>
            <tr><td>0x182A</td><td>LEGAL_REMINDER_DELETE</td><td>Delete reminder</td></tr>
            <tr><td>0x182B</td><td>LEGAL_REMINDER_LIST</td><td>List reminders</td></tr>
            <tr><td>0x182C</td><td>LEGAL_REMINDER_SNOOZE</td><td>Snooze reminder</td></tr>
            <tr><td>0x182D</td><td>LEGAL_REMINDER_COMPLETE</td><td>Mark reminder complete</td></tr>
            <tr><td>0x1830</td><td>LEGAL_AUDIT_LIST</td><td>List audit entries</td></tr>
            <tr><td>0x1838</td><td>LEGAL_ACCOUNT_CREATE</td><td>Add digital account</td></tr>
            <tr><td>0x1839</td><td>LEGAL_ACCOUNT_UPDATE</td><td>Update digital account</td></tr>
            <tr><td>0x183A</td><td>LEGAL_ACCOUNT_DELETE</td><td>Delete digital account</td></tr>
            <tr><td>0x183B</td><td>LEGAL_ACCOUNT_LIST</td><td>List digital accounts</td></tr>
            <tr><td>0x1840</td><td>LEGAL_TEMPLATE_LIST</td><td>List document templates</td></tr>
            <tr><td>0x1841</td><td>LEGAL_TEMPLATE_GET</td><td>Get document template</td></tr>
            <tr><td>0x1848</td><td>LEGAL_EMERGENCY_REQUEST</td><td>Request emergency access</td></tr>
            <tr><td>0x1849</td><td>LEGAL_EMERGENCY_APPROVE</td><td>Approve emergency access</td></tr>
            <tr><td>0x184A</td><td>LEGAL_EMERGENCY_DENY</td><td>Deny emergency access</td></tr>
            <tr><td>0x184B</td><td>LEGAL_EMERGENCY_CHECK</td><td>Check emergency access status</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-mobility-vehicle">
        <name>Mobility &amp; Vehicle Management (0x1900-0x19FF)</name>
        <table>
          <name>Mobility &amp; Vehicle Management Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x1900</td><td>MOBILITY_VEHICLE_CREATE</td><td>Create vehicle</td></tr>
            <tr><td>0x1901</td><td>MOBILITY_VEHICLE_GET</td><td>Get vehicle</td></tr>
            <tr><td>0x1902</td><td>MOBILITY_VEHICLE_UPDATE</td><td>Update vehicle</td></tr>
            <tr><td>0x1903</td><td>MOBILITY_VEHICLE_DELETE</td><td>Delete vehicle</td></tr>
            <tr><td>0x1904</td><td>MOBILITY_VEHICLE_LIST</td><td>List family vehicles</td></tr>
            <tr><td>0x1908</td><td>MOBILITY_MAINT_CREATE</td><td>Create maintenance entry</td></tr>
            <tr><td>0x1909</td><td>MOBILITY_MAINT_GET</td><td>Get maintenance entry</td></tr>
            <tr><td>0x190A</td><td>MOBILITY_MAINT_UPDATE</td><td>Update maintenance entry</td></tr>
            <tr><td>0x190B</td><td>MOBILITY_MAINT_DELETE</td><td>Delete maintenance entry</td></tr>
            <tr><td>0x190C</td><td>MOBILITY_MAINT_LIST</td><td>List maintenance for vehicle</td></tr>
            <tr><td>0x190D</td><td>MOBILITY_MAINT_COMPLETE</td><td>Mark maintenance complete</td></tr>
            <tr><td>0x1910</td><td>MOBILITY_FUEL_ADD</td><td>Add fuel/charge entry</td></tr>
            <tr><td>0x1911</td><td>MOBILITY_FUEL_DELETE</td><td>Delete fuel entry</td></tr>
            <tr><td>0x1912</td><td>MOBILITY_FUEL_LIST</td><td>List fuel entries</td></tr>
            <tr><td>0x1913</td><td>MOBILITY_FUEL_STATS</td><td>Get fuel statistics</td></tr>
            <tr><td>0x1918</td><td>MOBILITY_BOOKING_CREATE</td><td>Create booking</td></tr>
            <tr><td>0x1919</td><td>MOBILITY_BOOKING_GET</td><td>Get booking</td></tr>
            <tr><td>0x191A</td><td>MOBILITY_BOOKING_UPDATE</td><td>Update booking</td></tr>
            <tr><td>0x191B</td><td>MOBILITY_BOOKING_DELETE</td><td>Delete booking</td></tr>
            <tr><td>0x191C</td><td>MOBILITY_BOOKING_LIST</td><td>List bookings</td></tr>
            <tr><td>0x191D</td><td>MOBILITY_BOOKING_CONFLICTS</td><td>Check booking conflicts</td></tr>
            <tr><td>0x1920</td><td>MOBILITY_CARPOOL_CREATE</td><td>Create carpool</td></tr>
            <tr><td>0x1921</td><td>MOBILITY_CARPOOL_GET</td><td>Get carpool</td></tr>
            <tr><td>0x1922</td><td>MOBILITY_CARPOOL_UPDATE</td><td>Update carpool</td></tr>
            <tr><td>0x1923</td><td>MOBILITY_CARPOOL_DELETE</td><td>Delete carpool</td></tr>
            <tr><td>0x1924</td><td>MOBILITY_CARPOOL_LIST</td><td>List carpools</td></tr>
            <tr><td>0x1925</td><td>MOBILITY_CARPOOL_JOIN</td><td>Join carpool</td></tr>
            <tr><td>0x1926</td><td>MOBILITY_CARPOOL_LEAVE</td><td>Leave carpool</td></tr>
            <tr><td>0x1927</td><td>MOBILITY_CARPOOL_ROTATION</td><td>Get/advance rotation</td></tr>
            <tr><td>0x1930</td><td>MOBILITY_TRIP_CREATE</td><td>Create trip entry</td></tr>
            <tr><td>0x1931</td><td>MOBILITY_TRIP_GET</td><td>Get trip entry</td></tr>
            <tr><td>0x1932</td><td>MOBILITY_TRIP_UPDATE</td><td>Update trip entry</td></tr>
            <tr><td>0x1933</td><td>MOBILITY_TRIP_DELETE</td><td>Delete trip entry</td></tr>
            <tr><td>0x1934</td><td>MOBILITY_TRIP_LIST</td><td>List trips</td></tr>
            <tr><td>0x1935</td><td>MOBILITY_TRIP_STATS</td><td>Get trip statistics</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-travel-vacation">
        <name>Travel &amp; Vacation (0x1A00-0x1AFF)</name>
        <table>
          <name>Travel &amp; Vacation Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x1A00</td><td>TRAVEL_TRIP_CREATE</td><td>Create trip</td></tr>
            <tr><td>0x1A01</td><td>TRAVEL_TRIP_GET</td><td>Get trip</td></tr>
            <tr><td>0x1A02</td><td>TRAVEL_TRIP_UPDATE</td><td>Update trip</td></tr>
            <tr><td>0x1A03</td><td>TRAVEL_TRIP_DELETE</td><td>Delete trip</td></tr>
            <tr><td>0x1A04</td><td>TRAVEL_TRIP_LIST</td><td>List trips</td></tr>
            <tr><td>0x1A08</td><td>TRAVEL_DEST_CREATE</td><td>Add destination to trip</td></tr>
            <tr><td>0x1A09</td><td>TRAVEL_DEST_GET</td><td>Get destination</td></tr>
            <tr><td>0x1A0A</td><td>TRAVEL_DEST_UPDATE</td><td>Update destination</td></tr>
            <tr><td>0x1A0B</td><td>TRAVEL_DEST_DELETE</td><td>Remove destination</td></tr>
            <tr><td>0x1A0C</td><td>TRAVEL_DEST_LIST</td><td>List destinations for trip</td></tr>
            <tr><td>0x1A10</td><td>TRAVEL_BOOKING_CREATE</td><td>Create booking</td></tr>
            <tr><td>0x1A11</td><td>TRAVEL_BOOKING_GET</td><td>Get booking</td></tr>
            <tr><td>0x1A12</td><td>TRAVEL_BOOKING_UPDATE</td><td>Update booking</td></tr>
            <tr><td>0x1A13</td><td>TRAVEL_BOOKING_DELETE</td><td>Delete booking</td></tr>
            <tr><td>0x1A14</td><td>TRAVEL_BOOKING_LIST</td><td>List bookings for trip</td></tr>
            <tr><td>0x1A15</td><td>TRAVEL_BOOKING_STATS</td><td>Get booking cost summary</td></tr>
            <tr><td>0x1A18</td><td>TRAVEL_PACK_LIST_CREATE</td><td>Create packing list</td></tr>
            <tr><td>0x1A19</td><td>TRAVEL_PACK_LIST_GET</td><td>Get packing list</td></tr>
            <tr><td>0x1A1A</td><td>TRAVEL_PACK_LIST_DELETE</td><td>Delete packing list</td></tr>
            <tr><td>0x1A1B</td><td>TRAVEL_PACK_ITEM_ADD</td><td>Add item to list</td></tr>
            <tr><td>0x1A1C</td><td>TRAVEL_PACK_ITEM_REMOVE</td><td>Remove item</td></tr>
            <tr><td>0x1A1D</td><td>TRAVEL_PACK_ITEM_TOGGLE</td><td>Toggle packed status</td></tr>
            <tr><td>0x1A1E</td><td>TRAVEL_PACK_LIST_LIST</td><td>List packing lists for trip</td></tr>
            <tr><td>0x1A20</td><td>TRAVEL_BUDGET_SET</td><td>Set trip budget</td></tr>
            <tr><td>0x1A21</td><td>TRAVEL_BUDGET_GET</td><td>Get trip budget</td></tr>
            <tr><td>0x1A22</td><td>TRAVEL_EXPENSE_ADD</td><td>Add expense</td></tr>
            <tr><td>0x1A23</td><td>TRAVEL_EXPENSE_UPDATE</td><td>Update expense</td></tr>
            <tr><td>0x1A24</td><td>TRAVEL_EXPENSE_DELETE</td><td>Delete expense</td></tr>
            <tr><td>0x1A25</td><td>TRAVEL_EXPENSE_LIST</td><td>List expenses</td></tr>
            <tr><td>0x1A28</td><td>TRAVEL_DOC_CREATE</td><td>Add travel document</td></tr>
            <tr><td>0x1A29</td><td>TRAVEL_DOC_UPDATE</td><td>Update travel document</td></tr>
            <tr><td>0x1A2A</td><td>TRAVEL_DOC_DELETE</td><td>Delete travel document</td></tr>
            <tr><td>0x1A2B</td><td>TRAVEL_DOC_LIST</td><td>List travel documents</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-audit-compliance">
        <name>Audit &amp; Compliance (0x1B00-0x1BFF)</name>
        <table>
          <name>Audit &amp; Compliance Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x1B00</td><td>AUDIT_LOG_QUERY</td><td>Query audit log entries</td></tr>
            <tr><td>0x1B01</td><td>AUDIT_LOG_EXPORT</td><td>Export audit log (CSV/JSON)</td></tr>
            <tr><td>0x1B02</td><td>AUDIT_LOG_STATS</td><td>Get audit statistics</td></tr>
            <tr><td>0x1B03</td><td>AUDIT_LOG_PURGE</td><td>Purge old audit entries</td></tr>
            <tr><td>0x1B04</td><td>AUDIT_LOG_DETAIL</td><td>Get single audit entry detail</td></tr>
            <tr><td>0x1B08</td><td>RETENTION_POLICY_CREATE</td><td>Create retention policy</td></tr>
            <tr><td>0x1B09</td><td>RETENTION_POLICY_GET</td><td>Get retention policy</td></tr>
            <tr><td>0x1B0A</td><td>RETENTION_POLICY_UPDATE</td><td>Update retention policy</td></tr>
            <tr><td>0x1B0B</td><td>RETENTION_POLICY_DELETE</td><td>Delete retention policy</td></tr>
            <tr><td>0x1B0C</td><td>RETENTION_POLICY_LIST</td><td>List retention policies</td></tr>
            <tr><td>0x1B0D</td><td>RETENTION_POLICY_RUN</td><td>Run retention policy now</td></tr>
            <tr><td>0x1B10</td><td>G_D_P_R_EXPORT_REQUEST</td><td>Request data export (Art. 15)</td></tr>
            <tr><td>0x1B11</td><td>G_D_P_R_EXPORT_STATUS</td><td>Check export status</td></tr>
            <tr><td>0x1B12</td><td>G_D_P_R_EXPORT_DOWNLOAD</td><td>Download export</td></tr>
            <tr><td>0x1B13</td><td>G_D_P_R_DELETE_REQUEST</td><td>Request data deletion (Art. 17)</td></tr>
            <tr><td>0x1B14</td><td>G_D_P_R_DELETE_STATUS</td><td>Check deletion status</td></tr>
            <tr><td>0x1B15</td><td>G_D_P_R_CONSENT_LIST</td><td>List user consents</td></tr>
            <tr><td>0x1B18</td><td>COMPLIANCE_REPORT_GENERATE</td><td>Generate compliance report</td></tr>
            <tr><td>0x1B19</td><td>COMPLIANCE_REPORT_GET</td><td>Get report</td></tr>
            <tr><td>0x1B1A</td><td>COMPLIANCE_REPORT_LIST</td><td>List reports</td></tr>
            <tr><td>0x1B1B</td><td>COMPLIANCE_REPORT_DELETE</td><td>Delete report</td></tr>
            <tr><td>0x1B20</td><td>ACCESS_REVIEW_CREATE</td><td>Create access review</td></tr>
            <tr><td>0x1B21</td><td>ACCESS_REVIEW_GET</td><td>Get access review</td></tr>
            <tr><td>0x1B22</td><td>ACCESS_REVIEW_UPDATE</td><td>Update review (approve/deny)</td></tr>
            <tr><td>0x1B23</td><td>ACCESS_REVIEW_LIST</td><td>List reviews</td></tr>
            <tr><td>0x1B24</td><td>ACCESS_REVIEW_COMPLETE</td><td>Complete review cycle</td></tr>
            <tr><td>0x1B25</td><td>ACCESS_REVIEW_SCHEDULE</td><td>Schedule periodic review</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-audio-pipeline">
        <name>Audio Pipeline (0x1C00-0x1CFF)</name>
        <table>
          <name>Audio Pipeline Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x1C00</td><td>AUDIO_ZONE_CREATE</td><td>Create audio zone</td></tr>
            <tr><td>0x1C01</td><td>AUDIO_ZONE_GET</td><td>Get audio zone</td></tr>
            <tr><td>0x1C02</td><td>AUDIO_ZONE_UPDATE</td><td>Update audio zone</td></tr>
            <tr><td>0x1C03</td><td>AUDIO_ZONE_DELETE</td><td>Delete audio zone</td></tr>
            <tr><td>0x1C04</td><td>AUDIO_ZONE_LIST</td><td>List zones by family</td></tr>
            <tr><td>0x1C05</td><td>AUDIO_ZONE_LIST_BY_TYPE</td><td>List zones by type</td></tr>
            <tr><td>0x1C06</td><td>AUDIO_ZONE_ADD_NODE</td><td>Add node to zone</td></tr>
            <tr><td>0x1C07</td><td>AUDIO_ZONE_REMOVE_NODE</td><td>Remove node from zone</td></tr>
            <tr><td>0x1C08</td><td>AUDIO_ZONE_SET_MASTER</td><td>Set zone master node</td></tr>
            <tr><td>0x1C09</td><td>AUDIO_ZONE_SET_VOLUME</td><td>Set zone volume</td></tr>
            <tr><td>0x1C0A</td><td>AUDIO_ZONE_SET_MUTE</td><td>Set zone mute state</td></tr>
            <tr><td>0x1C10</td><td>AUDIO_NODE_REGISTER</td><td>Register audio node</td></tr>
            <tr><td>0x1C11</td><td>AUDIO_NODE_GET</td><td>Get audio node</td></tr>
            <tr><td>0x1C12</td><td>AUDIO_NODE_GET_BY_DEVICE</td><td>Get node by device ID</td></tr>
            <tr><td>0x1C13</td><td>AUDIO_NODE_UPDATE</td><td>Update audio node</td></tr>
            <tr><td>0x1C14</td><td>AUDIO_NODE_DELETE</td><td>Delete audio node</td></tr>
            <tr><td>0x1C15</td><td>AUDIO_NODE_LIST</td><td>List nodes by family</td></tr>
            <tr><td>0x1C16</td><td>AUDIO_NODE_LIST_BY_ZONE</td><td>List nodes in zone</td></tr>
            <tr><td>0x1C17</td><td>AUDIO_NODE_LIST_BY_ROOM</td><td>List nodes in room</td></tr>
            <tr><td>0x1C18</td><td>AUDIO_NODE_LIST_ONLINE</td><td>List online nodes</td></tr>
            <tr><td>0x1C19</td><td>AUDIO_NODE_UPDATE_STATUS</td><td>Update node status</td></tr>
            <tr><td>0x1C1A</td><td>AUDIO_NODE_HEARTBEAT</td><td>Node heartbeat</td></tr>
            <tr><td>0x1C1B</td><td>AUDIO_NODE_SET_ZONE</td><td>Assign node to zone</td></tr>
            <tr><td>0x1C1C</td><td>AUDIO_NODE_SET_VOLUME</td><td>Set node volume</td></tr>
            <tr><td>0x1C20</td><td>AUDIO_STREAM_CREATE</td><td>Create audio stream</td></tr>
            <tr><td>0x1C21</td><td>AUDIO_STREAM_GET</td><td>Get audio stream</td></tr>
            <tr><td>0x1C22</td><td>AUDIO_STREAM_UPDATE</td><td>Update audio stream</td></tr>
            <tr><td>0x1C23</td><td>AUDIO_STREAM_DELETE</td><td>Delete audio stream</td></tr>
            <tr><td>0x1C24</td><td>AUDIO_STREAM_LIST_ZONE</td><td>List streams in zone</td></tr>
            <tr><td>0x1C25</td><td>AUDIO_STREAM_LIST_STATE</td><td>List streams by state</td></tr>
            <tr><td>0x1C26</td><td>AUDIO_STREAM_ACTIVE</td><td>List active streams in zone</td></tr>
            <tr><td>0x1C27</td><td>AUDIO_STREAM_SET_STATE</td><td>Update stream state</td></tr>
            <tr><td>0x1C28</td><td>AUDIO_STREAM_SET_POS</td><td>Update stream position</td></tr>
            <tr><td>0x1C29</td><td>AUDIO_STREAM_PURGE</td><td>Purge old streams</td></tr>
            <tr><td>0x1C2A</td><td>AUDIO_STREAM_CONTROL</td><td>Stream control (play/pause/stop/seek)</td></tr>
            <tr><td>0x1C2B</td><td>AUDIO_STREAM_VOLUME</td><td>Set stream volume</td></tr>
            <tr><td>0x1C30</td><td>AUDIO_T_T_S_CACHE_GET</td><td>Get TTS cache entry</td></tr>
            <tr><td>0x1C31</td><td>AUDIO_T_T_S_CACHE_BY_VOICE</td><td>List cache by voice</td></tr>
            <tr><td>0x1C32</td><td>AUDIO_T_T_S_CACHE_ACCESS</td><td>Update cache access</td></tr>
            <tr><td>0x1C33</td><td>AUDIO_T_T_S_CACHE_DELETE</td><td>Delete cache entry</td></tr>
            <tr><td>0x1C34</td><td>AUDIO_T_T_S_CACHE_PURGE</td><td>Purge old cache entries</td></tr>
            <tr><td>0x1C35</td><td>AUDIO_T_T_S_CACHE_STATS</td><td>Get cache statistics</td></tr>
            <tr><td>0x1C36</td><td>AUDIO_T_T_S_CACHE_CREATE</td><td>Create cache entry</td></tr>
            <tr><td>0x1C40</td><td>AUDIO_TRANS_CREATE</td><td>Create transcription</td></tr>
            <tr><td>0x1C41</td><td>AUDIO_TRANS_GET</td><td>Get transcription</td></tr>
            <tr><td>0x1C42</td><td>AUDIO_TRANS_LIST_BY_USER</td><td>List transcriptions by user</td></tr>
            <tr><td>0x1C43</td><td>AUDIO_TRANS_LIST_BY_FAMILY</td><td>List transcriptions by family</td></tr>
            <tr><td>0x1C44</td><td>AUDIO_TRANS_LIST_BY_NODE</td><td>List transcriptions by node</td></tr>
            <tr><td>0x1C45</td><td>AUDIO_TRANS_DELETE</td><td>Delete transcription</td></tr>
            <tr><td>0x1C46</td><td>AUDIO_TRANS_PURGE</td><td>Purge old transcriptions</td></tr>
            <tr><td>0x1C50</td><td>AUDIO_VOICE_EVENT_CREATE</td><td>Create voice event</td></tr>
            <tr><td>0x1C51</td><td>AUDIO_VOICE_EVENT_LIST_BY_NODE</td><td>List voice events by node</td></tr>
            <tr><td>0x1C52</td><td>AUDIO_VOICE_EVENT_LIST_BY_TYPE</td><td>List voice events by type</td></tr>
            <tr><td>0x1C53</td><td>AUDIO_VOICE_EVENT_PURGE</td><td>Purge old voice events</td></tr>
          </tbody>
        </table>
      </section>

      <section anchor="ops-desktop-client">
        <name>Desktop Client (0x1D00-0x1DFF)</name>
        <table>
          <name>Desktop Client Operations</name>
          <thead>
            <tr><th>OpCode</th><th>Name</th><th>Description</th></tr>
          </thead>
          <tbody>
            <tr><td>0x1D00</td><td>DESKTOP_STATUS</td><td>Get desktop client status</td></tr>
            <tr><td>0x1D01</td><td>DESKTOP_CONNECT</td><td>Connect to server</td></tr>
            <tr><td>0x1D02</td><td>DESKTOP_DISCONNECT</td><td>Disconnect from server</td></tr>
            <tr><td>0x1D03</td><td>DESKTOP_TRAY_STATUS</td><td>Get/set tray status</td></tr>
            <tr><td>0x1D04</td><td>DESKTOP_NOTIFY</td><td>Send desktop notification</td></tr>
            <tr><td>0x1D10</td><td>DESKTOP_UPDATE_CHECK</td><td>Check for updates</td></tr>
            <tr><td>0x1D11</td><td>DESKTOP_UPDATE_STATUS</td><td>Get update status</td></tr>
            <tr><td>0x1D20</td><td>DESKTOP_CONFIG_GET</td><td>Get desktop config</td></tr>
            <tr><td>0x1D21</td><td>DESKTOP_CONFIG_SET</td><td>Set desktop config</td></tr>
            <tr><td>0x1D22</td><td>DESKTOP_HOTKEY_LIST</td><td>List registered hotkeys</td></tr>
          </tbody>
        </table>
      </section>

    </section>

    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>
        The operation codes defined in this document are registered in the
        "MyClerk Protocol Operation Codes" registry established by
        <xref target="MYCLERK-CORE"/>.
      </t>
      <t>
        Registration of new operation codes within the 0x0700-0x1DFF range
        follows the Expert Review policy per <xref target="RFC8126"/>.
      </t>
    </section>

    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>
        All security considerations from <xref target="MYCLERK-CORE"/>
        apply. Operations in this document inherit the tiered security
        model and MUST be transmitted at or above the minimum tier
        specified for each operation category.
      </t>
      <t>
        Operations handling sensitive data (health records, location
        history, financial data, legal documents) SHOULD use Tier 4 or
        Tier 5 for maximum protection.
      </t>
    </section>

  </middle>

  <back>
    <references>
      <name>References</name>

      <references>
        <name>Normative References</name>
        &RFC2119;
        &RFC8174;
        &RFC8126;

        <reference anchor="MYCLERK-CORE">
          <front>
            <title>The MyClerk Protocol: Tiered Security Communication for Distributed Family Systems</title>
            <author fullname="Michael J. Arcan" initials="M.J." surname="Arcan">
              <organization>Arcan Consulting</organization>
            </author>
            <date year="2026"/>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-myclerk-protocol-03"/>
        </reference>
      </references>
    </references>
  </back>

</rfc>
