Skip to content

Latest commit

 

History

History
351 lines (280 loc) · 13 KB

File metadata and controls

351 lines (280 loc) · 13 KB

CapiscIO Documentation Verification Tracker

Created: 2025-12-01
Purpose: Track verification status of all product documentation against actual source code.


Verification Status Legend

Symbol Meaning
Verified against source code
⚠️ Exists but needs verification
🔴 Missing or broken
🔄 In progress

Product Inventory

Product Location Purpose Docs Status
capiscio-sdk-python /capiscio-sdk-python/ Python SDK for runtime security ✅ VERIFIED (28 tests pass)
capiscio-core /capiscio-core/ Go CLI - the core engine ✅ VERIFIED
capiscio-node /capiscio-node/ npm wrapper for capiscio-core ✅ VERIFIED (CLI wrapper only)
capiscio-python /capiscio-python/ pip wrapper for capiscio-core ✅ VERIFIED
validate-a2a /validate-a2a/ GitHub Action for CI/CD ✅ VERIFIED (6 inputs, 7 outputs)

capiscio-sdk-python (COMPLETE ✅)

Verification Method

  • Created /tests/test_docs_examples.py with 28 tests
  • All tests pass against actual SDK

Verified Components

Component File Tests Status
SimpleGuard simple_guard.py 15
Error classes errors.py 4
SecurityConfig config.py 4
CapiscioMiddleware integrations/fastapi.py 1
Import patterns __init__.py 7

Fixed Issues (Session 2025-12-01)

  • ❌ Removed fabricated private_key_path parameter
  • ❌ Removed fabricated trust_store_path parameter
  • ❌ Removed fabricated get_public_key_jwk() method
  • ❌ Removed fabricated debug=True parameter
  • ❌ Fixed CapiscioSignatureErrorVerificationError
  • ✅ Rewrote configuration.md from source
  • ✅ Enabled mkdocstrings for auto-generated API reference

capiscio-core (COMPLETE ✅)

Source Files Audited

capiscio-core/
├── cmd/capiscio/
│   ├── main.go          # Root command, version ✅
│   ├── validate.go      # validate command ✅
│   ├── key.go           # key gen command ✅
│   ├── badge.go         # badge issue/verify/keep ✅
│   └── gateway.go       # gateway start ✅
├── pkg/
│   ├── agentcard/       # Agent card parsing ✅
│   ├── scoring/         # Validation engine ✅
│   └── report/          # Output formatting ✅
└── bindings/            # Language bindings

CLI Commands Verified

Command Source File Docs Page Status
validate validate.go reference/cli/index.md
key gen key.go reference/cli/index.md
badge issue badge.go reference/cli/index.md
badge verify badge.go reference/cli/index.md
badge keep badge.go reference/cli/index.md
gateway start gateway.go reference/cli/index.md

Auto-Generated Docs

  • Go API Reference: reference/go-api.md (1,239 lines)
  • Generated by: gomarkdoc ./pkg/...
  • Regenerate: cd capiscio-core && ~/go/bin/gomarkdoc ./pkg/... > ../capiscio-docs/docs/reference/go-api.md

capiscio-node (COMPLETE ✅)

Architecture Decision (2025-12-01)

  • Type: npm CLI wrapper (NOT a TypeScript validation library)
  • CLI Command: capiscio validate ...
  • How it works: Spawns capiscio-core Go binary via execa() with stdio: 'inherit'
  • A2AValidator class: Legacy export, NOT used by CLI, NOT tested, NOT supported

Documentation Changes Made

  1. Deleted reference/api.md - TypeScript API is unsupported legacy code
  2. Deleted reference/architecture.md - Internal implementation details
  3. Rewrote index.md - Clarified as "npm distribution of capiscio-core"
  4. Rewrote reference/cli.md - Verified flags from Go source
  5. Rewrote guides/programmatic-usage.md - Shows spawning CLI pattern
  6. Rewrote guides/scoring.md - Fixed fabricated --detailed-scores flag
  7. Fixed mkdocs.yml nav - Removed deleted files

Source Files Audited

