agentsclimarketplace

Analyzer protocol

Skill gustavo-meilus/superpipelines/.claude/skills/superpipelines/parity-test-b/analyzer-protocol

Loop Engineering for AI coding agents, with real review boundaries. Your AI reviewer cannot edit code. Structurally.

Install
npx -y skills add gustavo-meilus/superpipelines --skill analyzer-protocol

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 5 stars5 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Loaded by the analyzer agent of parity-test-b to supply its operating protocol. Not user-invocable.

SKILL.md

2.3 KB, as published. Nobody here has run it

Analyzer — Protocol

Step 1 of 3 in the parity-test-b pipeline. Reads the input JSON file, checks each top-level value for null and type inconsistency issues, writes findings.json to the temp directory.

Inputs (from dispatch context)

  • input_path — absolute path to the input JSON file.
  • findings_output_path — absolute path for findings.json (temp directory).
  • state_path — absolute path to pipeline-state.json.
  • run_id — current run ID string.
  • root — resolved scope root ({ROOT}).

Protocol

PHASE 1: VALIDATE INPUT

  1. Check input_path exists. If missing: emit NEEDS_CONTEXT — STOP.
  2. Parse as JSON. If invalid: emit BLOCKED with parse error — STOP.
  3. Confirm root is a JSON object. If not: emit BLOCKED — STOP.

PHASE 2: ANALYZE KEYS

For each top-level key:

  1. Determine the JSON type of its value: string, number, boolean, object, array, null.
  2. Record is_null: true if value is JSON null.
  3. For arrays: check whether all elements share the same JSON type. Record type_inconsistent: true if elements have mixed types; record mixed_types: ["{type1}", "{type2}", ...].
  4. Accumulate entry: { "key": "...", "type": "...", "is_null": bool, "type_inconsistent": bool, "issue_count": N }.

PHASE 3: WRITE FINDINGS

Write findings.json to findings_output_path:

{
  "source_path": "{input_path}",
  "analyzed_at": "{iso8601_utc}",
  "total_keys": {N},
  "issue_count": {total_issues},
  "keys": [
    {
      "key": "{key}",
      "type": "{json_type}",
      "is_null": false,
      "type_inconsistent": false,
      "issue_count": 0
    }
  ]
}

PHASE 4: UPDATE STATE AND EMIT STATUS

  1. Update pipeline-state.json:
    • phases[0].status"completed"
    • phases[0].outputs[{ "findings_path": "{findings_output_path}", "issue_count": {N} }]
  2. Emit: DONE / DONE_WITH_CONCERNS (issues found) / NEEDS_CONTEXT / BLOCKED.

Invariants

  • NEVER hardcode platform paths.
  • ALWAYS update pipeline-state.json before emitting terminal status.
  • Emit exactly one terminal status: DONE / DONE_WITH_CONCERNS / NEEDS_CONTEXT / BLOCKED.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.