codegen: resolve (tarantool.lua_package) via global type registry The custom file option was being dropped silently: protoc encoded it correctly into the FileDescriptorProto, but protobuf-go parked the unknown extension in the message's unknown-fields tail because E_LuaPackage was never registered with protoregistry.GlobalTypes. As a result proto.GetExtension returned "" and every override the README documented was a no-op — every caller fell through to the default "<pkg>.<file>_pb" path resolution. Register E_LuaPackage in init() and add a luatest regression that asserts both the output path and the cross-file require strings honor the option, parameterized over both codegen modes.
Initial commit: protoc-gen-tarantool plugin + pb runtime A protoc plugin (Go) and a pure-Lua + LuaJIT-FFI runtime that give Tarantool a complete proto3 + gRPC stack. Two codegen modes (full inline / runtime descriptor), 226-test luatest suite, 18-fixture mainline-protoc interop corpus, JSON codec, well-known types, gRPC client/server factories, runtime .proto parser, microbench harness with allocation regression gate. Covers PLAN.md M1-M5. Module is `pb` (not `protobuf`) to avoid colliding with Tarantool's built-in encode-only `protobuf` module.