Developers#

Welcome. This section is for contributors developing and maintaining ArgDigest itself.

If your goal is to integrate ArgDigest into your own library, start in the User section.

What the library does#

ArgDigest covers two axes, plus the renaming that has to happen before either can judge anything:

Question

Consumer declares

Normalization

is this keyword an alias of a canonical name?

AliasTable

Axis 1 — function contract

may this function receive this argument at all, and does it have what it needs?

FunctionContract, Domain

Axis 2 — value contract

is this argument’s value valid and in canonical form?

one digester per argument name

All three follow the same shape: the consumer declares data in a package it names, and ArgDigest owns discovery, resolution and diagnostics. See Implementation Patterns, pattern 5.

Developer Path#

  1. Contributing Workflow

  2. Development Environment

  3. Architecture

  4. Decorator Design

  5. Registry and Pipelines

  6. Implementation Patterns

  7. Testing and CI

  8. API Stability

  9. Compatibility Matrix

  10. Deprecation and Support

  11. SMonitor for Contributors

  12. Editorial Guide

  13. Release and Versioning

  14. Contributor Checklist

  15. AI Agent Templates

Canonical References#