MINT:WORK bridges LEDGER to WALLET. Every .idf gradient mints COIN.
git commit
→ pre-commit hook
→ magic commit <GOV> GIT (creates .idf, returns gradient + idf_id)
→ if gradient > 0: vault mint --user <USER> --amount <gradient> (MINT:WORK)
→ if gradient < 0: vault drift --user <USER> --amount <abs> (DEBIT:DRIFT)
→ if identity unresolved: WARN to stderr — LEDGER recorded, WALLET skipped
gradient = to_bits - from_bits
MINT:WORK amount = gradient (when gradient > 0)
DEBIT:DRIFT amount = abs(gradient) (when gradient < 0)
gradient = 0 → no COIN minted (no marginal work)
The amount MUST be the delta (gradient), NOT the absolute score. A commit to a 255-scope that changes nothing produces gradient=0 and mints zero COIN. Only marginal governance improvement earns COIN.
{
"id": "<12-char SHA256>",
"prev": "<previous event id or 000000000000>",
"ts": "<ISO 8601 UTC>",
"event": "MINT:WORK | DEBIT:DRIFT",
"user": "<USER principal>",
"amount": <abs(gradient)>,
"delta": <gradient (signed)>,
"work_ref": "idf:<16-char hex idf_id>",
"service": "LEDGER",
"product": "WORK",
"note": "git-commit:<domain>",
"signature": "<Ed25519 hex>"
}
RUNNER task completions mint COIN at fixed rates per task category:
``
RUNNER task completed with evidence
→ vault mint –user
`
work_ref: “task:RUNNER:
Dedup: scan USER TIMELINE for existing event where work_ref` matches. If found, skip.
| Category | COIN |
|---|---|
| SIGNS | 3 |
| LOCKBOX | 3 |
| SHOWING | 5 |
| CMA | 5 |
| OPEN_HOUSE | 8 |
| STAGING | 8 |
| PHOTOS | 10 |
| INSPECTION | 10 |
| APPRAISAL | 10 |
| TITLE | 10 |
| CONTRACT | 15 |
| CLOSING | 25 |
``
~/.canonic/VAULT/USERS/{USER}/identity.json
{
“user”: “
Resolution (git): vault resolve-git-user –email
Resolution (RUNNER): vault resolve-user –linkedin
Distributed users (e.g. DEXTER/USERS/robert-glover/) may have no git identity. LinkedIn serves as primary KYC anchor until GitHub is established.
Before minting, scan USER TIMELINE for existing event where work_ref contains the idf_id (git) or task-ref (RUNNER). If found, skip silently.
vault reconcile walks the full LEDGER chain and reports unreconciled .idf entries (LEDGER COIN not yet in WALLETs). Optional –backfill flag mints missing entries.
| *MINT | SPEC | SERVICES* |