Skip to content

Contracts: NH/Slash → Semantic BI vertical slice v0.1#1

Merged
mdheller merged 1 commit intomainfrom
contracts/nh-slash-semantic-bi-v0.1
Feb 12, 2026
Merged

Contracts: NH/Slash → Semantic BI vertical slice v0.1#1
mdheller merged 1 commit intomainfrom
contracts/nh-slash-semantic-bi-v0.1

Conversation

@mdheller
Copy link
Member

Add three platform contracts used by semantic BI: TopicAssigned, EmbeddingComputed, LensOutput. These define the stable boundary for New-Hope + Slash-Topics integration.

Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ae906feedb

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +5 to +7
"type": "object",
"required": ["version","event_id","created_at","carrier_ref","slash_topics_pack_ref","membrane_decision_ref","topics","receipt"],
"properties": {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Disallow undeclared fields in contract payloads

These schemas define a stable integration boundary, but they never set additionalProperties: false, so JSON Schema will accept any extra keys by default; that lets producer-side field drift (or typoed aliases that downstream consumers don’t handle) pass validation unnoticed and weakens compatibility guarantees. Please make the root objects strict here (and in the sibling contract files and nested objects like receipt/inputs/outputs) so incompatible payload shapes fail fast.

Useful? React with 👍 / 👎.

"properties": {
"version": { "const": "0.1" },
"event_id": { "type": "string" },
"created_at": { "type": "string" },

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Enforce RFC3339 timestamps for created_at

created_at is currently only typed as string, so non-time values like "now" or malformed dates still validate; for BI workflows that bucket or window events by event time, this allows bad records through the contract boundary and can corrupt downstream aggregations. Add a timestamp constraint (for example format: "date-time" and corresponding validator enforcement) in this and the other new contract files.

Useful? React with 👍 / 👎.

@mdheller mdheller merged commit 48c909b into main Feb 12, 2026
6 of 7 checks passed
@mdheller mdheller deleted the contracts/nh-slash-semantic-bi-v0.1 branch February 12, 2026 01:35
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.

1 participant