Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
220 changes: 1 addition & 219 deletions .l9/baselines/packet-envelope.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,222 +5,4 @@
# Changes to this file require CODEOWNERS review (.github/CODEOWNERS).
schema_version: 1.0.0
gate: pre-commit/packet-envelope-prohibited
entries:
- id: packet-envelope/chassis-pii-py-string-annotation
gate: pre-commit/packet-envelope-prohibited
rule: packet-envelope-prohibited
fingerprint: 63aab1cc36756b7efd32cdbfd8eda3cc2bb8a9f2cd025c480bedcbbb2ba16882
path: chassis/pii.py
owner: '@cryptoxdog'
issue: Quantum-L9/Cognitive.Engine.Graphs#138
introduced_before: af986d0
expires: '2026-10-21'
removal_condition: migrated-to:TransportPacket
root_cause_group: packet-envelope-migration
evidence: chassis/pii.py::string-annotation:For PacketEnvelope.security.pii_fields.
- id: packet-envelope/engine-packet-bridge-py-import-from
gate: pre-commit/packet-envelope-prohibited
rule: packet-envelope-prohibited
fingerprint: 7b4f21c4ddbeea986a8e93dbed41020897e5179bafe50c2eb9358bc7a7c972ec
path: engine/packet/bridge.py
owner: '@cryptoxdog'
issue: Quantum-L9/Cognitive.Engine.Graphs#138
introduced_before: af986d0
expires: '2026-10-21'
removal_condition: migrated-to:TransportPacket
root_cause_group: packet-envelope-migration
evidence: engine/packet/bridge.py::import-from:l9_core.models.PacketEnvelope
- id: packet-envelope/engine-packet-bridge-py-name-ref
gate: pre-commit/packet-envelope-prohibited
rule: packet-envelope-prohibited
fingerprint: e35d774a3a4252589559e7b41322d3ac3ce5af5bf2bda71ceed9ed80c42d1a72
path: engine/packet/bridge.py
owner: '@cryptoxdog'
issue: Quantum-L9/Cognitive.Engine.Graphs#138
introduced_before: af986d0
expires: '2026-10-21'
removal_condition: migrated-to:TransportPacket
root_cause_group: packet-envelope-migration
evidence: engine/packet/bridge.py::name-ref:PacketEnvelope
- id: packet-envelope/engine-packet-chassis-contract-py-import-from
gate: pre-commit/packet-envelope-prohibited
rule: packet-envelope-prohibited
fingerprint: 414a2a3cf1dcd99479886e07d23d3d8964cf1996a9f2bf0be80fb2def776bdd7
path: engine/packet/chassis_contract.py
owner: '@cryptoxdog'
issue: Quantum-L9/Cognitive.Engine.Graphs#138
introduced_before: af986d0
expires: '2026-10-21'
removal_condition: migrated-to:TransportPacket
root_cause_group: packet-envelope-migration
evidence: engine/packet/chassis_contract.py::import-from:engine.packet.packet_envelope.PacketEnvelope
- id: packet-envelope/engine-packet-chassis-contract-py-name-ref
gate: pre-commit/packet-envelope-prohibited
rule: packet-envelope-prohibited
fingerprint: 8e9659f3c6354ea6ad139f4040f27e5437c5a9b71e8ff5f455a271e31eac7a43
path: engine/packet/chassis_contract.py
owner: '@cryptoxdog'
issue: Quantum-L9/Cognitive.Engine.Graphs#138
introduced_before: af986d0
expires: '2026-10-21'
removal_condition: migrated-to:TransportPacket
root_cause_group: packet-envelope-migration
evidence: engine/packet/chassis_contract.py::name-ref:PacketEnvelope
- id: packet-envelope/engine-packet-init-py-import-from
gate: pre-commit/packet-envelope-prohibited
rule: packet-envelope-prohibited
fingerprint: 61868c6e8e23cc8a4cef5aa492188293ecbaf1d9faec3bd0445414302ded92eb
path: engine/packet/__init__.py
owner: '@cryptoxdog'
issue: Quantum-L9/Cognitive.Engine.Graphs#138
introduced_before: af986d0
expires: '2026-10-21'
removal_condition: migrated-to:TransportPacket
root_cause_group: packet-envelope-migration
evidence: engine/packet/__init__.py::import-from:engine.packet.packet_envelope.PacketEnvelope
- id: packet-envelope/engine-packet-init-py-string-annotation
gate: pre-commit/packet-envelope-prohibited
rule: packet-envelope-prohibited
fingerprint: db1ebe43eae9624dab23bd5f0d15ee97756b2768d2edf5afd1e7e52ba9150ff4
path: engine/packet/__init__.py
owner: '@cryptoxdog'
issue: Quantum-L9/Cognitive.Engine.Graphs#138
introduced_before: af986d0
expires: '2026-10-21'
removal_condition: migrated-to:TransportPacket
root_cause_group: packet-envelope-migration
evidence: engine/packet/__init__.py::string-annotation:PacketEnvelope
- id: packet-envelope/tests-compliance-test-hipaa-py-string-annotation
gate: pre-commit/packet-envelope-prohibited
rule: packet-envelope-prohibited
fingerprint: af1cb57d9fa8ae9571a30700b262a32b0a8b05b4ea2b83e352083e2b8375f610
path: tests/compliance/test_hipaa.py
owner: '@cryptoxdog'
issue: Quantum-L9/Cognitive.Engine.Graphs#138
introduced_before: af986d0
expires: '2026-10-21'
removal_condition: migrated-to:TransportPacket
root_cause_group: packet-envelope-migration
evidence: tests/compliance/test_hipaa.py::string-annotation:get_pii_field_paths returns tuple for PacketEnvelope.
- id: packet-envelope/tests-unit-test-chassis-contract-py-import-from
gate: pre-commit/packet-envelope-prohibited
rule: packet-envelope-prohibited
fingerprint: 203bbd960a496fe4063a34ee4733429c0e20fe950ed45a4f7ce8c634faa5f675
path: tests/unit/test_chassis_contract.py
owner: '@cryptoxdog'
issue: Quantum-L9/Cognitive.Engine.Graphs#138
introduced_before: af986d0
expires: '2026-10-21'
removal_condition: migrated-to:TransportPacket
root_cause_group: packet-envelope-migration
evidence: tests/unit/test_chassis_contract.py::import-from:engine.packet.packet_envelope.PacketEnvelope
- id: packet-envelope/tests-unit-test-chassis-contract-py-name-ref
gate: pre-commit/packet-envelope-prohibited
rule: packet-envelope-prohibited
fingerprint: 7e33b5daae31ef518177c3c534f8a60d891006789a6738ed61bd0dd24ac623ff
path: tests/unit/test_chassis_contract.py
owner: '@cryptoxdog'
issue: Quantum-L9/Cognitive.Engine.Graphs#138
introduced_before: af986d0
expires: '2026-10-21'
removal_condition: migrated-to:TransportPacket
root_cause_group: packet-envelope-migration
evidence: tests/unit/test_chassis_contract.py::name-ref:PacketEnvelope
- id: packet-envelope/tests-unit-test-chassis-contract-py-string-annotation
gate: pre-commit/packet-envelope-prohibited
rule: packet-envelope-prohibited
fingerprint: a1e2c583057edf1d051d5059b8585df8107f7b5d32395bc8198f358a4a5bf409
path: tests/unit/test_chassis_contract.py
owner: '@cryptoxdog'
issue: Quantum-L9/Cognitive.Engine.Graphs#138
introduced_before: af986d0
expires: '2026-10-21'
removal_condition: migrated-to:TransportPacket
root_cause_group: packet-envelope-migration
evidence: tests/unit/test_chassis_contract.py::string-annotation:inflate_ingress creates a REQUEST PacketEnvelope.
- id: packet-envelope/tests-unit-test-packet-bridge-py-import-from
gate: pre-commit/packet-envelope-prohibited
rule: packet-envelope-prohibited
fingerprint: 408b19b2fb706e53112dc6982ae6af0989cdba21c0e681242a6f368f920b6d9c
path: tests/unit/test_packet_bridge.py
owner: '@cryptoxdog'
issue: Quantum-L9/Cognitive.Engine.Graphs#138
introduced_before: af986d0
expires: '2026-10-21'
removal_condition: migrated-to:TransportPacket
root_cause_group: packet-envelope-migration
evidence: tests/unit/test_packet_bridge.py::import-from:engine.packet.packet_envelope.PacketEnvelope
- id: packet-envelope/tests-unit-test-packet-bridge-py-name-ref
gate: pre-commit/packet-envelope-prohibited
rule: packet-envelope-prohibited
fingerprint: 3895cae07b366e8aa3f09abb09a6fca614557d108546a727e9b311152544e62a
path: tests/unit/test_packet_bridge.py
owner: '@cryptoxdog'
issue: Quantum-L9/Cognitive.Engine.Graphs#138
introduced_before: af986d0
expires: '2026-10-21'
removal_condition: migrated-to:TransportPacket
root_cause_group: packet-envelope-migration
evidence: tests/unit/test_packet_bridge.py::name-ref:PacketEnvelope
- id: packet-envelope/tests-unit-test-packet-bridge-py-string-annotation
gate: pre-commit/packet-envelope-prohibited
rule: packet-envelope-prohibited
fingerprint: 2fa54a6107b7c8dc1cecaf781cc5dd9afe5533bc36621d4ac883f70656156c88
path: tests/unit/test_packet_bridge.py
owner: '@cryptoxdog'
issue: Quantum-L9/Cognitive.Engine.Graphs#138
introduced_before: af986d0
expires: '2026-10-21'
removal_condition: migrated-to:TransportPacket
root_cause_group: packet-envelope-migration
evidence: tests/unit/test_packet_bridge.py::string-annotation:PacketEnvelope content hash is deterministic
for same payload.
- id: packet-envelope/tests-unit-test-packet-bridge-py-string-annotation-2
gate: pre-commit/packet-envelope-prohibited
rule: packet-envelope-prohibited
fingerprint: 3df2d5145062a7cfd8246cddb48bc30d7a26213756c2f856dafedbbda25115cf
path: tests/unit/test_packet_bridge.py
owner: '@cryptoxdog'
issue: Quantum-L9/Cognitive.Engine.Graphs#138
introduced_before: af986d0
expires: '2026-10-21'
removal_condition: migrated-to:TransportPacket
root_cause_group: packet-envelope-migration
evidence: tests/unit/test_packet_bridge.py::string-annotation:PacketEnvelope hash changes when payload
differs.
- id: packet-envelope/tests-unit-test-packet-envelope-py-import-from
gate: pre-commit/packet-envelope-prohibited
rule: packet-envelope-prohibited
fingerprint: c19363071291d349dbc94fa7b3d96fc78d3480b332094e8eb75a5ccf45b408fb
path: tests/unit/test_packet_envelope.py
owner: '@cryptoxdog'
issue: Quantum-L9/Cognitive.Engine.Graphs#138
introduced_before: af986d0
expires: '2026-10-21'
removal_condition: migrated-to:TransportPacket
root_cause_group: packet-envelope-migration
evidence: tests/unit/test_packet_envelope.py::import-from:engine.packet.packet_envelope.PacketEnvelope
- id: packet-envelope/tests-unit-test-packet-envelope-py-name-ref
gate: pre-commit/packet-envelope-prohibited
rule: packet-envelope-prohibited
fingerprint: 739a949ea7a27f6790d4e44104c759232158f58cff0967af205c87c85cc54f68
path: tests/unit/test_packet_envelope.py
owner: '@cryptoxdog'
issue: Quantum-L9/Cognitive.Engine.Graphs#138
introduced_before: af986d0
expires: '2026-10-21'
removal_condition: migrated-to:TransportPacket
root_cause_group: packet-envelope-migration
evidence: tests/unit/test_packet_envelope.py::name-ref:PacketEnvelope
- id: packet-envelope/tools-contract-scanner-py-string-annotation
gate: pre-commit/packet-envelope-prohibited
rule: packet-envelope-prohibited
fingerprint: 8cd932a0e047bad7a8266c886f5d587f598942f079598628676ba6f0cee5a893
path: tools/contract_scanner.py
owner: '@cryptoxdog'
issue: Quantum-L9/Cognitive.Engine.Graphs#138
introduced_before: af986d0
expires: '2026-10-21'
removal_condition: migrated-to:TransportPacket
root_cause_group: packet-envelope-migration
evidence: tools/contract_scanner.py::string-annotation:from engine.packet.packet_envelope import PacketEnvelope
entries: []
8 changes: 4 additions & 4 deletions TODO.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
## Issue unblock (session reference)

