Skip to content
Back to skills

Smith 1980 Contract Net Protocol

ASecurity

Uses Smith's 1980 Contract Net Protocol for local task announcement, bid, award, and result coordination. NOT FIPA Contract Net, reliable transport, or automatic authority to execute.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 24, 2026
businessgo

Security analysis

A100/100

Pro scans all 20 files and shows the line behind each finding

Scanned October 2, 2026

npx -y skills add curiositech/port-daddy --skill smith-1980-contract-net-protocol --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Smith 1980 Contract Net Protocol?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Smith 1980 Contract Net Protocol
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/curiositech-smith-1980-contract-net-protocol-port-daddy/badge)](https://www.skillsdirectory.com/skills/curiositech-smith-1980-contract-net-protocol-port-daddy)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
license: Apache-2.0
name: smith-1980-contract-net-protocol
description: Uses Smith's 1980 Contract Net Protocol for local task announcement, bid, award, and result coordination. NOT FIPA Contract Net, reliable transport, or automatic authority to execute.
allowed-tools: [Read, Write, Edit, Glob, Grep]
metadata:
  category: Research & Academic
  tags: [contract-net, negotiation, task-allocation, distributed-systems]
---
# Smith 1980 Contract Net Protocol

This entry corrects a catalog collision: the archived original bundle taught unrelated epistemic logic. Smith’s 1980 paper describes local manager/contractor roles in an asynchronous, loosely coupled distributed problem solver and assumes a lower-level reliable transport. It does not define FIPA Contract Net performatives, authorization, modern transaction semantics, or a universal bid objective.

## 1. Announce a task with comparable bid information

A manager prepares a contract ID, task abstraction, eligibility specification, bid specification, and expiration time. A contractor locally filters eligibility, ranks candidate announcements using its own task-specific criteria, and may bid. The manager evaluates bids using its own task-specific criteria and sends awards; no bid and late bid are real outcomes.

```mermaid
sequenceDiagram
  participant M as Manager role
  participant C as Eligible contractor role
  M->>C: announcement: contract, task, eligibility, bid fields, expiry
  C->>C: local task-specific evaluation
  alt bids before expiry
    C->>M: bid with requested fields
    M->>M: local task-specific selection
    M-->>C: award or rejection
  else no bid or late bid
    C-->>M: no bid or late bid handling
  end
```

## 2. Execute and report without inventing delivery guarantees

After award, record the contract ID, selected task details, result/failure report, and any application-specific idempotency or recovery policy. A contractor may partition its task and become a manager for subcontracts. A missing result is unknown unless the assumed lower layer or authoritative execution record establishes otherwise.

```mermaid
flowchart TD
  A[Awarded contract] --> X[Contractor executes task]
  X --> S[Result or failure report]
  X --> T{Deadline passes}
  T -->|authoritative completion| D[Record result once]
  T -->|authoritative noncommit plus late-commit fence, or validated same-operation dedup, with authority and budget| R[Negotiate or retry by policy]
  T -->|unknown| E[Preserve unknown and escalate]
  X --> P[Optional partition: contractor becomes sub-manager]
```

## 3. Worked source-bounded trace

A sensing manager announces `22-3-1` with required sensor and area, asks bidders for position and sensor type, and sets an expiration. A nearby eligible sensor bids; the manager selects a set that covers its area and awards named sensors. The paper’s example assumes synchronized clocks for expiration but says time is not critical; a modern deployment must separately specify clock, delivery, and authorization policy.

## Preserved source assets

The [reference index](references/INDEX.md) separates the source-bound Smith method from inherited epistemic-logic notes. The latter are archival context, not evidence for Contract Net behavior.

## Sources and identity limit

[Smith 1980](https://www.reidgsmith.com/The_Contract_Net_Protocol_Dec-1980.pdf) was directly opened and read: it defines the task announcement slots, local mutual selection, dynamic manager/contractor roles, and lower-level reliable-transport assumption. [FIPA Contract Net SC00029H](http://www.fipa.org/specs/fipa00029/SC00029H.html) is a separate inaccessible canonical pointer and must not be substituted for Smith’s protocol.

## 4. Selection worksheet

For a constructed `22-3-1` sensing task, manager input is: task abstraction `SIGNAL`, eligibility `sensor in AREA A`, bid fields `{position, sensor names/types}`, expiry. Contractor worksheet: first test eligibility, then rank announcements from its own view (for example, distance to manager) and submit only its requested fields. Manager worksheet: compare received bids from its own view (for example, coverage and sensor variety), award selected contractor(s), reject/record remaining bids, and process no-bid/late-bid outcomes. Contractor ranking and manager selection are separate local functions; neither is a universal scalar priority.

If an award’s result is absent, “not observed complete” is not proof that it cannot still commit. Retry only after a noncommit proof plus a fence, or a validated same-operation deduplication key and authority. Compensation is a separately authorized action and does not erase uncertainty about the original operation.

Files in this skill

  • CHANGELOG.md223 B
  • SKILL.md12.4 KB
  • _book_identity.json4.2 KB
  • _raw_response.md79.7 KB
  • diagrams/01_flowchart_knowledge_state_decision_tree-.md2.3 KB
  • diagrams/01_flowchart_knowledge_state_decision_tree.md2.3 KB
  • diagrams/02_sequenceDiagram_knowledge_propagation-_public_.md2 KB
  • diagrams/02_sequenceDiagram_knowledge_propagation_public.md2 KB
  • diagrams/03_stateDiagram-v2_agent_knowledge_state_evolutio.md1.8 KB
  • diagrams/03_stateDiagram-v2_agent_knowledge_state_evolution.md1.8 KB
  • diagrams/INDEX.md1.6 KB
  • provenance.json1016 B
  • references/centralization-vs-distribution-epistemic-tradeoffs.md9.6 KB
  • references/common-knowledge-coordination-failures.md9.5 KB
  • references/distributed-vs-common-knowledge.md10.1 KB
  • references/epistemic-state-as-specification-target.md7.1 KB
  • references/kripke-models-for-agent-uncertainty.md7.9 KB
  • references/model-checking-as-runtime-verification.md9 KB
  • references/model-checking-vs-satisfiability-dual-problems.md13.2 KB
  • references/observable-observers-knowledge-chains.md12.3 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…