From b88781b8af75106213e371eda9da75bd02206a5c Mon Sep 17 00:00:00 2001 From: Priec Date: Tue, 1 Sep 2026 16:55:47 +0200 Subject: [PATCH] fixesA --- client | 2 +- client-gui2 | 2 +- common/proto/table_definition.proto | 7 ++++--- common/src/proto/descriptor.bin | Bin 228972 -> 229060 bytes common/src/proto/komp_ac.table_definition.rs | 7 ++++--- komp-app/src/grpc.rs | 14 ++++++++++++++ server | 2 +- 7 files changed, 25 insertions(+), 9 deletions(-) diff --git a/client b/client index 99a464fe..bbf636fb 160000 --- a/client +++ b/client @@ -1 +1 @@ -Subproject commit 99a464febbb7e333b4dba7f865199dedc4d2510b +Subproject commit bbf636fbeff1fe929f3dfdeef986c50fa1a52cd5 diff --git a/client-gui2 b/client-gui2 index 9839994e..ae472514 160000 --- a/client-gui2 +++ b/client-gui2 @@ -1 +1 @@ -Subproject commit 9839994ea55eb2b441b196eeb62cf15623de18ff +Subproject commit ae4725144becf6920f4a03b976125ede2aa4863f diff --git a/common/proto/table_definition.proto b/common/proto/table_definition.proto index 3755d503..3a03f9ec 100644 --- a/common/proto/table_definition.proto +++ b/common/proto/table_definition.proto @@ -542,8 +542,8 @@ message ColumnBehavior { // This is not an authorization boundary; data APIs still expose the column. bool hidden_from_forms = 6; - // Current public aliases for stable option values. Identity aliases equal the - // canonical value. Once renamed, public writes must use the current alias. + // Current public option names. For a renamed option, both fields contain its + // alias; the stored value is never disclosed. Public writes use the alias. repeated OptionValueAlias option_value_aliases = 7; } @@ -581,7 +581,8 @@ message SetColumnPresentationResponse { int64 row_version = 4; } -// One stable machine value and its optional user-visible/input alias. +// One public option name. `value` identifies the option by its current public +// alias and `alias` is its desired public alias; stored values remain internal. message OptionValueAlias { string value = 1; string alias = 2; diff --git a/common/src/proto/descriptor.bin b/common/src/proto/descriptor.bin index ff1141c947209aeea62ced40edd95cf6bd510896..83f911b8603813d70d172d59f87fabe2bffb4b5e 100644 GIT binary patch delta 3234 zcmZveUu;yz6~_0TJ#)P~YnS-ivB}!t*HhKSSf2WI9wboZ#I>e3#MEd83pp{;P6<% z6w9Vmc(pKU%uunsXLzJs7|NUPg&V#$TC5bxW~^KgZo2hhx~Zzab2M>}=bqr$U)V_> zcFcE6h5yrH-s}o?*ky`CI7AUmm4of0W9;51jhQ`PIb+nP87vK%T|vvh%fZ5-Lb-^x zt9GmCK#hkf!;ZbdiA$BjXlZabuXRetxySMN1SeMNW;onKF^^9&wdoeEM5#a~ti;-r zocx-VagnWFggRc8=j*Hk7Sgf~*!eo^fSnInV&l0VaqO?`1RWWy{D>24g0ehvE7|Jg2$_FAAv!|F=MyzxMX<6y$6eq*88j_AqaYtu_lEBpQ{86ng5_!>jnjx^4 zY#N}@1*GjlJiWw;Fb$Z+zL&x@5NAF2GROWFd78z_%huAYSbD|g6AD!!LtnB~6;H3& zfMObDuh@KM<>X7YBPg(tmK9HzY(6mybjjv3E0!)>OQC>5hKGR!x-6FNl;;>4?6UPV zE9x_*Re`5aU?Ia4K!W{@o5F_%GFaTzt)ItDX2rv+zJ7#Ws9vpaC*EDPdBhqZS8X11 zp8Gk+{t>C+IOeE|+3PlsxxhQf&^yRr zHp(L;*z1xH0y1uKKN<^yVVk9<@V!~C}twMYUW0KBDA&GH0@LL-e5 zU?BeuuTTiH2YvsW^rbmiukK*cL8(3whdXOM_mGM$Pfu>9Upw9*mFUqsam2OpnCBi= z^r=6zg`W2gE8VXD>}Xder0FC6i7j-Z?}%cpSLmj27~36DsTK7BIB-OHZThtc#DWQb z?lIc8aiS5F+nZ3Swi+nbO(@*ob-N{cKI)G?PB%9mRh+0TloK9R_!8P4B<4qje3zm< zF)%s(^C##br*EKJ^=8T z%I5UG2*jf`$S>5Ou9!&1rF8I|g890Gkt;os#C@yJT;@#6G* z+v$(aQ;Uk5YX)fC>Y{4tt`DHvqFR-&51`hf+R&%B$)hLF*OLGKv$Q?Gq@q6t45G@C fN`=2Mkf^bwI delta 3156 zcmY*bZEO_R72Uae-|XzOjq%tqWNq;5E|9277J&&dBq@l1OJb@>Ayr6Ksa?!QS;-jc zT_-|{v~?ANqEw;3IwC|us;h`!NJvGNP%Zy)MR1BiKm`FDFewqlgtQTgT!~mccV^!1 z_UC!;o^$Uz@65;Kk4^U9^OUzg9X5Gq zs8~jiy~CxlH(V+R*Xs}G7+d@k`c_qTYT_=}{)}Uvvz6Kgoq`!>Z@&MnB4E(L%Mb4H zise!?BpO3+=;^nMr6NXOT^!s$Tn-1#Y2BdX+-14^89PgLBaG;xn9FCGT6L3Ff>Zz< zU5PM?&vJ5+*^UcraU(7^r)pdaTtFwPwSwI$)dF=Yq!N3seU4-QWGk4+L*+SkRtBn` zOf=0EN(DNAkexQNfGD2kNVoX8`Y=sYLGvjT#8p4*p1 zRC4(OQ+q^ROW*=0B23_3V5h}Ea4&G%WBLygCyxLx`D!hFRJp{YqoO!Mc8ME041~lb z?#vn}9A5QA)Sg|w%#@Bc8QlR*cLwz`JDp}1)XUuEfl8cq?JFFciM*_&QF?`)Re@|; z%)Dx@2ne!(cAx`@+N+!hZx;}E`3K)6`80;n&M@r)57u?#WE0U@- z!OUyMOdxOp!_xqQd(C(W2<|oUGNb}sXL>Rcj>8wg(9$%CrPqz6fKa+_ECr0a72wFz zG=Y1=qyY$10GcVp(;MuBX}~V}-U!n`oN?`&9Q!)*G=s{U#?p*fdW)lY0znlp^d&xZ>%o$tQL}oi+K)h^4oUr9hwphKB(J^|o00hCH{x z;NCW#W(0l3v@Gxx2wcE01%Tjw#fk8t0St;eI`vN6WJWx^gIuPz`P*}})<5zLEw5m~ zG!_@{m}H_FYOn#E9ib;;(AyN z2rjT0SzNqtT*Pir4Hwr0ZQ=N{DBiFXf70<(d459Gc#==Ezut&_k0sK=ghnnR`!OPAlY8^Zue9dVlSFjUzVA zo3Nn$u6;z|eWjCRLVLvw8b4jfZ%t9~aUqF~ftwuug` z8?7hG?TxC2)+$k~8&$Z!Inxp|ANQv=(YNc4D|V`da>C;ZA3-yNF?cGsfpMSIjxel!EA_}R*$Fft_$xe;qtiu{#N=$_jo-q0phqy)((&Waa<1Y zYD9Egp70lKqu16=)Ds;LCscBIb!-R336;+3&&}9LmnZ!{ZKHGRC+lxG3Ff3~SX^Z$ z!JL$bW=qs9SW>Y(RHPHMP_) zL3v89@i$dEil+VXpV96O)BjJG;7zNhC3SR(-n2?}=u(xA>|OMCZKvU$i^|q@wUWMz zs-d%f3G|B!KQrU;$V=_=%$RzKCaf(piW{pAXx#9OYU->lKy5}X%heX3HKW#a>t1;v w<*A$X?LOL`n^n;-1Qww(s~W=p8bD~ws`gCqZ3KkE?4fu2Xzbm-`1bDq0d&y6jQ{`u diff --git a/common/src/proto/komp_ac.table_definition.rs b/common/src/proto/komp_ac.table_definition.rs index 587bda7d..8df59103 100644 --- a/common/src/proto/komp_ac.table_definition.rs +++ b/common/src/proto/komp_ac.table_definition.rs @@ -563,8 +563,8 @@ pub struct ColumnBehavior { /// This is not an authorization boundary; data APIs still expose the column. #[prost(bool, tag = "6")] pub hidden_from_forms: bool, - /// Current public aliases for stable option values. Identity aliases equal the - /// canonical value. Once renamed, public writes must use the current alias. + /// Current public option names. For a renamed option, both fields contain its + /// alias; the stored value is never disclosed. Public writes use the alias. #[prost(message, repeated, tag = "7")] pub option_value_aliases: ::prost::alloc::vec::Vec, } @@ -621,7 +621,8 @@ pub struct SetColumnPresentationResponse { #[prost(int64, tag = "4")] pub row_version: i64, } -/// One stable machine value and its optional user-visible/input alias. +/// One public option name. `value` identifies the option by its current public +/// alias and `alias` is its desired public alias; stored values remain internal. #[derive(serde::Serialize, serde::Deserialize)] #[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)] pub struct OptionValueAlias { diff --git a/komp-app/src/grpc.rs b/komp-app/src/grpc.rs index 6e96be03..8e0f1d49 100644 --- a/komp-app/src/grpc.rs +++ b/komp-app/src/grpc.rs @@ -37,6 +37,7 @@ use common::proto::komp_ac::table_definition::{ GetTableCatalogResponse, ListColumnTypesResponse, PostTableDefinitionRequest, ProfileTreeResponse, PutTableDefinitionRequest, PutTableDefinitionResponse, SetColumnFormVisibilityRequest, SetColumnFormVisibilityResponse, + SetColumnOptionAliasesRequest, SetColumnOptionAliasesResponse, SetColumnPresentationRequest, SetColumnPresentationResponse, TableDefinitionResponse, table_definition_client::TableDefinitionClient, }; @@ -567,6 +568,19 @@ impl GrpcClient { Ok(response.into_inner()) } + pub async fn set_column_option_aliases( + &mut self, + request: SetColumnOptionAliasesRequest, + ) -> Result { + let tonic_request = self.authenticated_request(request)?; + let response = self + .table_definition_client + .set_column_option_aliases(tonic_request) + .await + .context("gRPC SetColumnOptionAliases call failed")?; + Ok(response.into_inner()) + } + pub async fn set_column_form_visibility( &mut self, request: SetColumnFormVisibilityRequest, diff --git a/server b/server index 0c5ecac6..83300228 160000 --- a/server +++ b/server @@ -1 +1 @@ -Subproject commit 0c5ecac63df242c8d31359a506c0bec7f01017e9 +Subproject commit 83300228fd4c51fc90445fa486344965bf7dc527