Investiguer l'historiques des events d'un compte

Je ne sais pas comment investiguer ce qui s’est passé sur un compte depuis le début de la gdev, comment tout retracer dans le détail ? Via l’indexer je ne trouve pas comment filtrer les events d’un ss58 en particulier.

Pour mon cas j’aimerais savoir ce qui s’est passé sur le compte de @Gclaire, dont l’address g1 ss58 est: 5CEPsFdNxeDvK6rxGJ8wiGnnGi4dk51fJeZR4q6H8ejvPQB5

Solde à 0, mais identité toujours relié, pas d’historique de transaction depuis le lancement gdev: https://gecko.axiom-team.fr/#/profile/5CEPsFdNxeDvK6rxGJ8wiGnnGi4dk51fJeZR4q6H8ejvPQB5

Elle affirme avoir migré ce compte via un import g1v1 via gecko par le passé, mais je ne vois aucune trace de ça, et elle ne retrouve plus ses gdev après avoir supprimé/réimporté sa phrase de restauration.

4 Likes

Effectivement ça pourrait être intéressant de lier les événements à un compte et de pouvoir accéder à une liste d’événements tout confondu. À voir si on arrive à le faire sans que ce soit lourd en stockage et charge de requête. En attendant, pour ce qui est des change owner key :

query {
  changeOwnerKey(where: {previousId: {_eq: "5DSF5HxiQvy2xJdtdtMSPYZdSoLAsGDxzJaifiAfAByinrH4"}}){
    previousId
    nextId
    blockNumber
    identity { name }
  }
}

On voit comme ça mon événement change owner key :

{
  "data": {
    "changeOwnerKey": [
      {
        "previousId": "5DSF5HxiQvy2xJdtdtMSPYZdSoLAsGDxzJaifiAfAByinrH4",
        "nextId": "5Dq8xjvkmbz7q4g2LbZgyExD26VSCutfEc6n4W4AfQeVHZqz",
        "blockNumber": 26281,
        "identity": {
          "name": "HugoTrentesaux"
        }
      }
    ]
  }
}

Mais c’est plus simple de faire à l’envers je trouve :

query {
  identity(where: {name: {_eq: "poka"}}) {
    name
    accountId
    ownerKeyChange{
      previousId
      nextId
    }
  }
}
{
  "data": {
    "identity": [
      {
        "name": "poka",
        "accountId": "5CQ8T4qpbYJq7uVsxGPQ5q2df7x3Wa4aRY6HUWMBYjfLZhnn",
        "ownerKeyChange": [
          {
            "previousId": "5GMyvKsTNk9wDBy9jwKaX6mhSzmFFtpdK9KNnmrLoSTSuJHv",
            "nextId": "5CQ8T4qpbYJq7uVsxGPQ5q2df7x3Wa4aRY6HUWMBYjfLZhnn"
          }
        ]
      }
    ]
  }
}

Pour ce qui est de claire, je pense qu’elle l’a fait sur une gdev plus ancienne, donc il n’y a rien sur la gdev actuelle.

2 Likes

Mais son solde est à zéro c’est bizarre.

Et cette address là: 5Cu2umPA2mTU23PfehoEsBeTJsADycKogmrMarb81AxFZp8E

Est-ce quelqu’un peut m’expliquer comment c’est possible qu’elle a:

  • Un solde non null
  • un idtyIndex
  • pas d’historique de transaction
  • aucune entrée changeOwnerKey

sur indexer coindufeu. Probablement desynchro.

Peut-être était-ce avant le reboot ?

Probablement de ce que je comprends, mais comment expliquer ce solde à 0 pour le compte de Claire alors qu’il s’agit de son compte g1, et qu’aucune transaction n’a été effectué sur la gdev sur ce compte ? Elle se retrouve dans l’incapacité d’effectuer la migration changeownerkey via gecko, étant donné que l’app considère le compte comme inactif car solde à zero!

Je suis désolé d’insister sur le fait que ça ressemble quand même beaucoup à un état de storage inconsistant, ou alors je n’ai pas compris quelque chose.

5CEPsFdNxeDvK6rxGJ8wiGnnGi4dk51fJeZR4q6H8ejvPQB5 :

{
  nonce: 1
  consumers: 0
  providers: 0
  sufficients: 1
  data: {
    free: 0
    reserved: 0
    feeFrozen: 0
    linkedIdty: 5,760
  }
}
{
  data: {
    firstEligibleUd: 1,356
  }
  nextCreatableIdentityOn: 0
  oldOwnerKey: [
    5CEPsFdNxeDvK6rxGJ8wiGnnGi4dk51fJeZR4q6H8ejvPQB5
    3,110,661
  ]
  ownerKey: 5EJ4WgrBbpBBARjbnfRwRpq5TDJnpqLW5zg2cZ2HmNyiiCtG
  nextScheduled: 7,022,518
  status: NotMember
}

Donc contrairement à ce que l’indexer indique, il y a bien un oldOwnerKey lié à cette identité, donc une migration a bien été effecuté. Mais aucune trace sur l’indexer, et pas de transaction effectué sur la gdev.
Là je suis un peu perdu, si le storage est consistant, alors il faut que je change certaines conditions dans gecko pour permettre la migration d’une identité lié à un compte à solde null.

Pour info les tests de Gecko se déroulent ici, un coup de main tech ne serait pas de trop, beaucoup de questions qui ne sont pas directement liés à gecko mais aux règles de la gdev, et parfois des investigations difficiles, comme ces deux cas: https://t.me/c/2123568074/1157

#FreeGClaire

1 Like

Pour celle là je vois l’identité CoralieM. Pour Gclaire, je vois ceci : https://duniter–vue-coinduf-eu.ipns.pagu.re/#/idty/Gclaire c’est 5EJ4WgrBbpBBARjbnfRwRpq5TDJnpqLW5zg2cZ2HmNyiiCtG. J’utilise beaucoup duniter panel pour débugger, et effectivement c’est plus facile avec un indexeur synchro, là j’utilise https://squid.gdev.gyroi.de/v1/graphql, il faut vraiment que j’implémente le scan réseau au démarrage comme sur gcli, ça évitera bien des ennuis.

Sur squid.gdev.gyroi.de

query {
  identity(where: {name: {_eq: "Gclaire"}}) {
    name
    accountId
    ownerKeyChange{
      blockNumber
      previousId
      nextId
    }
  }
}

{
  "data": {
    "identity": [
      {
        "name": "Gclaire",
        "accountId": "5EJ4WgrBbpBBARjbnfRwRpq5TDJnpqLW5zg2cZ2HmNyiiCtG",
        "ownerKeyChange": [
          {
            "blockNumber": 3110661,
            "previousId": "5CEPsFdNxeDvK6rxGJ8wiGnnGi4dk51fJeZR4q6H8ejvPQB5",
            "nextId": "5EJ4WgrBbpBBARjbnfRwRpq5TDJnpqLW5zg2cZ2HmNyiiCtG"
          }
        ]
      }
    ]
  }
}

Il y a bien eu une migration au bloc 3110661 (17/09/2024 17:25:00).

Attention on a changé quelques trucs dans le runtime 802 à ce sujet, mais de toute façon il faut les frais. On en discute au téléphone, si tu veux.