From 1181aca9d776a72860aa4ec0d1a8597dae2c5ed5 Mon Sep 17 00:00:00 2001 From: Ladd Hoffman Date: Tue, 7 Feb 2023 11:56:34 -0600 Subject: [PATCH 1/7] Notes --- forum-network/notes/dao.md | 36 ++++++++++++++++++++++++++++++- forum-network/notes/validation.md | 4 ++++ 2 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 forum-network/notes/validation.md diff --git a/forum-network/notes/dao.md b/forum-network/notes/dao.md index 48a026e..58f017a 100644 --- a/forum-network/notes/dao.md +++ b/forum-network/notes/dao.md @@ -1 +1,35 @@ -A DAO is a group of cooperating entities +A DAO is a group of cooperating entities. + +If we're running our own network, it probably makes sense to consider nodes as the participants. + +If we're running as smart contracts, it probably makes sense to consider individual addresses as the participants. + +These schemes overlap, since both involve asymmetric keys. + +Each node must validate the work of the other nodes + +Our protocol will be a peer protocol, and will rely on signatures. + +Therefore we arrive at a requirement for nodes: they must be physically secured so that private keys are protected. + +We also arrive at a requirement for our network protocol: It must be possible to sign messages and verify message signatures against known public keys. + +The network protocol MAY support asking peers about other peers / telling other peers about peers. + +IF we support this IT SHALL BE linked with each node's reputation. + +CAN WE SAY that each node MUST maintain A VIEW of THE ENTIRE / (THE CURRENT) / (ALL / CURRENT) HASHES / MERKLE TREE / -- World state, History + +CAN WE GET AWAY WITH ONLY SAYING that each node maintains its own view. + +WHAT is our protocol for evaluating the perspectives offered by peers? + +- If one node perceives consensus among many others, that may sway their opinion. + + - There may be opportunity during "informal voting" / non-binding validation pools (low tokenLossRatio) to gather this sort of information. + +- If there is exact agreement, we have a very efficient case. + +- If there is the HOPE of exact agreement, mistakes and attacks can be costly + +- If there is an EXPECTATION of exact agreement, there must be externalities supporting that agreement, i.e. a common protocol and governance of that protocol. diff --git a/forum-network/notes/validation.md b/forum-network/notes/validation.md new file mode 100644 index 0000000..1cbb49a --- /dev/null +++ b/forum-network/notes/validation.md @@ -0,0 +1,4 @@ +Possible statements + +- It is what I would have done +- It is consistent with what I (would) have done From 90eded96e536c83625073f4ecec2764931054c1a Mon Sep 17 00:00:00 2001 From: Ladd Hoffman Date: Thu, 9 Feb 2023 13:10:39 -0600 Subject: [PATCH 2/7] Stub files --- forum-network/notes/exchange.md | 0 forum-network/notes/treasury.md | 0 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 forum-network/notes/exchange.md create mode 100644 forum-network/notes/treasury.md diff --git a/forum-network/notes/exchange.md b/forum-network/notes/exchange.md new file mode 100644 index 0000000..e69de29 diff --git a/forum-network/notes/treasury.md b/forum-network/notes/treasury.md new file mode 100644 index 0000000..e69de29 From 87f04bd7d347741dd6bbc0b9e85b0741673e2763 Mon Sep 17 00:00:00 2001 From: Ladd Hoffman Date: Thu, 9 Feb 2023 13:52:16 -0600 Subject: [PATCH 3/7] Testing publishing dev branch to separate URL --- .gitlab-ci.yml | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 701f632..379941e 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,7 +1,24 @@ pages: - script: - - mkdir public - - cp -r forum-network/src/* public/ + rules: + - if: '$CI_COMMIT_REF_NAME == "main"' artifacts: paths: - public + script: + - mkdir public + - cp -r forum-network/src/* public/ + +pages: + rules: + - if: '$CI_COMMIT_REF_NAME == "dev"' + artifacts: + paths: + - public + script: + - mkdir public + - cp -r forum-network/src/* public/ + environment: + name: Develop + url: "${CI_SERVER_PROTOCOL}://${CI_PROJECT_ROOT_NAMESPACE}.${CI_PAGES_DOMAIN}/-/${CI_PROJECT_PATH#"${CI_PROJECT_ROOT_NAMESPACE}/"}/-/jobs/$CI_JOB_ID/artifacts/public/index.html" + variables: + PUBLIC_URL: "/-/${CI_PROJECT_PATH#"${CI_PROJECT_ROOT_NAMESPACE}/"}/-/jobs/$CI_JOB_ID/artifacts/public/index.html" From 7d89df7a6112a9daf571622068d43271a04df8fc Mon Sep 17 00:00:00 2001 From: Ladd Hoffman Date: Thu, 9 Feb 2023 13:54:42 -0600 Subject: [PATCH 4/7] Fixup yaml --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 379941e..ebc74f3 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -8,7 +8,7 @@ pages: - mkdir public - cp -r forum-network/src/* public/ -pages: +pages-dev: rules: - if: '$CI_COMMIT_REF_NAME == "dev"' artifacts: From 6012cb2d1a3b79a0e435a38b58f945d2f5886838 Mon Sep 17 00:00:00 2001 From: Ladd Hoffman Date: Thu, 9 Feb 2023 14:15:16 -0600 Subject: [PATCH 5/7] Testing CI --- .gitlab-ci.yml | 34 ++++++++++++++++++++-------------- 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ebc74f3..9a10ebe 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,24 +1,30 @@ -pages: +workflow: rules: - - if: '$CI_COMMIT_REF_NAME == "main"' - artifacts: - paths: - - public - script: - - mkdir public - - cp -r forum-network/src/* public/ + - if: $CI_COMMIT_BRANCH -pages-dev: +pages: + stage: deploy rules: - - if: '$CI_COMMIT_REF_NAME == "dev"' - artifacts: - paths: - - public + - if: $CI_COMMIT_BRANCH == "main" script: - mkdir public - cp -r forum-network/src/* public/ + artifacts: + paths: + - public + +artifacts: + stage: deploy + rules: + - if: '$CI_COMMIT_BRANCH != "main"' + script: + - mkdir public + - cp -r forum-network/src/* public/ + artifacts: + paths: + - public environment: - name: Develop + name: "${CI_COMMIT_BRANCH} ${CI_JOB_NAME}" url: "${CI_SERVER_PROTOCOL}://${CI_PROJECT_ROOT_NAMESPACE}.${CI_PAGES_DOMAIN}/-/${CI_PROJECT_PATH#"${CI_PROJECT_ROOT_NAMESPACE}/"}/-/jobs/$CI_JOB_ID/artifacts/public/index.html" variables: PUBLIC_URL: "/-/${CI_PROJECT_PATH#"${CI_PROJECT_ROOT_NAMESPACE}/"}/-/jobs/$CI_JOB_ID/artifacts/public/index.html" From 9e5b6a4064f4192a58449cc4d4025e8fb7d102f8 Mon Sep 17 00:00:00 2001 From: Ladd Hoffman Date: Thu, 9 Feb 2023 14:18:35 -0600 Subject: [PATCH 6/7] fixup yaml --- .gitlab-ci.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 9a10ebe..d58ca02 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -24,7 +24,7 @@ artifacts: paths: - public environment: - name: "${CI_COMMIT_BRANCH} ${CI_JOB_NAME}" - url: "${CI_SERVER_PROTOCOL}://${CI_PROJECT_ROOT_NAMESPACE}.${CI_PAGES_DOMAIN}/-/${CI_PROJECT_PATH#"${CI_PROJECT_ROOT_NAMESPACE}/"}/-/jobs/$CI_JOB_ID/artifacts/public/index.html" + name: "$CI_COMMIT_BRANCH $CI_JOB_NAME" + url: "$CI_SERVER_PROTOCOL://$CI_PROJECT_ROOT_NAMESPACE.$CI_PAGES_DOMAIN/-/$CI_PROJECT_PATH/-/jobs/$CI_JOB_ID/artifacts/public/index.html" variables: - PUBLIC_URL: "/-/${CI_PROJECT_PATH#"${CI_PROJECT_ROOT_NAMESPACE}/"}/-/jobs/$CI_JOB_ID/artifacts/public/index.html" + PUBLIC_URL: "/-/$CI_PROJECT_PATH/-/jobs/$CI_JOB_ID/artifacts/public/index.html" From a2a1035da87e9231d99ea92aa892920a17baee41 Mon Sep 17 00:00:00 2001 From: Ladd Hoffman Date: Thu, 9 Feb 2023 14:49:50 -0600 Subject: [PATCH 7/7] Attempt to fix url --- .gitlab-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d58ca02..ded5260 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -25,6 +25,6 @@ artifacts: - public environment: name: "$CI_COMMIT_BRANCH $CI_JOB_NAME" - url: "$CI_SERVER_PROTOCOL://$CI_PROJECT_ROOT_NAMESPACE.$CI_PAGES_DOMAIN/-/$CI_PROJECT_PATH/-/jobs/$CI_JOB_ID/artifacts/public/index.html" + url: "$CI_SERVER_PROTOCOL://$CI_PROJECT_ROOT_NAMESPACE.$CI_PAGES_DOMAIN/-/$CI_PROJECT_NAME/-/jobs/$CI_JOB_ID/artifacts/public/index.html" variables: - PUBLIC_URL: "/-/$CI_PROJECT_PATH/-/jobs/$CI_JOB_ID/artifacts/public/index.html" + PUBLIC_URL: "/-/$CI_PROJECT_NAME/-/jobs/$CI_JOB_ID/artifacts/public/index.html"