================================================================================
INITIALIZATION FOR Onset HOBOlink (hobolink)
================================================================================

--- INPUT PROMPT ---

You are responsible for initializing realistic resource data for a component.

<environment>
A dryland research facility monitoring soil moisture, ephemeral pools, and reptile populations
</environment>

<user_role>
A herpetologist tracking sidewinder rattlesnake movements
</user_role>

<all_available_components>
Components in this environment:
- movebank (Movebank): movebank_list_animals, movebank_get_tracks, movebank_upload_track, movebank_attach_tag_to_animal, movebank_summarize_and_flag_outliers
- hobolink (Onset HOBOlink): hobolink_list_loggers, hobolink_get_time_series, hobolink_create_or_update_alarm, hobolink_append_series_annotation, hobolink_summarize_series_and_flag_anomalies
</all_available_components>

<component_to_initialize>
Initialize THIS component: Onset HOBOlink (hobolink)

Resources this component manages:
  - logger: A HOBO data logger device registered in HOBOlink, including descriptive metadata.
    Fields: logger_id, name, location_description, metadata
  - time_series: A sensor data stream from a logger with its data as CSV text and any annotations.
    Fields: series_id, logger_id, sensor, data_csv, annotations
  - alarm_rule: An alert rule configured for a logger sensor, including a human-readable condition and message.
    Fields: rule_id, logger_id, sensor, condition, message

Tools available for this component:
  - hobolink_list_loggers
  - hobolink_get_time_series
  - hobolink_create_or_update_alarm
  - hobolink_append_series_annotation
  - hobolink_summarize_series_and_flag_anomalies

NOTE: Other components will be initialized separately. Focus only on this component's resources.
</component_to_initialize>

<task>
Create realistic, initial resource data for "Onset HOBOlink" that would exist in this environment.

Look at:
1. The resources this component defines and their fields
2. The tools that will operate on these resources
3. The environment domain and user role
4. Other components available (for context and cross-references)

Then create realistic, structured data that:
- Represents a typical, lived-in system (not empty or minimal)
- Includes multiple entities with varied states
- Has realistic background data (not just one example)
- Uses plausible values for the domain (realistic names, IDs, statuses)
- Could reference entities from other components if relevant

Example (SLURM component with resources "jobs" and "queue"):

BAD (minimal):
{
  "jobs": {
    "job_1": {"job_id": "12345", "status": "running"}
  }
}

GOOD (realistic):
{
  "jobs": {
    "job_12847": {
      "job_id": "12847",
      "user": "swagner",
      "status": "running",
      "partition": "compute"
    },
    "job_12843": {
      "job_id": "12843",
      "user": "jchen",
      "status": "running",
      "partition": "gpu"
    },
    "job_12848": {
      "job_id": "12848",
      "user": "mrodriguez",
      "status": "pending",
      "partition": "compute"
    }
  },
  "queue": {
    "compute": {
      "name": "compute",
      "total_nodes": 32,
      "available": 28
    },
    "gpu": {
      "name": "gpu",
      "total_nodes": 8,
      "available": 7
    }
  }
}

IMPORTANT:
- Use the resource structure and fields defined by this component
- Create realistic, lived-in system states with multiple entities (vary between 10-25 entities per resource type - some resources can be sparse, others can be rich)
- RANDOMIZE the number of entities for each resource type - don't use the same count for everything
- Add contextual details (varied statuses, recent activity, realistic patterns)
- Return structured JSON data, NOT natural language descriptions
- Use realistic names, IDs, and values appropriate for the domain

CRITICAL - ALWAYS INCLUDE DETAILED, ACTUAL READABLE CONTENT:
- ALL resource data MUST contain DETAILED, ACTUAL READABLE CONTENT that agents can use
- Content must be SPECIFIC and REALISTIC - include real data, actual numbers, concrete details
- NEVER be lazy by only providing paths/URLs without content - this makes the data completely unusable
- NEVER use vague placeholders like "..." or "sample data here" - write out the full realistic content
- Paths/URLs are optional metadata, but if included, you MUST also include the detailed actual content

GOOD examples (detailed content is present):
- {"content": "Dear Sarah, I'm writing to confirm our upcoming meeting in the Oak conference room. Looking forward to discussing the quarterly budget proposal and staffing changes. Please bring the department head approvals we discussed recently."}
- {"file_path": "/docs/quarterly_report.pdf", "content": "Quarterly Revenue Analysis: Total revenue reached $2.4M, representing a 15% increase compared to last quarter ($2.08M). Key drivers included: Enterprise sales (+$180K), new product launches (+$95K), and subscription renewals (+$67K). Operating expenses were $1.8M, yielding a net profit margin of 25%."}
- {"body": "Patient John Smith (ID: P-4782) presents with acute respiratory symptoms including persistent cough, fever of 101.2°F, and fatigue for 3 days. Rapid antigen test negative. Diagnosis: likely viral upper respiratory infection. Treatment plan: rest, increased fluids (2-3L daily), acetaminophen 500mg every 6 hours for fever, follow-up in 5 days if symptoms worsen."}
- {"data": "Call Analysis Results:\nCall_047: Duration 8m 23s, Frequency range 15-45kHz, Peak intensity at 28kHz, Prey detection success: 7/10 attempts\nCall_048: Duration 12m 01s, Frequency range 18-52kHz, Peak intensity at 35kHz, Prey detection success: 9/10 attempts\nCall_049: Duration 6m 47s, Frequency range 12-38kHz, Peak intensity at 25kHz, Prey detection success: 5/10 attempts", "dataset_name": "vampire_bat_social_calls_batch_7"}

