# CRM AppRelease `0.19.0`

This immutable CRM AppRelease preserves the complete `0.18.0` metadata and
Integration command registrations. It additionally declares the sfcrm-owned
bounded Flow Actions handler and its three existing private Runtime
dependencies:

```text
AppMetadataView v1 + effective permissions + ExecuteFlow
```

The handler serves only active, manual, `runAtomically=true` Flow definitions
from the requesting AppInstallation's immutable Catalog view. Protected
standard-action/subflow definitions, triggered Flow, non-atomic Flow, resume,
and interview lifecycle remain outside this capability and fail closed before
Runtime execution.

- App: `io.nexuscrm.sfcrm`
- semantic version: `0.19.0`
- AppReleaseDigest:
  `sha256:22a7cac43369538966ec5c592231307a224276e7a43b532dc7e8dcc1ca9beaa7`
- MetadataBundleDigest:
  `sha256:7a8313c7d5640ffe88c09a9ef37b5b3b556bb34bd76459d74ae052197626f8e1`
- component count: `70` (unchanged)
- sfcrm provided capability count: `12`
- source input revision: `103e82b686b964995d341122d538a675cb472439`
- source tree digest:
  `sha256:9be5cae367c1fd0f80f33aa6b35b4fe2d44d3febbde0082bfc83a33706ce3707`
- contract module: `v0.2.21`

This release adds no RPC, Runtime executor, serving binary, Gateway, metadata
authority, process-local fallback, deployment configuration, or production
activation. The sfcrm AppService continues to own Salesforce HTTP and wire
semantics; Runtime remains app-blind and enforces the final bounded eligibility
and same-transaction replay contract.

`app-package.json` is canonical and reproducible from the exact source input.
`publisher-attestation.json` binds that package to its source revision.
`publisher-public-key.json` is verification material only; it does not create
publisher trust.

Rebuild and verify:

```bash
git worktree add /tmp/nexuscrm-app-packs-0.19.0-source \
  103e82b686b964995d341122d538a675cb472439
cd tools/crm-app-release
GOWORK=off go test ./... -count=1
GOWORK=off go run . build \
  --pack-root /tmp/nexuscrm-app-packs-0.19.0-source/salesforce-crm-standard \
  --output /tmp/crm-app-package-0.19.0.json
cmp /tmp/crm-app-package-0.19.0.json \
  ../../releases/io.nexuscrm.sfcrm/0.19.0/app-package.json
GOWORK=off go run . verify \
  --package ../../releases/io.nexuscrm.sfcrm/0.19.0/app-package.json \
  --attestation ../../releases/io.nexuscrm.sfcrm/0.19.0/publisher-attestation.json \
  --public-key ../../releases/io.nexuscrm.sfcrm/0.19.0/publisher-public-key.json
```
