HEBorn icon indicating copy to clipboard operation
HEBorn copied to clipboard

Servers (and beyond) documentation for HEBorn

Open chrisfls opened this issue 6 years ago • 10 comments

Facts

  • Tunnels is out because the implementation is probably wrong

This change is Reviewable

chrisfls avatar Jun 25 '18 19:06 chrisfls

Reviewed 44 of 44 files at r1. Review status: all files reviewed, 34 unresolved discussions (waiting on @kress95)


src/Game/Servers/Config.elm, line 20 at r1 (raw file):



{-| Parâmetros especiais:

Pontos finais e isso deveria ser em forma de lista. Acho que os parametros deveriam ser documentados tbm


src/Game/Servers/Messages.elm, line 19 at r1 (raw file):


    - ServerMsg: mensagem para um server em específico
    - Synced: recebido como resposta de um request de sincronização

Porque o Request de Sync acontece? O Renato vai querer que vc explique isso.


src/Game/Servers/Messages.elm, line 38 at r1 (raw file):

    - HandleLogout: recebida por dispatch, efetua request de logout do servidor
    - HandleSetBounce: recebida por dispatch, muda bounce do servidor
    - HandleSetEndpoint: recebida por dispatch, muda endpoint do servidor, só

Parametros


src/Game/Servers/Models.elm, line 34 at r1 (raw file):



{-| Dados em cache de um gateway.

Pra que serve cada um desses campos? Isso provavelmente vai ser cobrado.


src/Game/Servers/Models.elm, line 50 at r1 (raw file):


{-| Dados de um servidor.
-}

eu recomendo colocar algo como: name : Nome do Servidor type_ : Tipo do servidor, Confira mais na linha: ~n da linha~


src/Game/Servers/Models.elm, line 82 at r1 (raw file):


{-| Dados de uma storage, o nome ela e seu filesystem.
-}

mesma coisa aqui.


src/Game/Servers/Models.elm, line 90 at r1 (raw file):


{-| Tipos de servidor.
-}

Pra que serve cada um dos tipos? qual a diferenca entre um Desktop e um DesktopCampaign?


src/Game/Servers/Models.elm, line 98 at r1 (raw file):


{-| Dados do servidor que variam se o servidor é um gateway ou endpoint.
-}

Certo, mas o que esta sendo guardado no Tipo Data? ou melhor, Porque precisa existir um tipo Data?


src/Game/Servers/Models.elm, line 115 at r1 (raw file):

-}
type alias EndpointData =
    { analyzed : Maybe AnalyzedEndpoint

Certo, O que e um endpoint analisado do ponto de vista de mecanica de jogo? porque ele tem que existir?


src/Game/Servers/Shared.elm, line 20 at r1 (raw file):

{-| Id conhecido de um servidor, pode ser um Id para gateways ou um NIP para
endpoints.
-}

Porque precisamos fazer essa diferenciacao entre Gateway e Endpoint?


src/Game/Servers/Update.elm, line 408 at r1 (raw file):

                    ( model.servers, model.gateways )

        -- atualiza

Atualiza o que?


src/Game/Servers/Filesystem/Messages.elm, line 7 at r1 (raw file):


{-| Mensagens:

Parametros e pontos finais


src/Game/Servers/Filesystem/Models.elm, line 185 at r1 (raw file):



{-| List direct entries of given folder.

Ingles?


src/Game/Servers/Filesystem/Models.elm, line 382 at r1 (raw file):


{-| WIP
-}

WIP


src/Game/Servers/Filesystem/Shared.elm, line 133 at r1 (raw file):

  - AnyMap: usado para mapear a rede
  - Spyware: gera dinheiro vendendo dados do servidor

Pontos Finais


src/Game/Servers/Hardware/Requests/UpdateMotherboard.elm, line 35 at r1 (raw file):

tirar as piadas:

  - PorraKress: deu um erro e a culpa é do client side

Pontos Finais


src/Game/Servers/Logs/Messages.elm, line 8 at r1 (raw file):

{-| Mensagens:

  - HandleCreated: recebida por evento quando um log é criado

Pontos finais


src/Game/Servers/Logs/Models.elm, line 13 at r1 (raw file):



{-| A model contém Logs de um servidor e a ordem de desenho dos mesmos.

...e a ordem de desenho dos mesmos organizados por data*


src/Game/Servers/Logs/Models.elm, line 37 at r1 (raw file):


  - timestamp: data de criação do log
  - status: estado do log perante o jogador (recém descoberto, recém criado ou

pontos finais


src/Game/Servers/Logs/Models.elm, line 75 at r1 (raw file):


  - LocalLoginFormat: login no servidor local
  - RemoteLoginFormat: login em servidor remoto

pontos finais


src/Game/Servers/Notifications/Config.elm, line 13 at r1 (raw file):


  - onToast: utilizado para criar uma toast

pontos finais


src/Game/Servers/Notifications/Messages.elm, line 11 at r1 (raw file):


  - HandleGeneric: adiciona notificação genérica
  - HandleDownloadStarted: adiciona notificação de download iniciado

pontos finais


src/Game/Servers/Notifications/Shared.elm, line 14 at r1 (raw file):

    - UploadStarted: notificação de upload iniciado
    - UploadConcluded: notificação de upload concluído
    - BruteforceStarted: notificação de bruteforce iniciado

pontos finais


src/Game/Servers/Processes/Config.elm, line 16 at r1 (raw file):

  - onUploadStarted: lançado quando um processo de upload é iniciado
  - onBruteforceStarted: lançado quando um processo de bruteforce é iniciado
  - onGenericNotification: utilizado para lançar notificações

pontos finais


src/Game/Servers/Processes/Messages.elm, line 22 at r1 (raw file):

  - HandleStartPublicDownload: recebida por dispatch, inicia processo de
    download público
  - HandleStartUpload: recebida por dispatch, inicia processo de upload

pontos finais


src/Game/Servers/Processes/Models.elm, line 39 at r1 (raw file):

  - Nível de acesso do jogador
  - Estado do processo
  - Arquivo do processo (caso ele seja um software)

pontos finais


src/Game/Servers/Processes/Models.elm, line 62 at r1 (raw file):

FileTransference: transfere arquivo de um servidor para outro
PassiveFirewall: firewall que executa passivamente
Download: download de arquivo

pontos finais


src/Game/Servers/Processes/Models.elm, line 143 at r1 (raw file):

  - Running: em execução
  - Paused: pausado
  - Concluded: concluído de forma otimista, não se sabe se foi com sucesso

pontos finais


src/Game/Servers/Processes/Requests/Bruteforce.elm, line 1 at r1 (raw file):

module Game.Servers.Processes.Requests.Bruteforce

Pra que serve um Bruteforce? Ponto de Vista do jogo.


src/Game/Servers/Processes/Requests/Download.elm, line 46 at r1 (raw file):

    - StorageFull: storage alvo está cheia
    - StorageNotFound: storage alvo não existe
    - BadRequest: request mal formado

Pontos finais


src/Game/Servers/Processes/Requests/Upload.elm, line 44 at r1 (raw file):

    - StorageFull: storage alvo está cheia
    - StorageNotFound: storage alvo não existe
    - BadRequest: request mal formado

pontos finais


src/Game/Servers/Requests/Browse.elm, line 177 at r1 (raw file):



{-| Decoder de metadados que existem para todos os sites.

Decoder ou decodificador? ta inconsistente isso ai


src/Game/Servers/Requests/Browse.elm, line 194 at r1 (raw file):



{-| Decoder de content de sites do tipo Webserver.

Mesma coisa aqui


src/Game/Servers/Requests/Browse.elm, line 204 at r1 (raw file):



{-| Decoder de content de sites do tipo Bank.

Content tbm pode ser transformado em Conteudo


Comments from Reviewable

themaxhero avatar Jun 25 '18 23:06 themaxhero

Reviewed 20 of 44 files at r1. Review status: all files reviewed, 34 unresolved discussions (waiting on @themaxhero)


src/Game/Servers/Config.elm, line 20 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Pontos finais e isso deveria ser em forma de lista. Acho que os parametros deveriam ser documentados tbm

Done.


src/Game/Servers/Messages.elm, line 19 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Porque o Request de Sync acontece? O Renato vai querer que vc explique isso.

Done, explicado no request.


src/Game/Servers/Messages.elm, line 38 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Parametros

Done.


src/Game/Servers/Models.elm, line 34 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Pra que serve cada um desses campos? Isso provavelmente vai ser cobrado.

Done.


src/Game/Servers/Models.elm, line 50 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

eu recomendo colocar algo como: name : Nome do Servidor type_ : Tipo do servidor, Confira mais na linha: ~n da linha~

editores bons (e ruins como atom e vscode) tem intellisense ótimo pra elm, tem como pular pra definição só de passar o mouse por cima do tipo, acho isso desnecessário


src/Game/Servers/Models.elm, line 82 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

mesma coisa aqui.

Done.


src/Game/Servers/Models.elm, line 90 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Pra que serve cada um dos tipos? qual a diferenca entre um Desktop e um DesktopCampaign?

Done.


src/Game/Servers/Models.elm, line 98 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Certo, mas o que esta sendo guardado no Tipo Data? ou melhor, Porque precisa existir um tipo Data?

Done.


src/Game/Servers/Models.elm, line 115 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Certo, O que e um endpoint analisado do ponto de vista de mecanica de jogo? porque ele tem que existir?

Done.


src/Game/Servers/Shared.elm, line 20 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Porque precisamos fazer essa diferenciacao entre Gateway e Endpoint?

Done.


src/Game/Servers/Update.elm, line 408 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Atualiza o que?

Done.


src/Game/Servers/Filesystem/Messages.elm, line 7 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Parametros e pontos finais

Done.


src/Game/Servers/Filesystem/Models.elm, line 185 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Ingles?

Done.


src/Game/Servers/Filesystem/Models.elm, line 382 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

WIP

Done.


src/Game/Servers/Filesystem/Shared.elm, line 133 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Pontos Finais

Done.


src/Game/Servers/Hardware/Requests/UpdateMotherboard.elm, line 35 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Pontos Finais

Done.


src/Game/Servers/Logs/Messages.elm, line 8 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Pontos finais

Done.


src/Game/Servers/Logs/Models.elm, line 13 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

...e a ordem de desenho dos mesmos organizados por data*

Done.


src/Game/Servers/Logs/Models.elm, line 37 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

pontos finais

Done.


src/Game/Servers/Logs/Models.elm, line 75 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

pontos finais

Done.


src/Game/Servers/Notifications/Config.elm, line 13 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

pontos finais

Done.


src/Game/Servers/Notifications/Messages.elm, line 11 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

pontos finais

Done.


src/Game/Servers/Notifications/Shared.elm, line 14 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

pontos finais

Done.


src/Game/Servers/Processes/Config.elm, line 16 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

pontos finais

Done.


src/Game/Servers/Processes/Messages.elm, line 22 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

pontos finais

Done.


src/Game/Servers/Processes/Models.elm, line 39 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

pontos finais

Done.


src/Game/Servers/Processes/Models.elm, line 62 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

pontos finais

Done.


src/Game/Servers/Processes/Models.elm, line 143 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

pontos finais

Done.


src/Game/Servers/Processes/Requests/Bruteforce.elm, line 1 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Pra que serve um Bruteforce? Ponto de Vista do jogo.

Done.


src/Game/Servers/Processes/Requests/Download.elm, line 46 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Pontos finais

Done.


src/Game/Servers/Processes/Requests/Upload.elm, line 44 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

pontos finais

Done.


src/Game/Servers/Requests/Browse.elm, line 177 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Decoder ou decodificador? ta inconsistente isso ai

Done.


src/Game/Servers/Requests/Browse.elm, line 194 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Mesma coisa aqui

Done.


src/Game/Servers/Requests/Browse.elm, line 204 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Content tbm pode ser transformado em Conteudo

Done.


Comments from Reviewable

chrisfls avatar Jun 26 '18 01:06 chrisfls

Reviewed 2 of 27 files at r2. Review status: 19 of 44 files reviewed, 35 unresolved discussions (waiting on @kress95 and @themaxhero)


src/Game/Servers/Messages.elm, line 19 at r1 (raw file):

Previously, kress95 (Christian Ferraz Lemos de Sousa) wrote…

Done, explicado no request.

acho que tem que ser tipo:

Efetua um request de resync. Requer o CId do servidor.
Acontece quando a model do Servidor no HEBorn torna-se diferente da model do Helix

Ou algo assim...


src/Game/Servers/Models.elm, line 34 at r1 (raw file):

Previously, kress95 (Christian Ferraz Lemos de Sousa) wrote…

Done.

Done where? I fill like some commit is missing...


src/Game/Servers/Models.elm, line 15 at r2 (raw file):

import Game.Servers.Notifications.Models as Notifications
import Game.Meta.Types.Context exposing (Context(..))
import Game.Servers.Shared exposing (..)

Shouldn't we adopt elm's docgen header? Where function/types are categorized and listed within @docs?


Comments from Reviewable

PedroHLC avatar Jun 26 '18 14:06 PedroHLC

Reviewed 1 of 27 files at r2. Review status: 20 of 44 files reviewed, 35 unresolved discussions (waiting on @kress95 and @themaxhero)


src/Game/Servers/Messages.elm, line 19 at r1 (raw file):

Previously, PedroHLC (Pedro) wrote…

acho que tem que ser tipo:

Efetua um request de resync. Requer o CId do servidor.
Acontece quando a model do Servidor no HEBorn torna-se diferente da model do Helix

Ou algo assim...

Parece bom, mas temos que tomar cuidado: Game é pra funcionar como uma library para tudo que não está em Game, ou seja, o que acontece em Core, OS, Setup não interessa ao Game.


src/Game/Servers/Models.elm, line 34 at r1 (raw file):

Previously, PedroHLC (Pedro) wrote…

Done where? I fill like some commit is missing...

eu vou melhorar o texto, mas não pretendo documentar todos os campos, especialmente pra um record que é praticamente privado (a pesar de não ser por motivos de arquitetura cagada)


src/Game/Servers/Models.elm, line 15 at r2 (raw file):

Previously, PedroHLC (Pedro) wrote…

Shouldn't we adopt elm's docgen header? Where function/types are categorized and listed within @docs?

Acho que pode ser uma boa ideia, mas o cabeçalho só serve para dividir funções em categorias. Pra produtividade não ajuda muito, é mais pra organizar um pouquinho mais :T


Comments from Reviewable

chrisfls avatar Jun 26 '18 16:06 chrisfls

Review status: 20 of 44 files reviewed, 35 unresolved discussions (waiting on @kress95, @themaxhero, and @PedroHLC)


src/Game/Servers/Messages.elm, line 19 at r1 (raw file):

Acontece quando a model do Servidor no HEBorn torna-se diferente da model do Helix

Ou seja, eu mudaria isso pra:

"Deve ser recebeida após a model de algum servidor tornar-se inconsistente."

Ou algo assim.

As regras que devemos seguir é:

  • Mensagens privadas você só documenta pra que serve
  • Eventos você documenta pra que serve e quando recebe
  • Dispatches você documenta isso tudo e os parametros

src/Game/Servers/Models.elm, line 34 at r1 (raw file):

Previously, kress95 (Christian Ferraz Lemos de Sousa) wrote…

eu vou melhorar o texto, mas não pretendo documentar todos os campos, especialmente pra um record que é praticamente privado (a pesar de não ser por motivos de arquitetura cagada)

Done.


Comments from Reviewable

chrisfls avatar Jun 26 '18 16:06 chrisfls

Vou dar uma cutucada na documentação das mensagens hoje, mas já é pra isso estar teoricamente bom :T


Review status: 20 of 44 files reviewed, 35 unresolved discussions (waiting on @kress95, @themaxhero, and @PedroHLC)


Comments from Reviewable

chrisfls avatar Jun 26 '18 16:06 chrisfls

Reviewed 20 of 27 files at r2, 7 of 7 files at r3. Review status: all files reviewed, 15 unresolved discussions (waiting on @themaxhero, @PedroHLC, and @kress95)


src/Game/Servers/Models.elm, line 87 at r3 (raw file):


{-| Dados de uma storage, o nome dela e seu filesystem, veja mais informações
sobre o filesystem na model do mesmo.o

.o?


src/Game/Servers/Update.elm, line 57 at r1 (raw file):



{-| Atualiza a model com um server atualizado pela função `updateServer`.

Eu acho que ficava melhor com o ``


src/Game/Servers/Filesystem/Models.elm, line 87 at r1 (raw file):

        if noFileExists then
            let
                -- deletear este arquivo da model caso ele já exista em outro

Opa, eu nao tinha visto isso na outra revisao kkkk


src/Game/Servers/Processes/Config.elm, line 10 at r3 (raw file):

import Game.Servers.Processes.Messages exposing (..)

    , onGenericNotification : String -> String -> msg

Isso compilou?


src/Game/Servers/Requests/Browse.elm, line 199 at r3 (raw file):



{-| Decodificador do de sites do tipo Webserver.

do de?


src/Game/Servers/Requests/Browse.elm, line 209 at r3 (raw file):



{-| Decodificador do de sites do tipo Bank.

dee do dee do deeeeeeeeeeee :musical_note:


Comments from Reviewable

themaxhero avatar Jun 27 '18 09:06 themaxhero

Review status: 11 of 44 files reviewed, 15 unresolved discussions (waiting on @PedroHLC, @themaxhero, and @kress95)


src/Game/Servers/Models.elm, line 87 at r3 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

.o?

Done.


src/Game/Servers/Update.elm, line 57 at r1 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Eu acho que ficava melhor com o ``

Done.


src/Game/Servers/Processes/Config.elm, line 10 at r3 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Isso compilou?

wtf


src/Game/Servers/Requests/Browse.elm, line 199 at r3 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

do de?

Done.


src/Game/Servers/Requests/Browse.elm, line 209 at r3 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

dee do dee do deeeeeeeeeeee :musical_note:

Done.


Comments from Reviewable

chrisfls avatar Jul 03 '18 03:07 chrisfls

Reviewed 31 of 33 files at r4. Review status: 42 of 44 files reviewed, 2 unresolved discussions (waiting on @themaxhero, @PedroHLC, and @kress95)


src/Game/Servers/Notifications/Messages.elm, line 47 at r4 (raw file):


Aiciona notificação de bruteforce iniciado. Requer `NIP` do servidor afetado.

Aiciona?


src/Game/Servers/Processes/Config.elm, line 10 at r3 (raw file):

Previously, kress95 (Christian Ferraz Lemos de Sousa) wrote…

wtf

tava falando porque tinha uma linha , onGenericNotification : String -> String -> msg perdida


Comments from Reviewable

themaxhero avatar Jul 03 '18 15:07 themaxhero

Review status: 41 of 44 files reviewed, 2 unresolved discussions (waiting on @themaxhero and @PedroHLC)


src/Game/Servers/Notifications/Messages.elm, line 47 at r4 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

Aiciona?

Done.


src/Game/Servers/Processes/Config.elm, line 10 at r3 (raw file):

Previously, themaxhero (Marcelo Amancio de Lima Santos) wrote…

tava falando porque tinha uma linha , onGenericNotification : String -> String -> msg perdida

eu entendi, o wtf foi pq eu n sabia como isso foi parar ai


Comments from Reviewable

chrisfls avatar Jul 03 '18 18:07 chrisfls