BAD examples (lazy initialization, no usable content):
- {"file_path": "/documents/email_archive.txt"} - NO CONTENT! Useless!
- {"url": "https://example.com/email"} - NO CONTENT! Useless!
- {"medical_record_url": "http://emr.hospital.com/patient/12345"} - NO CONTENT! Useless!
- {"root_path": "/projects/rnaseq_study/release_v1/"} - NO CONTENT! Useless!
- {"content": "Some email text here..."} - TOO VAGUE! Not detailed enough!
- {"data": "Sample data for experiments"} - TOO VAGUE! No actual data!

Content must be DETAILED and SPECIFIC:
- Emails/messages: 3-5 full sentences with specific details (names, numbers, concrete information)
- Documents/reports: 2-4 full paragraphs with real data, statistics, concrete findings
- Data/datasets: Actual data points, real measurements, specific values (not summaries or descriptions)
- Include realistic proper nouns, specific numbers, technical details appropriate to the domain
- CRITICAL: DO NOT include any dates, years, months, timestamps, or time-related information. No "2024", "2025", "January", "Q4 2024", "nov_2024", etc. Use generic references like "recent", "last quarter", or omit time references entirely. This is extremely important.
- Make it dense with information that agents can actually work with
</task>

<response_format>
Respond with a JSON object where:
- Keys are resource types (from component resource definitions)
- Values are structured data matching the resource fields

{
  "resource_type_1": {
    "entity_id_1": {"field1": "value", "field2": "value", ...},
    "entity_id_2": {"field1": "value", "field2": "value", ...}
  },
  "resource_type_2": {...}
}

Only respond with the JSON object, nothing else.
</response_format>

--- OUTPUT ---

