Release binding
Name the release before the patch.
A target-specific baseline gives every later check an exact identity. The project binding contains safe scope identifiers, not credentials or signing material.
hyfens init → hyfens release androidProduct
Hyfens does not ask developers to author bytecode, function IDs, source-unit files, or a second UI layer.
# from a Flutter project
$ hyfens doctor
$ hyfens init
$ hyfens release android
$ hyfens patch android
$ hyfens verify
$ hyfens deployBuild-time instrumentation supports a declared subset of ordinary Dart and Flutter source while normal Flutter AOT remains the fallback. The runtime interprets only a bounded, signed payload with capabilities owned by the release.
If the change needs a normal store release, the command surface says so. That stop is a correctness feature.
Release binding
A target-specific baseline gives every later check an exact identity. The project binding contains safe scope identifiers, not credentials or signing material.
hyfens init → hyfens release androidChange analysis
Analyze ordinary source against the release. Supported changes can continue. Native, dependency, or unsupported inputs stop with a clear diagnostic.
hyfens analyzeArtifact trust
Patch Format v1 carries the signed artifact boundary. Inspect and verify the digest, signature, capabilities, and release binding before deployment.
hyfens patch android → hyfens verifyControlled delivery
The active profile selects the endpoint and organization, application, and environment scope. Managed and self-hosted delivery use the same CLI and identity authority.
hyfens profile current → hyfens deployNative code, manifests, permissions, entitlements, dependency changes, and unsupported Dart or Flutter constructs are outside the patch boundary. Use a normal store release for those edits.
hyfens analyze
change: unsupported input
result: store-release-requiredUnderstand what the device checks, what the service can do, and what remains outside the claim.