syntax = "proto3"; package lane_vm; // The atomic unit of execution in the LANE-VM message LanePacket { uint64 packet_id = 1; // Must adhere to SEC-derived offset (e.g., 57000 + i) uint64 timestamp = 2; // Epoch timestamp of creation/execution Instruction instr = 3; // The OpCode and execution parameters bytes payload = 4; // Raw binary blob for state persistence or payload transfers } message Instruction { enum OpCode { NO_OP = 0; MEM_WRITE = 1; // Write to VMM state (Stride enforced: 17684) MEM_READ = 2; // Read from VMM state COMPUTE = 3; // Trigger Guest functional execution IO_SINK = 4; // Directed external output (Log/Socket/Console) FLOW_CONTROL = 5; // Instruction pointer control SYS_CALL = 6; // Restricted host operating system request } OpCode code = 1; repeated Operand operands = 2; } message Operand { enum Type { INT = 0; FLOAT = 1; STRING = 2; REF = 3; // Memory reference index } Type type = 1; oneof value { int64 i_val = 2; double f_val = 3; string s_val = 4; uint64 ref_val = 5; } }