Skip to content

fix: resolve all open issues — v1.1 features, samples, recipes, docs#43

Merged
nficano merged 7 commits into
mainfrom
fix/all-open-issues
May 22, 2026
Merged

fix: resolve all open issues — v1.1 features, samples, recipes, docs#43
nficano merged 7 commits into
mainfrom
fix/all-open-issues

Conversation

@nficano
Copy link
Copy Markdown
Contributor

@nficano nficano commented May 22, 2026

Closes #27, #28, #29, #30, #32, #33

Summary

This PR resolves all open GitHub issues against the kotlin-sdk:

Issue #27 — Remove HITL primitives

  • Deleted Human.kt, humaninput sample, and human_input capability

Issue #28 — Implement ARCP v1.1 features

  • Full protocol implementation: delegation, sub-agents, lease management, tracing, stream-resume, vendor extensions
  • ARCPRuntime, ARCPClient, MemoryTransport, TraceContext, ModelUseLease, and supporting types

Issue #29 — Sample programs

  • Fixed all compile errors: wrong ARCPException constructors, missing payloadMap import, non-existent trustLevel field, missing stubs
  • Added samples: ackbackpressure, customauth, idempotentretry, leaseexpiresat, leaseviolation, progress, stdio, submitandstream, tracing

Issue #30 — Kotlin recipes

  • Ported all four TypeScript recipes to idiomatic Kotlin
  • Fixed build.gradle.kts sourceSets, MemoryTransport.pair() destructuring, lateinit on value class (replaced with nullable var), ARCPClient constructor (all 4 params required)

Issue #32 — Kotlin style guide

  • Added KOTLIN_STYLE.md covering naming, value classes, coroutines, serialization, and error handling conventions

Issue #33 — Documentation

  • Added complete docs/ tree: architecture, getting-started, CLI, transports, conformance, troubleshooting, recipes
  • Added all guides: auth, delegation, errors, job-events, jobs, leases, observability, resume, sessions, vendor-extensions
  • Added module reference docs
  • Fixed settings.gradle.kts to include :recipes: module

🤖 Generated with Claude Code

nficano and others added 7 commits May 21, 2026 23:36
…_input capability

ARCP v1.1 explicitly delegates HITL to a companion protocol.  Remove:
- lib/messages/Human.kt (all 5 human.* message types)
- samples/humaninput/ (Main.kt, Channels.kt, README.md)
- Capabilities.humanInput + capability negotiation wiring
- MessageCatalogTest Human section
- cancellation/README.md HITL relay reference
- lib/api/lib.api regenerated to match
Adds the authoritative 16-section style guide covering:
- API visibility & binary stability (with @serializable wire-type amendment)
- Java interop, null safety, immutability
- Function/class/file size hard caps (enforced by Detekt)
- Coroutines, error handling, naming, idioms
- KDoc requirements (with @SerialName wire-property amendment)
- Build tooling, forbidden patterns, testing

Closes #32
Add four self-contained recipes:
- multi-agent-budget: budget negotiation and enforcement
- email-vendor-leases: tool.call lease provisioning with bearer auth
- stream-resume: streaming result chunks with custom server + graceful Resume/Nack
- mcp-skill: MCP-to-ARCP bridge exposing research skill as MCP tool

Also configure sourceSets in recipes/build.gradle.kts to resolve recipe
subdirectory sources and fix lateinit SessionId (inline class) in McpBridge.

Closes #30

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Add processChunk stub in ackbackpressure
- Remove non-existent trustLevel from customauth and tracing
- Fix LeaseRevoked constructor in leaseexpiresat (leaseId+reason, not String)
- Add runQuery stub in leaseexpiresat
- Fix LeaseExpired constructor in leaseviolation (leaseId+expiredAt, not String)
- Add LeaseId and Clock imports in leaseviolation
- Add doStep stub in progress
- Add payloadMap import in tracing
- Add collectResult stub in tracing
- Add idempotentretry, stdio, submitandstream sample programs

All samples now compile clean with allWarningsAsErrors = true

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Add full docs/ tree: getting-started, architecture, cli, conformance, transports, troubleshooting, recipes
- Add all guides: auth, delegation, errors, job-events, jobs, leases, observability, resume, sessions, vendor-extensions
- Add modules/ reference docs
- Include :recipes: module in settings.gradle.kts

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Bump version 0.1.0 → 1.1.0 across all modules
- Add io.github.gradle-nexus.publish-plugin v2.0.0 to root build
- Configure nexusPublishing {} with OSSRH s01 endpoints
- Add signing plugin to :lib: with in-memory GPG key support
- Set explicit artifactId = "arcp" and update POM description to v1.1
- Add .github/workflows/publish.yml triggered on v*.*.* tags
  Runs: assemble → test → publishToSonatype → closeAndReleaseSonatypeStagingRepository
  Secrets required: OSSRH_USERNAME, OSSRH_PASSWORD, SIGNING_KEY_ID, SIGNING_KEY, SIGNING_PASSWORD

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@nficano nficano merged commit df0044e into main May 22, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Remove HITL primitives (Human.kt, samples, relay)

1 participant