{
  "logger": {
    "HL-LOG-001": {
      "logger_id": "HL-LOG-001",
      "name": "Dune Crest Transect A",
      "location_description": "Crescent dune crest above Wash 1, north-facing slip face with sparse shrub cover",
      "metadata": {
        "model": "Onset RX3000 with external probes",
        "firmware": "3.12",
        "sensors": [
          "Soil Moisture (%)",
          "Soil Temperature (C)"
        ],
        "coordinates": {
          "lat": 35.4661,
          "lon": -115.8912
        },
        "elevation_m": 812,
        "enclosure": "NEMA 4X polycarbonate with desiccant pack",
        "installation_notes": "Probes inserted horizontally into dune face at 5 cm depth; cables armored with split-loom tubing",
        "status": "online",
        "paired_movebank_animal_ids": [
          "SW-017"
        ]
      }
    },
    "HL-LOG-002": {
      "logger_id": "HL-LOG-002",
      "name": "Dune Slope B",
      "location_description": "Leeward dune slope, mid-slope position downslope of Transect A",
      "metadata": {
        "model": "Onset RX3000",
        "firmware": "3.12",
        "sensors": [
          "Soil Moisture (%)",
          "Soil Temperature (C)"
        ],
        "coordinates": {
          "lat": 35.4628,
          "lon": -115.8894
        },
        "elevation_m": 804,
        "enclosure": "UV-stabilized enclosure mounted to steel post",
        "installation_notes": "Soil moisture probe at 10 cm depth; temperature probe at 5 cm",
        "status": "online"
      }
    },
    "HL-LOG-003": {
      "logger_id": "HL-LOG-003",
      "name": "Playa Margin Node 1",
      "location_description": "Northern playa margin, shallow basin with salt crust and intermittent water",
      "metadata": {
        "model": "HOBO U24-002-C (Conductivity) + baro compensation",
        "firmware": "1.19",
        "sensors": [
          "Water Level (cm)",
          "Conductivity (uS/cm)",
          "Water Temperature (C)"
        ],
        "coordinates": {
          "lat": 35.4715,
          "lon": -115.9011
        },
        "elevation_m": 786,
        "deployment_details": "Suspended 5 cm above substrate; vented to baro reference",
        "status": "biofouling risk",
        "biofouling_notes": "Green filamentous algae observed on housing; brush cleaning recommended"
      }
    },
    "HL-LOG-004": {
      "logger_id": "HL-LOG-004",
      "name": "Ephemeral Pool 3 Central",
      "location_description": "Central depression of Pool 3, deepest point over clay pan",
      "metadata": {
        "model": "HOBO U20L-04 (Water Level)",
        "firmware": "2.03",
        "sensors": [
          "Water Level (cm)",
          "Water Temperature (C)"
        ],
        "coordinates": {
          "lat": 35.4684,
          "lon": -115.8972
        },
        "elevation_m": 782,
        "deployment_details": "Logger attached to anchored staff gauge; screened intake",
        "status": "online"
      }
    },
    "HL-LOG-005": {
      "logger_id": "HL-LOG-005",
      "name": "Creosote Flat Quadrant C",
      "location_description": "Open creosote scrub flat, central quadrat with meteorological mast",
      "metadata": {
        "model": "Onset RX2100",
        "firmware": "1.47",
        "sensors": [
          "Air Temperature (C)",
          "Relative Humidity (%)",
          "Solar Radiation (W/m^2)"
        ],
        "coordinates": {
          "lat": 35.4522,
          "lon": -115.8761
        },
        "elevation_m": 798,
        "radiation_sensor": "Apogee SP-110 pyranometer, leveled and ventilated",
        "shielding": "Aspirated radiation shield for T/RH probe",
        "status": "online"
      }
    },
    "HL-LOG-006": {
      "logger_id": "HL-LOG-006",
      "name": "Sidewinder Den S1 Entrance",
      "location_description": "Sand hummock with rodent burrow used by sidewinders; east aspect",
      "metadata": {
        "model": "HOBO MX2201 Pendant",
        "firmware": "1.31",
        "sensors": [
          "Ground Surface Temperature (C)",
          "Substrate Temperature 2 cm (C)"
        ],
        "coordinates": {
          "lat": 35.4595,
          "lon": -115.8849
        },
        "elevation_m": 807,
        "deployment_details": "Surface probe shaded with small radiation shield; second probe buried at 2 cm",
        "status": "online",
        "paired_movebank_animal_ids": [
          "SW-011"
        ]
      }
    },
    "HL-LOG-007": {
      "logger_id": "HL-LOG-007",
      "name": "Ambush Corridor AC1",
      "location_description": "Sandy swale between shrub islands, frequent sidewinder tracks",
      "metadata": {
        "model": "HOBO MX2201 Pendant",
        "firmware": "1.31",
        "sensors": [
          "Surface Temperature (C)"
        ],
        "coordinates": {
          "lat": 35.4577,
          "lon": -115.8822
        },
        "elevation_m": 799,
        "deployment_details": "Pendant sensor 1 cm above substrate on matte black mount",
        "status": "online"
      }
    },
    "HL-LOG-008": {
      "logger_id": "HL-LOG-008",
      "name": "Wash 2 Riparian Edge",
      "location_description": "Sandy terrace adjacent to intermittent wash with saltbush",
      "metadata": {
        "model": "Onset RX3000",
        "firmware": "3.12",
        "sensors": [
          "Soil Moisture (%)"
        ],
        "coordinates": {
          "lat": 35.4638,
          "lon": -115.8735
        },
        "elevation_m": 792,
        "installation_notes": "EC-5 style probe at 2 cm depth in fine sand",
        "status": "online"
      }
    },
    "HL-LOG-009": {
      "logger_id": "HL-LOG-009",
      "name": "Playa Margin Node 2",
      "location_description": "Eastern playa toe slope with shallow brine lens",
      "metadata": {
        "model": "HOBO U24-002-C (Conductivity)",
        "firmware": "1.19",
        "sensors": [
          "Conductivity (uS/cm)"
        ],
        "coordinates": {
          "lat": 35.4742,
          "lon": -115.8958
        },
        "elevation_m": 784,
        "deployment_details": "Sensor tip at 3 cm above substrate to avoid sediment ingestion",
        "status": "online"
      }
    },
    "HL-LOG-010": {
      "logger_id": "HL-LOG-010",
      "name": "Microclimate Grid G5",
      "location_description": "Microclimate grid point on dune shoulder with mixed gravel and sand",
      "metadata": {
        "model": "Onset RX2100",
        "firmware": "1.47",
        "sensors": [
          "Air Temperature (C)",
          "Surface Temperature (C)"
        ],
        "coordinates": {
          "lat": 35.4611,
          "lon": -115.8794
        },
        "elevation_m": 801,
        "deployment_details": "Thermistor taped to matte aluminum plate flush with surface; T probe in aspirated shield at 1.5 m",
        "status": "online"
      }
    },
    "HL-LOG-011": {
      "logger_id": "HL-LOG-011",
      "name": "Burrow B17 Microclimate",
      "location_description": "Rodent burrow network on stabilized dune, used by sidewinders",
      "metadata": {
        "model": "HOBO UX120-006M",
        "firmware": "1.08",
        "sensors": [
          "Deep Soil Temperature 30 cm (C)"
        ],
        "coordinates": {
          "lat": 35.4589,
          "lon": -115.8867
        },
        "elevation_m": 809,
        "deployment_details": "Thermistor bead at 30 cm depth in burrow wall",
        "status": "online"
      }
    },
    "HL-LOG-012": {
      "logger_id": "HL-LOG-012",
      "name": "Roadside Reference",
      "location_description": "Gravel pad near access road with reflected heat from aggregate",
      "metadata": {
        "model": "HOBO MX2301A",
        "firmware": "1.32",
        "sensors": [
          "Air Temperature (C)",
          "Relative Humidity (%)"
        ],
        "coordinates": {
          "lat": 35.4553,
          "lon": -115.8714
        },
        "elevation_m": 789,
        "shielding": "Ventilated radiation shield mounted at 2 m",
        "status": "online"
      }
    }
  },
  "time_series": {
    "TS-001": {
      "series_id": "TS-001",
      "logger_id": "HL-LOG-001",
      "sensor": "Soil Moisture (%)",
      "data_csv": "sample_index,value,units,quality_flag\n1,1.2,%,ok\n2,1.3,%,ok\n3,1.4,%,ok\n4,1.5,%,ok\n5,1.6,%,ok\n6,8.7,%,ok\n7,10.9,%,ok\n8,9.4,%,ok\n9,6.2,%,ok\n10,4.1,%,ok\n11,3.5,%,ok\n12,2.9,%,ok\n13,2.4,%,ok\n14,2.0,%,ok\n15,1.8,%,ok",
      "annotations": [
        {
          "start_index": 6,
          "end_index": 9,
          "category": "hydrologic_pulse",
          "note": "Sharp wetting front consistent with rainfall infiltration; probe remained fully buried."
        },
        {
          "start_index": 10,
          "end_index": 15,
          "category": "drydown",
          "note": "Exponential moisture decline; no observed leakage or cable strain."
        }
      ]
    },
    "TS-002": {
      "series_id": "TS-002",
      "logger_id": "HL-LOG-001",
      "sensor": "Soil Temperature (C)",
      "data_csv": "sample_index,value,units,quality_flag\n1,23.1,C,ok\n2,24.6,C,ok\n3,27.2,C,ok\n4,31.0,C,ok\n5,34.8,C,ok\n6,36.5,C,ok\n7,37.9,C,ok\n8,36.1,C,ok\n9,33.2,C,ok\n10,29.8,C,ok\n11,27.4,C,ok\n12,25.9,C,ok\n13,24.8,C,ok\n14,26.7,C,ok\n15,30.1,C,ok",
      "annotations": [
        {
          "start_index": 8,
          "end_index": 11,
          "category": "microshade",
          "note": "Temporary shading from crest ripple reduced midday peak amplitude."
        }
      ]
    },
    "TS-003": {
      "series_id": "TS-003",
      "logger_id": "HL-LOG-002",
      "sensor": "Soil Moisture (%)",
      "data_csv": "sample_index,value,units,quality_flag\n1,0.9,%,ok\n2,1.0,%,ok\n3,1.1,%,ok\n4,1.2,%,ok\n5,1.3,%,ok\n6,3.4,%,ok\n7,6.2,%,ok\n8,4.8,%,ok\n9,3.1,%,ok\n10,2.2,%,ok\n11,1.6,%,ok\n12,1.3,%,ok\n13,1.1,%,ok\n14,1.0,%,ok\n15,0.9,%,ok",
      "annotations": [
        {
          "start_index": 6,
          "end_index": 8,
          "category": "wetting_event",
          "note": "Runon from upslope ridge; no puddling observed at probe location."
        }
      ]
    },
    "TS-004": {
      "series_id": "TS-004",
      "logger_id": "HL-LOG-002",
      "sensor": "Soil Temperature (C)",
      "data_csv": "sample_index,value,units,quality_flag\n1,24.0,C,ok\n2,25.1,C,ok\n3,27.0,C,ok\n4,30.2,C,ok\n5,33.0,C,ok\n6,34.7,C,ok\n7,35.9,C,ok\n8,35.3,C,ok\n9,32.8,C,ok\n10,29.6,C,ok\n11,27.5,C,ok\n12,26.0,C,ok\n13,25.3,C,ok\n14,26.2,C,ok\n15,28.8,C,ok",
      "annotations": [
        {
          "start_index": 7,
          "end_index": 9,
          "category": "thermal_inertia",
          "note": "Damped peak relative to surface due to 10 cm burial depth."
        }
      ]
    },
    "TS-005": {
      "series_id": "TS-005",
      "logger_id": "HL-LOG-003",
      "sensor": "Water Level (cm)",
      "data_csv": "sample_index,value,units,quality_flag\n1,0.0,cm,ok\n2,8.0,cm,ok\n3,15.3,cm,ok\n4,19.6,cm,ok\n5,21.2,cm,ok\n6,20.4,cm,ok\n7,18.0,cm,ok\n8,15.1,cm,ok\n9,12.2,cm,ok\n10,9.1,cm,ok\n11,6.0,cm,ok\n12,3.9,cm,ok\n13,2.1,cm,ok\n14,1.0,cm,ok\n15,0.0,cm,ok",
      "annotations": [
        {
          "start_index": 2,
          "end_index": 5,
          "category": "pool_fill",
          "note": "Sheetflow filled margin basin; no wave action observed."
        },
        {
          "start_index": 6,
          "end_index": 15,
          "category": "recession",
          "note": "Monotonic decline consistent with evaporation and infiltration."
        }
      ]
    },
    "TS-006": {
      "series_id": "TS-006",
      "logger_id": "HL-LOG-003",
      "sensor": "Conductivity (uS/cm)",
      "data_csv": "sample_index,value,units,quality_flag\n1,0,uS/cm,gap\n2,3100,uS/cm,ok\n3,4200,uS/cm,ok\n4,5200,uS/cm,ok\n5,6100,uS/cm,ok\n6,6800,uS/cm,ok\n7,7500,uS/cm,ok\n8,8200,uS/cm,ok\n9,8900,uS/cm,ok\n10,9600,uS/cm,ok\n11,10500,uS/cm,ok\n12,11700,uS/cm,ok\n13,12900,uS/cm,ok\n14,14100,uS/cm,ok\n15,0,uS/cm,gap",
      "annotations": [
        {
          "start_index": 1,
          "end_index": 1,
          "category": "dry_sensor",
          "note": "Sensor tip out of water; conductivity not valid."
        },
        {
          "start_index": 12,
          "end_index": 14,
          "category": "evapoconcentration",
          "note": "Increasing salinity as pool volume declined."
        },
        {
          "start_index": 15,
          "end_index": 15,
          "category": "dry_sensor",
          "note": "Pool receded below sensor tip; conductivity reading invalid."
        }
      ]
    },
    "TS-007": {
      "series_id": "TS-007",
      "logger_id": "HL-LOG-003",
      "sensor": "Water Temperature (C)",
      "data_csv": "sample_index,value,units,quality_flag\n1,0.0,C,gap\n2,18.6,C,ok\n3,19.2,C,ok\n4,20.1,C,ok\n5,20.7,C,ok\n6,21.0,C,ok\n7,21.5,C,ok\n8,22.0,C,ok\n9,22.4,C,ok\n10,22.8,C,ok\n11,23.1,C,ok\n12,23.4,C,ok\n13,23.7,C,ok\n14,24.0,C,ok\n15,0.0,C,gap",
      "annotations": [
        {
          "start_index": 1,
          "end_index": 1,
          "category": "dry_sensor",
          "note": "Sensor dry; temperature not representative of water."
        },
        {
          "start_index": 2,
          "end_index": 14,
          "category": "warming_trend",
          "note": "Gradual warming of shallow water column; no stratification detected."
        }
      ]
    },
    "TS-008": {
      "series_id": "TS-008",
      "logger_id": "HL-LOG-004",
      "sensor": "Water Level (cm)",
      "data_csv": "sample_index,value,units,quality_flag\n1,0.0,cm,ok\n2,5.5,cm,ok\n3,12.7,cm,ok\n4,22.4,cm,ok\n5,30.1,cm,ok\n6,34.3,cm,ok\n7,33.0,cm,ok\n8,29.2,cm,ok\n9,25.0,cm,ok\n10,20.4,cm,ok\n11,15.1,cm,ok\n12,10.4,cm,ok\n13,6.0,cm,ok\n14,2.3,cm,ok\n15,0.8,cm,ok",
      "annotations": [
        {
          "start_index": 6,
          "end_index": 7,
          "category": "vent_bias",
          "note": "Minor vent-line kink; level may be biased high by ~0.5 cm until line relaxed."
        }
      ]
    },
    "TS-009": {
      "series_id": "TS-009",
      "logger_id": "HL-LOG-005",
      "sensor": "Air Temperature (C)",
      "data_csv": "sample_index,value,units,quality_flag\n1,22.5,C,ok\n2,24.1,C,ok\n3,28.3,C,ok\n4,33.7,C,ok\n5,38.2,C,ok\n6,41.0,C,ok\n7,42.3,C,ok\n8,40.8,C,ok\n9,36.5,C,ok\n10,31.9,C,ok\n11,28.0,C,ok\n12,25.7,C,ok\n13,24.5,C,ok\n14,26.1,C,ok\n15,29.0,C,ok",
      "annotations": [
        {
          "start_index": 7,
          "end_index": 9,
          "category": "heat_peak",
          "note": "Peak daytime heat; aspirated shield confirmed functioning via fan current draw."
        }
      ]
    },
    "TS-010": {
      "series_id": "TS-010",
      "logger_id": "HL-LOG-005",
      "sensor": "Relative Humidity (%)",
      "data_csv": "sample_index,value,units,quality_flag\n1,41,%,ok\n2,38,%,ok\n3,33,%,ok\n4,27,%,ok\n5,22,%,ok\n6,19,%,ok\n7,18,%,ok\n8,20,%,ok\n9,25,%,ok\n10,31,%,ok\n11,36,%,ok\n12,40,%,ok\n13,42,%,ok\n14,39,%,ok\n15,35,%,ok",
      "annotations": [
        {
          "start_index": 5,
          "end_index": 7,
          "category": "very_dry",
          "note": "Low humidity period; no dust filter clogging detected."
        }
      ]
    },
    "TS-011": {
      "series_id": "TS-011",
      "logger_id": "HL-LOG-005",
      "sensor": "Solar Radiation (W/m^2)",
      "data_csv": "sample_index,value,units,quality_flag\n1,0,W/m^2,ok\n2,150,W/m^2,ok\n3,420,W/m^2,ok\n4,710,W/m^2,ok\n5,880,W/m^2,ok\n6,940,W/m^2,ok\n7,950,W/m^2,ok\n8,870,W/m^2,ok\n9,640,W/m^2,ok\n10,380,W/m^2,ok\n11,160,W/m^2,ok\n12,30,W/m^2,ok\n13,0,W/m^2,ok\n14,120,W/m^2,ok\n15,350,W/m^2,ok",
      "annotations": [
        {
          "start_index": 10,
          "end_index": 11,
          "category": "maintenance",
          "note": "Pyranometer dome wiped clean; no offset observed post-cleaning."
        }
      ]
    },
    "TS-012": {
      "series_id": "TS-012",
      "logger_id": "HL-LOG-006",
      "sensor": "Ground Surface Temperature (C)",
      "data_csv": "sample_index,value,units,quality_flag\n1,18.0,C,ok\n2,22.5,C,ok\n3,29.8,C,ok\n4,38.6,C,ok\n5,47.1,C,ok\n6,55.3,C,ok\n7,61.8,C,ok\n8,58.5,C,ok\n9,49.0,C,ok\n10,41.2,C,ok\n11,33.5,C,ok\n12,27.9,C,ok\n13,24.3,C,ok\n14,28.1,C,ok\n15,36.7,C,ok",
      "annotations": [
        {
          "start_index": 7,
          "end_index": 9,
          "category": "behavioral_shading",
          "note": "Sidewinder resting near shield; intermittent shading likely reduced peak temperatures."
        }
      ]
    },
    "TS-013": {
      "series_id": "TS-013",
      "logger_id": "HL-LOG-006",
      "sensor": "Substrate Temperature 2 cm (C)",
      "data_csv": "sample_index,value,units,quality_flag\n1,19.2,C,ok\n2,21.0,C,ok\n3,24.5,C,ok\n4,28.8,C,ok\n5,33.1,C,ok\n6,36.7,C,ok\n7,39.9,C,ok\n8,38.2,C,ok\n9,35.0,C,ok\n10,31.1,C,ok\n11,28.0,C,ok\n12,25.6,C,ok\n13,24.1,C,ok\n14,25.7,C,ok\n15,28.4,C,ok",
      "annotations": [
        {
          "start_index": 8,
          "end_index": 11,
          "category": "thermal_buffering",
          "note": "Subsurface phase lag relative to surface temperatures."
        }
      ]
    },
    "TS-014": {
      "series_id": "TS-014",
      "logger_id": "HL-LOG-007",
      "sensor": "Surface Temperature (C)",
      "data_csv": "sample_index,value,units,quality_flag\n1,20.4,C,ok\n2,24.0,C,ok\n3,31.5,C,ok\n4,40.1,C,ok\n5,49.8,C,ok\n6,57.4,C,ok\n7,72.9,C,suspect\n8,59.0,C,ok\n9,50.3,C,ok\n10,42.2,C,ok\n11,34.7,C,ok\n12,28.5,C,ok\n13,25.1,C,ok\n14,27.6,C,ok\n15,35.0,C,ok",
      "annotations": [
        {
          "start_index": 7,
          "end_index": 7,
          "category": "radiative_spike",
          "note": "Specular reflection from nearby metallic debris likely caused transient heating spike."
        }
      ]
    },
    "TS-015": {
      "series_id": "TS-015",
      "logger_id": "HL-LOG-008",
      "sensor": "Soil Moisture (%)",
      "data_csv": "sample_index,value,units,quality_flag\n1,1.1,%,ok\n2,1.1,%,ok\n3,1.2,%,ok\n4,1.3,%,ok\n5,2.2,%,ok\n6,3.5,%,ok\n7,3.1,%,ok\n8,2.6,%,ok\n9,2.0,%,ok\n10,1.7,%,ok\n11,1.5,%,ok\n12,1.4,%,ok\n13,1.3,%,ok\n14,1.2,%,ok\n15,1.1,%,ok",
      "annotations": [
        {
          "start_index": 5,
          "end_index": 6,
          "category": "runon_event",
          "note": "Short wetting pulse from wash overbank; no standing water at probe site."
        }
      ]
    },
    "TS-016": {
      "series_id": "TS-016",
      "logger_id": "HL-LOG-009",
      "sensor": "Conductivity (uS/cm)",
      "data_csv": "sample_index,value,units,quality_flag\n1,8700,uS/cm,ok\n2,9100,uS/cm,ok\n3,9600,uS/cm,ok\n4,10100,uS/cm,ok\n5,10800,uS/cm,ok\n6,11500,uS/cm,ok\n7,12200,uS/cm,ok\n8,18000,uS/cm,ok\n9,17000,uS/cm,ok\n10,16000,uS/cm,ok\n11,15000,uS/cm,ok\n12,14000,uS/cm,ok\n13,13000,uS/cm,ok\n14,12000,uS/cm,ok\n15,11000,uS/cm,ok",
      "annotations": [
        {
          "start_index": 8,
          "end_index": 8,
          "category": "evapoconcentration",
          "note": "High reading coincident with low local water depth; tip remained submerged."
        },
        {
          "start_index": 9,
          "end_index": 12,
          "category": "fresh_inflow",
          "note": "Dilution trend suggests fresh inflow from upslope channel."
        }
      ]
    },
    "TS-017": {
      "series_id": "TS-017",
      "logger_id": "HL-LOG-010",
      "sensor": "Air Temperature (C)",
      "data_csv": "sample_index,value,units,quality_flag\n1,23.0,C,ok\n2,24.9,C,ok\n3,28.7,C,ok\n4,33.4,C,ok\n5,37.0,C,ok\n6,39.5,C,ok\n7,40.8,C,ok\n8,39.7,C,ok\n9,36.4,C,ok\n10,31.8,C,ok\n11,28.6,C,ok\n12,26.2,C,ok\n13,25.1,C,ok\n14,26.9,C,ok\n15,29.5,C,ok",
      "annotations": [
        {
          "start_index": 6,
          "end_index": 8,
          "category": "heat_peak",
          "note": "Peak air temperatures; no aspiration failure observed."
        }
      ]
    },
    "TS-018": {
      "series_id": "TS-018",
      "logger_id": "HL-LOG-010",
      "sensor": "Surface Temperature (C)",
      "data_csv": "sample_index,value,units,quality_flag\n1,24.5,C,ok\n2,27.9,C,ok\n3,34.0,C,ok\n4,41.9,C,ok\n5,50.2,C,ok\n6,57.8,C,ok\n7,63.1,C,ok\n8,60.4,C,ok\n9,52.1,C,ok\n10,43.8,C,ok\n11,36.2,C,ok\n12,30.7,C,ok\n13,27.6,C,ok\n14,30.3,C,ok\n15,38.9,C,ok",
      "annotations": [
        {
          "start_index": 7,
          "end_index": 7,
          "category": "extreme_surface_heat",
          "note": "Ground plate reached high temperature; verify paint remains matte to limit albedo effects."
        }
      ]
    },
    "TS-019": {
      "series_id": "TS-019",
      "logger_id": "HL-LOG-011",
      "sensor": "Deep Soil Temperature 30 cm (C)",
      "data_csv": "sample_index,value,units,quality_flag\n1,24.3,C,ok\n2,24.4,C,ok\n3,24.6,C,ok\n4,24.7,C,ok\n5,24.8,C,ok\n6,24.9,C,ok\n7,25.0,C,ok\n8,25.1,C,ok\n9,25.1,C,ok\n10,25.0,C,ok\n11,24.9,C,ok\n12,24.8,C,ok\n13,24.7,C,ok\n14,24.7,C,ok\n15,24.8,C,ok",
      "annotations": [
        {
          "start_index": 1,
          "end_index": 15,
          "category": "stable_profile",
          "note": "Gradual deep soil warming; burial depth verified with probe pull test."
        }
      ]
    },
    "TS-020": {
      "series_id": "TS-020",
      "logger_id": "HL-LOG-012",
      "sensor": "Air Temperature (C)",
      "data_csv": "sample_index,value,units,quality_flag\n1,21.8,C,ok\n2,23.1,C,ok\n3,26.9,C,ok\n4,32.0,C,ok\n5,36.4,C,ok\n6,38.9,C,ok\n7,39.8,C,ok\n8,38.4,C,ok\n9,34.5,C,ok\n10,29.9,C,ok\n11,26.3,C,ok\n12,24.0,C,ok\n13,22.9,C,ok\n14,24.7,C,ok\n15,27.5,C,ok",
      "annotations": [
        {
          "start_index": 5,
          "end_index": 8,
          "category": "road_heat",
          "note": "Elevated temps likely enhanced by radiant heating from nearby gravel surface."
        }
      ]
    },
    "TS-021": {
      "series_id": "TS-021",
      "logger_id": "HL-LOG-012",
      "sensor": "Relative Humidity (%)",
      "data_csv": "sample_index,value,units,quality_flag\n1,48,%,ok\n2,45,%,ok\n3,41,%,ok\n4,34,%,ok\n5,28,%,ok\n6,24,%,ok\n7,22,%,ok\n8,24,%,ok\n9,30,%,ok\n10,37,%,ok\n11,42,%,ok\n12,46,%,ok\n13,49,%,ok\n14,46,%,ok\n15,40,%,ok",
      "annotations": [
        {
          "start_index": 6,
          "end_index": 7,
          "category": "very_dry",
          "note": "Low RH; sensor standoff confirmed sealed to prevent dust ingress."
        }
      ]
    }
  },
  "alarm_rule": {
    "AR-001": {
      "rule_id": "AR-001",
      "logger_id": "HL-LOG-001",
      "sensor": "Soil Moisture (%)",
      "condition": "Trigger when Soil Moisture (%) > 8 for 2 consecutive samples",
      "message": "Rain pulse at Dune Crest Transect A; deploy pitfall covers at Crest A and Crest B."
    },
    "AR-002": {
      "rule_id": "AR-002",
      "logger_id": "HL-LOG-003",
      "sensor": "Water Level (cm)",
      "condition": "Trigger when Water Level (cm) > 20",
      "message": "Ephemeral Pool at Playa Margin Node 1 near full; schedule aquatic invertebrate sampling."
    },
    "AR-003": {
      "rule_id": "AR-003",
      "logger_id": "HL-LOG-003",
      "sensor": "Conductivity (uS/cm)",
      "condition": "Trigger when Conductivity (uS/cm) > 20000",
      "message": "High salinity detected; recalibrate CTD and collect duplicate water samples."
    },
    "AR-004": {
      "rule_id": "AR-004",
      "logger_id": "HL-LOG-005",
      "sensor": "Air Temperature (C)",
      "condition": "Trigger when Air Temperature (C) > 42",
      "message": "Extreme heat at Creosote Flat C; adjust sidewinder telemetry schedule to nocturnal windows."
    },
    "AR-005": {
      "rule_id": "AR-005",
      "logger_id": "HL-LOG-005",
      "sensor": "Relative Humidity (%)",
      "condition": "Trigger when Relative Humidity (%) < 15",
      "message": "Very low humidity; ensure desiccant replacement schedule and protect sensitive gear."
    },
    "AR-006": {
      "rule_id": "AR-006",
      "logger_id": "HL-LOG-006",
      "sensor": "Ground Surface Temperature (C)",
      "condition": "Trigger when Ground Surface Temperature (C) > 60",
      "message": "Surface heat near Den S1 hazardous to snakes; prioritize night observations."
    },
    "AR-007": {
      "rule_id": "AR-007",
      "logger_id": "HL-LOG-006",
      "sensor": "Substrate Temperature 2 cm (C)",
      "condition": "Trigger when Substrate Temperature 2 cm (C) > 40",
      "message": "Substrate overheating near Den S1; verify burrow depth of tagged individuals."
    },
    "AR-008": {
      "rule_id": "AR-008",
      "logger_id": "HL-LOG-007",
      "sensor": "Surface Temperature (C)",
      "condition": "Trigger when Surface Temperature (C) > 65",
      "message": "Heat spike on Ambush Corridor AC1; inspect for reflective debris and sensor exposure."
    },
    "AR-009": {
      "rule_id": "AR-009",
      "logger_id": "HL-LOG-008",
      "sensor": "Soil Moisture (%)",
      "condition": "Trigger when Soil Moisture (%) rise > 1 between consecutive samples",
      "message": "Rapid wetting at Wash 2 Edge; deploy track plates for sidewinder movement study."
    },
    "AR-010": {
      "rule_id": "AR-010",
      "logger_id": "HL-LOG-009",
      "sensor": "Conductivity (uS/cm)",
      "condition": "Trigger when Conductivity (uS/cm) drop > 3000 between consecutive samples",
      "message": "Fresh inflow at Playa Margin Node 2; collect water sample for ion analysis."
    },
    "AR-011": {
      "rule_id": "AR-011",
      "logger_id": "HL-LOG-010",
      "sensor": "Surface Temperature (C)",
      "condition": "Trigger when Surface Temperature (C) > 62",
      "message": "Extreme ground temperatures in Microclimate Grid G5; suspend midday trapping."
    },
    "AR-012": {
      "rule_id": "AR-012",
      "logger_id": "HL-LOG-011",
      "sensor": "Deep Soil Temperature 30 cm (C)",
      "condition": "Trigger when Deep Soil Temperature 30 cm (C) change > 1 between consecutive samples",
      "message": "Unexpected deep soil temperature shift near Burrow B17; check probe burial integrity."
    },
    "AR-013": {
      "rule_id": "AR-013",
      "logger_id": "HL-LOG-012",
      "sensor": "Air Temperature (C)",
      "condition": "Trigger when Air Temperature (C) > 40",
      "message": "Roadside Reference heat alert; compare with Creosote Flat station for advection assessment."
    },
    "AR-014": {
      "rule_id": "AR-014",
      "logger_id": "HL-LOG-004",
      "sensor": "Water Level (cm)",
      "condition": "Trigger when Water Level (cm) increase > 8 between consecutive samples",
      "message": "Rapid rise at Pool 3 Central; verify vent line and barometric compensation."
    },
    "AR-015": {
      "rule_id": "AR-015",
      "logger_id": "HL-LOG-005",
      "sensor": "Solar Radiation (W/m^2)",
      "condition": "Trigger when Solar Radiation (W/m^2) > 900",
      "message": "High irradiance at Creosote Flat; confirm pyranometer cleanliness and leveling."
    }
  }
}