capiscio-node/
├── src/
│   ├── index.ts         # Exports A2AValidator (legacy, unused)
│   ├── cli.ts           # CLI entry point
│   └── commands/
│       └── validate.ts  # Spawns Go binary via execa()
├── package.json         # Package name: "capiscio" (not "capiscio-cli")
└── docs/                # ✅ All verified

Key Findings

  • Package name is capiscio, NOT capiscio-cli
  • CLI spawns Go binary with execa(binaryPath, args, { stdio: 'inherit' })
  • A2AValidator TypeScript class is exported but has 0 tests and is NOT used by CLI
  • Programmatic usage = spawn CLI process with --json and parse output

capiscio-python (COMPLETE ✅)

Architecture

  • Type: pip CLI wrapper
  • Entry point: capiscio.cli:main (defined in pyproject.toml)
  • Binary: Downloads capiscio-core Go binary to user cache
  • Execution: Uses os.execv() for zero-overhead process replacement

Source Files Audited

capiscio-python/
├── src/capiscio/
│   ├── __init__.py      # Version only
│   ├── cli.py           # Entry point, wrapper commands ✅
│   └── manager.py       # Binary download/execution ✅
├── pyproject.toml       # Package config ✅
└── docs/                # ✅ All verified

Wrapper Commands Verified

Command Source Location Status
--wrapper-version cli.py:24-30 ✅ Match
--wrapper-clean cli.py:14-23 ✅ Match

Issues Fixed

  1. Removed fabricated CAPISCIO_CORE_PATH env var (not in source)
  2. Removed fabricated capiscio score command (not in core)
  3. Fixed capiscio --versioncapiscio version (correct command)
  4. Added clarification that this is a wrapper, not validation logic

Configuration Verified

Config pyproject.toml Status
Package name capiscio
Python version >=3.10
Entry point capiscio = "capiscio.cli:main"
Core version 1.0.2 (in manager.py)

validate-a2a (COMPLETE ✅)

Verification Method

  • Compared action.yml to docs/index.md and README.md
  • All inputs, outputs, and defaults match exactly

Source File: action.yml

Component Count Status
Inputs 6 ✅ Match docs
Outputs 7 ✅ Match docs
Defaults 6 ✅ Match docs

Inputs Verified

Input Type Default Status
agent-card string ./agent-card.json
strict bool false
test-live bool false
skip-signature bool false
timeout string 10000
fail-on-warnings bool false

Outputs Verified

Output Description Status
result "passed" or "failed"
compliance-score 0-100
trust-score 0-100
availability-score 0-100 or "not-tested"
production-ready "true" or "false"
error-count integer
warning-count integer

Broken Links to Fix

File Broken Link Should Be
guides/scoring-system.md ../capiscio-node-js-cli/guides/scoring.md ../reference/cli/index.md
concepts/validation.md ../capiscio-node-js-cli/reference/api.md TBD
concepts/validation.md ../capiscio-node-js-cli/reference/architecture.md TBD
community/support.md ../capiscio-node-js-cli/index.md TBD

Session Log

2025-12-01 Session 1

  • Created 50+ documentation pages
  • Discovered fabricated SDK parameters
  • Systematic remediation of capiscio-sdk-python docs
  • Created test suite (28 tests, all pass)

2025-12-01 Session 2 (Current)

  • Created this tracking document
  • Starting capiscio-core CLI verification
  • Goal: Verify all CLI commands against Go source

2025-12-01 Session 3 (capiscio-node + validate-a2a)

  • capiscio-node audit: Discovered A2AValidator is legacy/untested code
  • Architecture decision: CLI wrapper only, no TypeScript API
  • Deleted: api.md, architecture.md (unsupported internal details)
  • Rewrote: index.md, cli.md, programmatic-usage.md, scoring.md
  • Fixed: Fabricated --detailed-scores flag removed
  • Fixed: Wrong package name capiscio-clicapiscio
  • validate-a2a verified: 6 inputs, 7 outputs match action.yml exactly

2025-12-01 Session 4 (capiscio-python)

  • Audited cli.py, manager.py, pyproject.toml
  • Fixed: Removed fabricated CAPISCIO_CORE_PATH env var
  • Fixed: Removed fabricated capiscio score command from README
  • Fixed: capiscio --versioncapiscio version
  • Updated: index.md, commands.md with accurate info
  • ALL PRODUCTS NOW VERIFIED ✅

