Skip to content
cccskills
FreePublished on GitHub

transaction-protocol-reasoning

Teaches how to reason from a transaction protocol’s rules to a working model. Use when analyzing a concurrency-control paper, spec, or algorithm to identify state, metadata, invariants, operation rules, examples, counterexamples, guarantees, false aborts, unsafe commits, or tradeoffs before inspecting concrete traces.

The English summary is being prepared. Showing the original description.

See how to install

Files included (8)

  • SKILL.md4.0 KB
  • references/counterexample-construction.md3.1 KB
  • references/example-construction.md2.2 KB
  • references/invariant-extraction.md2.5 KB
  • references/operation-rule-analysis.md3.6 KB
  • references/protocol-analysis-workflow.md5.0 KB
  • references/protocol-comparison.md2.3 KB
  • references/state-and-metadata-modeling.md3.7 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Transaction Protocol Reasoning

Use this skill when a protocol is already given (paper, spec, pseudocode, implementation notes) and you need to understand what it guarantees and how its rules imply commit/abort behavior.

This skill does not ask you to invent a protocol. It teaches how to read a protocol description as a set of rules, turn those rules into checkable predicates/invariants, and then reason about safety vs conservatism.

What “done” looks like

By the end you should have:

  • a one-page Protocol Ledger (state + rules + invariants)
  • a minimal example pack (3–6 tiny histories) that exercises boundaries
  • a clear statement of:
    • the protocol’s proof object (what metadata it relies on), and
    • its likely false-abort and unsafe-commit failure modes

Quick Reference (pick the next file to read)

If you need…Read
A step-by-step protocol reading workflowprotocol-analysis-workflow.md
Inventory protocol state + what each field provesstate-and-metadata-modeling.md
Restate read/write/validate/commit/abort as explicit rulesoperation-rule-analysis.md
Extract invariants from rules (and distinguish conservative ones)invariant-extraction.md
Build a small history suite that hits boundary behaviorexample-construction.md
Build minimal counterexamples (unsafe commit vs conservative abort)counterexample-construction.md
Compare two protocols by guarantees + metadata + allowed historiesprotocol-comparison.md

Protocol Ledger (the “shape ledger” equivalent)

Before you chase details, build a one-page protocol ledger:

Claimed guarantee:

Global state:
  - per-object metadata: ...
  - global clock/counters: ...

Per-transaction state:
  - read set entries: (key, version-id?, local ts fields?, ...)
  - write set entries: (key, buffered value?, lock?, ...)
  - timestamps: start_ts?, commit_ts?, bounds?

Operations (as rules/predicates):
  read(key): preconditions, version selection, metadata recorded/updated, failure modes
  write(key): ...
  validate(txn): ...
  commit(txn): ...
  abort/retry(txn): ...

Proof object:
  - what metadata/rules constitute the correctness argument?
  - what does the protocol “check” to justify commits?

If you cannot fill a ledger line item without hand-waving (“it probably…”), you have found an underspecified part of the protocol. That is often where conservative aborts come from.

Workflow (operational)

  1. Extract the contract: what does “correct” mean and what is in-scope?
  2. Inventory state: list each field, its scope, and what history fact it is intended to prove.
  3. Restate rules: convert prose/pseudocode into explicit “if … then … else abort/block” rules.
  4. Derive invariants: state what must always be true if the rules are correct.
  5. Run the example pack: step through 3–6 tiny histories and apply the rules mechanically.
  6. Locate conservative vs unsafe edges:
    • conservative: rules reject a safe history (false abort / blocking)
    • unsafe: rules accept a history that violates the contract

Common Failure Modes To Look For

  • Metadata insufficiency: protocol needs old-version validity but stores only latest.
  • Scope mismatch: uses per-key evidence to enforce cross-key ordering claims.
  • Over-approx validation: uses a sufficient condition (safe) that is not necessary (causes false aborts).

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Perform various data analysis on SEC 13-F and obtain some insights of fund activities such as number of holdings, AUM, and change of holdings between two quarters.

The English summary is being prepared. Showing the original description.

benchflow-ai/skillsbench1.9KUpdated Oct 13, 2026

AC branch pi-model power flow equations (P/Q and |S|) with transformer tap ratio and phase shift, matching `acopf-math-model.md` and MATPOWER branch fields. Use when computing branch flows in either direction, aggregating bus injections for nodal balance, checking MVA (rateA) limits, computing branch loading %, or debugging sign/units issues in AC power flow.

The English summary is being prepared. Showing the original description.

benchflow-ai/skillsbench1.9KUpdated Oct 13, 2026

Redact text from PDF documents for blind review anonymization

The English summary is being prepared. Showing the original description.

benchflow-ai/skillsbench1.9KUpdated Oct 13, 2026

Use when checking simplified ADA-derived plan-view bathroom accessibility constraints such as turning space, door clear width, toilet centerline, grab bars, and lavatory knee/toe clearance.

The English summary is being prepared. Showing the original description.

benchflow-ai/skillsbench1.9KUpdated Oct 13, 2026

Analyze failed GitHub Action jobs for a pull request.

The English summary is being prepared. Showing the original description.

benchflow-ai/skillsbench1.9KUpdated Oct 13, 2026

Use when extracting plan-view architectural geometry from DXF files with semantic CAD layers, especially when outputs must normalize rooms, doors, fixtures, clearances, and grab bars into machine-checkable JSON.

The English summary is being prepared. Showing the original description.

benchflow-ai/skillsbench1.9KUpdated Oct 13, 2026

See all skills by benchflow-ai

Report a problem with this skill