**Cluster:** CEG#32 (mypy chassis) + CEG#33 (YAML) — closed 2026-08-11 as already clean on main
**Owning fix:** none (evidence close; `mypy chassis/` clean; listed YAML parse OK)
**Next:** optional CI hygiene — drop `--exclude chassis` from mypy workflow steps (CI_PIPELINE; not done)
**Pickup:** Graphiti PICKUP written 2026-08-11
**Cluster:** CEG#138 CLOSED on PR 248; CEG#139 CLOSED already-fixed
**Owning fix:** https://github.com/Quantum-L9/Cognitive.Engine.Graphs/pull/248
**Next:** pause issues for this repo; PR remediator later
**Pickup:** Graphiti PICKUP written 2026-08-30

<!-- L9_META
l9_schema: 1
Expand Down
2 changes: 1 addition & 1 deletion chassis/pii.py
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ def detect(self, payload: dict[str, Any], prefix: str = "") -> list[PIIDetection
return results

def get_pii_paths(self, payload: dict[str, Any]) -> tuple[str, ...]:
"""For PacketEnvelope.security.pii_fields."""
"""For TransportPacket.security.pii_fields."""
return tuple(d.field_path for d in self.detect(payload))

def mask(self, payload: dict[str, Any], fields: list[str] | None = None) -> dict[str, Any]:
Expand Down
7 changes: 4 additions & 3 deletions engine/packet/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,11 @@
status: active
--- /L9_META ---

engine/packet — PacketEnvelope immutable communication protocol.
engine/packet — TransportPacket chassis bridge.
"""

from constellation_node_sdk import TransportPacket

from engine.packet.chassis_contract import deflate_egress, inflate_ingress
from engine.packet.packet_envelope import PacketEnvelope

__all__ = ["PacketEnvelope", "deflate_egress", "inflate_ingress"]
__all__ = ["TransportPacket", "deflate_egress", "inflate_ingress"]
49 changes: 39 additions & 10 deletions engine/packet/bridge.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,29 +14,58 @@

from typing import Any

from l9_core.models import PacketEnvelope, make_root_packet
from constellation_node_sdk import TransportPacket, create_transport_packet

_ALLOWED_PACKET_TYPES = {
"request",
"response",
"event",
"command",
"delegation",
"failure",
"replay_request",
"replay_response",
"compensation",
}


class PacketBridge:
def inflate_ingress(
self, *, tenant_id: str, actor: str, packet_type: str, payload: dict[str, Any]
) -> PacketEnvelope:
return make_root_packet(packet_type=packet_type, tenant_id=tenant_id, actor=actor, payload=payload)
) -> TransportPacket:
header_type = packet_type if packet_type in _ALLOWED_PACKET_TYPES else "request"
packet = create_transport_packet(
action=packet_type,
payload=payload,
tenant={
"actor": actor,
"on_behalf_of": actor,
"originator": actor,
"org_id": tenant_id,
"user_id": None,
},
source_node="graph",
destination_node="graph",
reply_to="graph",
)
if header_type != packet.header.packet_type:
return packet.derive(packet_type=header_type)
return packet

def attach_entity_semantics(
self,
*,
packet: PacketEnvelope,
packet: TransportPacket,
entity_type: str,
canonical_entity_type: str,
) -> PacketEnvelope:
) -> TransportPacket:
payload = dict(packet.payload)
payload["entity_type"] = entity_type
payload["canonical_entity_type"] = canonical_entity_type
return packet.derive(packet_type=packet.packet_type, payload=payload)
return packet.derive(payload=payload)

def decision_packet(self, *, packet: PacketEnvelope, decision: dict[str, Any]) -> PacketEnvelope:
return packet.derive(packet_type="routing_decision", payload=decision)
def decision_packet(self, *, packet: TransportPacket, decision: dict[str, Any]) -> TransportPacket:
return packet.derive(packet_type="event", action="routing_decision", payload=decision)

def outcome_packet(self, *, packet: PacketEnvelope, outcome: dict[str, Any]) -> PacketEnvelope:
return packet.derive(packet_type="outcome_event", payload=outcome)
def outcome_packet(self, *, packet: TransportPacket, outcome: dict[str, Any]) -> TransportPacket:
return packet.derive(packet_type="event", action="outcome_event", payload=outcome)
Loading
Loading