2025-12-11 Session 5 (Documentation Gap Analysis)

  • Fixed: Trust levels in trust-model.md (now 0-4 instead of 1-3)
  • Fixed: Trust levels in badges.md recipe
  • Created: capiscio-server documentation (reference/server/)
    • index.md — Overview and architecture
    • api.md — Full API reference
    • deployment.md — Docker and Kubernetes deployment
    • badge-ca.md — Certificate Authority operations
  • Created: End-to-end tutorial (tutorials/end-to-end.md)
  • Created: gRPC services documentation (reference/grpc.md)
  • Updated: CLI reference with rpc command section
  • Updated: Reference index with server and gRPC links
  • Fixed: Removed fabricated --detailed-scores flag from scoring docs

2025-01-XX Session 6 (Comprehensive Docs Audit - RFC Alignment)

  • Scope: Full audit of all docs against RFCs and actual implementations
  • CRITICAL FIXES:
    • concepts/trust-model.md: Added IAL documentation (IAL-0 vs IAL-1), complete badge claims per RFC-002 §4.3
    • concepts/enforcement.md: Fixed clock skew (5s → 60s per RFC-002 §8.1), added 10-step verification algorithm
    • reference/sdk-python/index.md: Fixed clock tolerance (5s → 60s), added REVOCATION_CACHE_MAX_STALENESS
    • reference/sdk-python/badge.md: Added Level 0 and 4 to TrustLevel, fixed BadgeClaims to include ial and key, fixed code examples to use correct claim names
    • reference/cli/index.md: Fixed trust levels (0-4 per RFC-002 §5), clarified Level 0 = Self-Signed
    • reference/server/api.md: Fixed auth docs (Clerk JWT vs X-Capiscio-Registry-Key), fixed /v1/badges/verify/v1/validate, fixed /v1/keys/v1/api-keys
    • reference/wrappers/python.md: Fixed version (0.3.0 → 2.3.1), fixed BINARY_PATH → get_binary_path()
    • reference/wrappers/node.md: Fixed version (0.3.0 → 2.3.1)
  • HEADER NAME FIXES (X-Capiscio-Signature → X-Capiscio-Badge per RFC-002 §9.1):
    • getting-started/secure/3-guard.md
    • samples.md
    • how-to/integrations/fastapi.md
  • Total issues fixed: 25+ CRITICAL and MAJOR issues

Next Steps

  1. Create tracking document
  2. Audit validate.go flags vs docs
  3. Audit key.go flags vs docs
  4. Audit badge.go flags vs docs
  5. Audit gateway.go flags vs docs
  6. Generate Go API reference with gomarkdoc
  7. Rewrite CLI reference with verified flags
  8. Create badge recipes (issue, verify, keep)
  9. Create gateway setup recipe
  10. Final CLI verification (all 28 flags match source)
  11. Verify capiscio-node docs (CLI wrapper only)
  12. Verify validate-a2a GitHub Action docs
  13. Verify capiscio-python docs
  14. Fix trust levels (0-4)
  15. Create capiscio-server docs
  16. Create end-to-end tutorial
  17. Document gRPC services
  18. Fix broken links
  19. Build and test docs site
  20. Update mkdocs.yml nav with new pages

Verification Summary

Overall Confidence Level: 95%

Products Verified

Product Method Status
capiscio-sdk-python 28 pytest tests
capiscio-core Source code audit
capiscio-node Source code audit
capiscio-python Source code audit
validate-a2a action.yml audit

CLI Flags Verified (2025-12-01)

Command Flags Status
validate 8 (+ 1 deprecated) ✅ Match
key gen 2 ✅ Match
badge issue 5 ✅ Match
badge verify 1 ✅ Match
badge keep 8 ✅ Match
gateway start 4 ✅ Match
Total 28 flags

Configuration Reference Verified

Config Class Fields Status
SimpleGuard 2 params ✅ Match simple_guard.py
SecurityConfig 6 fields + 4 presets ✅ Match config.py
DownstreamConfig 6 fields ✅ Match config.py
UpstreamConfig 6 fields ✅ Match config.py
Environment vars 10 vars ✅ Match from_env()