Skip to content

AMPR-180 #508: Emission protocol foundation (Wave 0)#518

Merged
wow-miley merged 2 commits into
mainfrom
miley/ampr-180-emission-protocol-foundation-domain-types-emissionevent
May 31, 2026
Merged

AMPR-180 #508: Emission protocol foundation (Wave 0)#518
wow-miley merged 2 commits into
mainfrom
miley/ampr-180-emission-protocol-foundation-domain-types-emissionevent

Conversation

@wow-miley
Copy link
Copy Markdown
Contributor

Closes #508 (Linear AMPR-180).

Summary

I introduce the Emission domain object and EmissionEvent family in commonMain, with four core kinds (Prose, Decision, Confirmation, Sensor), the shared Confidence enum migrated through PerceptionEvaluator/OutcomeEvaluator, a content-deterministic dedup key via inputDigest (SHA-256/16 hex) kept separate from random EmissionIds, full EmissionProvenance, and stable @SerialNames. EmissionEvent.{Produced,Resolved} are registered on EventRegistry and categorized in SignificanceAwareEventLogger; the emission and emission-dedup concept cells (plus the _index entry) document the CHI primitive.

Test plan

  • `./gradlew :ampere-core:jvmTest` — 33 new tests pass (serialization round-trip per payload variant, bus delivery, registry membership, digest determinism, Confidence parsing)
  • `./gradlew :ampere-core:ktlintFormat` clean
  • `./gradlew :ampere-core:compileCommonMainKotlinMetadata` passes

🤖 Generated with Claude Code

I introduce the Emission domain object and EmissionEvent family in
commonMain, with four core kinds (Prose, Decision, Confirmation, Sensor),
the shared Confidence enum, a content-deterministic dedup key
(inputDigest, SHA-256/16 hex), full provenance, and stable @SerialNames.
PerceptionEvaluator and OutcomeEvaluator now parse confidence through
the shared enum, EmissionEvent.{Produced,Resolved} are registered on the
EventRegistry, and two new concept cells (emission, emission-dedup) plus
the _index entry document the CHI primitive.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 31, 2026

Concept staleness check — 2 warning(s).

These changes touched files listed under a concept's tracked_sources without updating the concept file. Either update the concept (and bump last_verified) or include a Concept-Verified: <ConceptName> trailer in a commit on this PR.

Validator output
⚠ Concept 'EventSerialBus' may be stale: ampere-core/src/commonMain/kotlin/link/socket/ampere/agents/events/utils/SignificanceAwareEventLogger.kt matches tracked_sources pattern ampere-core/src/commonMain/kotlin/link/socket/ampere/agents/events/utils/SignificanceAwareEventLogger.kt but docs/concepts/event-serial-bus.md was not modified.
⚠ Concept 'PropelLoop' may be stale: ampere-core/src/commonMain/kotlin/link/socket/ampere/agents/domain/reasoning/Confidence.kt matches tracked_sources pattern ampere-core/src/commonMain/kotlin/link/socket/ampere/agents/domain/reasoning/** but docs/concepts/propel-loop.md was not modified.

validate-concepts: 2 warning(s). Validator informs; never blocks.

I add the EmissionEvent.{Produced,Resolved} branches to the two ampere-cli
when expressions that compile against the Event sealed hierarchy
(EventCategorizer, EventRenderer) so CI compiles again. Both new events
categorize as SIGNIFICANT and render with a 📡 icon, mirroring the
ampere-core SignificanceAwareEventLogger.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@wow-miley wow-miley merged commit 0c1dd5b into main May 31, 2026
3 checks passed
@wow-miley wow-miley deleted the miley/ampr-180-emission-protocol-foundation-domain-types-emissionevent branch May 31, 2026 02:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Emission protocol foundation — domain types, EmissionEvent family, Confidence enum (Wave 0)

1 participant