Mark token source of truth in scan output

This commit is contained in:
mpabi
2026-04-26 20:08:12 +02:00
parent 840f8badf9
commit a9d0d0117a
4 changed files with 37 additions and 23 deletions
+6 -5
View File
@@ -307,8 +307,8 @@ Typowy wynik:
items
item source id server scheme host port credential repo_user store_user token sync
---- ----------- ---------- ------ ------ --------------- ----- ---------- --------- ---------- ----- ----
1 repo r1 gitea http 77.90.8.171 3001 auth u1 u1 yes yes
1 tokens.json t1 gitea http 77.90.8.171 3001 store u1 u1 yes yes
1 repo r1 gitea http 77.90.8.171 3001 auth u1 u1 yes
1 tokens.json t1 gitea http 77.90.8.171 3001 store u1 u1 yes *
```
Jesli remote istnieje, ale ma URL bez `LOGIN:TOKEN@`, wynik bedzie mial
@@ -318,7 +318,8 @@ endpoint istnieje w `tokens.json`, drugi wiersz tego samego `item` pokaze
Ten sam numer `item` oznacza jedna pare logiczna dla jednego endpointu. Wiersz
`source=repo` pokazuje stan remote, a wiersz `source=tokens.json` pokazuje stan
lokalnego store. Kolumna `sync` jest flaga zgodnosci calej pary repo/store.
lokalnego store. Kolumna `sync` pokazuje `*` przy aktualnym zrodle prawdy dla
pary repo/store. Przy konflikcie pokazuje `!`.
Kolumna `id` pokazuje identyfikator miejsca przechowywania tokena: dla repo jest
to nazwa remota, na przyklad `r1`, a dla store nazwa tokenu, na przyklad `t1`.
Endpoint jest rozbity na `server`, `scheme`, `host` i `port`.
@@ -387,8 +388,8 @@ token_path<TAB>...
items
item source id server scheme host port credential repo_user store_user token sync
---- ----------- ---------- ------ ------ --------------- ----- ---------- --------- ---------- ----- ----
1 repo r1 gitea http 77.90.8.171 3001 plain u1 no no
1 tokens.json t1 gitea http 77.90.8.171 3001 store u1 u1 yes no
1 repo r1 gitea http 77.90.8.171 3001 plain u1 no
1 tokens.json t1 gitea http 77.90.8.171 3001 store u1 u1 yes *
status
item<TAB>value
+7 -1
View File
@@ -113,12 +113,18 @@ Kolumny w tabeli `items`:
- `repo_user` - login odczytany z remote URL-i repo
- `store_user` - login odczytany z `tokens.json`
- `token` - `yes` albo `no`, czyli czy dane zrodlo ma token dla endpointu
- `sync` - `yes` albo `no`, czyli czy para repo/store jest zgodna
- `sync` - `*` przy zrodle prawdy albo `!` przy konflikcie
Tabela nie wypisuje sekretu tokena. Jezeli token jest w remote, `id` pokazuje
nazwe remota, na przyklad `r1`. Jezeli token jest w `tokens.json`, `id`
pokazuje nazwe tokenu, na przyklad `t1`.
Zasada znacznika `sync`:
- `in_sync`, `store_only`, `store_ahead` - `*` przy `tokens.json`
- `repo_only`, `repo_ahead` - `*` przy `repo`
- `diverged` - `!`, bo nie ma jednoznacznego zrodla prawdy
Przyklad:
```bash