跳到正文
cccskills
免费在 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.

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(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(原文)

安装前可以查看交给 AI 代理的指令内容。

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).

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

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.

中文简介正在准备中。当前显示原文说明。

benchflow-ai/skillsbench18622026年10月13日 更新

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.

中文简介正在准备中。当前显示原文说明。

benchflow-ai/skillsbench18622026年10月13日 更新

Redact text from PDF documents for blind review anonymization

中文简介正在准备中。当前显示原文说明。

benchflow-ai/skillsbench18622026年10月13日 更新

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.

中文简介正在准备中。当前显示原文说明。

benchflow-ai/skillsbench18622026年10月13日 更新

Analyze failed GitHub Action jobs for a pull request.

中文简介正在准备中。当前显示原文说明。

benchflow-ai/skillsbench18622026年10月13日 更新

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.

中文简介正在准备中。当前显示原文说明。

benchflow-ai/skillsbench18622026年10月13日 更新

查看 benchflow-ai 的全部技能

报告此技能的问题