diff --git a/.env b/.env
new file mode 100644
index 0000000000..341dd7d012
--- /dev/null
+++ b/.env
@@ -0,0 +1,4 @@
+## GUARDIAN ECOSYSTEM ENVIRONMENT NAME
+# if you already started to use actively Guardian leave GUARDIAN_ENV empty when you want to use it as usual
+# if you want to use a new environment configure GUARDIAN_ENV with a significative environment name
+GUARDIAN_ENV=""
diff --git a/Methodology Library/CDM/CDM.policy b/Methodology Library/CDM/CDM.policy
new file mode 100644
index 0000000000..df77e34614
Binary files /dev/null and b/Methodology Library/CDM/CDM.policy differ
diff --git a/Methodology Library/CDM/readme.md b/Methodology Library/CDM/readme.md
new file mode 100644
index 0000000000..baf1add063
--- /dev/null
+++ b/Methodology Library/CDM/readme.md
@@ -0,0 +1,23 @@
+## CDM AR-ACM0003: Methodology for Afforestation and Reforestation of Lands Except Wetlands
+
+**Policy Description**:
+
+The CDM AR-ACM0003 methodology is a comprehensive framework developed under the Clean Development Mechanism (CDM) to guide afforestation and reforestation projects aimed at combating climate change and promoting sustainable land use practices. This methodology facilitates the identification of suitable project sites, establishes baselines for measuring greenhouse gas emissions, ensures the additionality of emissions reductions, implements robust monitoring and reporting systems, addresses leakage and permanence concerns, and seeks validation and certification from accredited entities. By adhering to this methodology, projects can effectively sequester carbon dioxide, conserve biodiversity, provide ecosystem services, and generate socio-economic co-benefits, contributing to global climate change mitigation and sustainable development goals.
+
+The Guardian policy for afforestation and reforestation of lands except wetlands (AR-ACM0003) incorporates schemas for project details, baseline scenario GHG removals, project scenario GHG removals, project scenario emissions, and leakage. These schemas provide a structured framework for site selection, emissions quantification, and monitoring procedures.
+
+**Workflow Description**:
+
+The workflow for the afforestation and reforestation of lands except wetlands (AR-ACM0003) Guardian policy involves the Project Proponent preparing and submitting the project description, which is then reviewed and approved by the Designated National Authority (DNA). The UNFCCC Secretariat adds the approved project to the project pipeline and registry. The Project Proponent conducts monitoring and submits the monitoring report to the Designated Operational Entity (VVB) for assessment and validation. Upon certification by the VVB, the UNFCCC Secretariat reviews the project and issues Certified Emission Reductions (CERs).
+
+
+
+**Note** :
+For Demo purpose, we have uploaded CDM Policy into IPFS and created Timestamps, which are mentioned in the below table.
+
+**Verra REDD Versions and their IPFS timestamps:**
+
+| Version | IPFS Timestamp | Policy File Link | Version Differences |
+|---|---|---|---:|
+| CDM AR-ACM0003 | 1684768427.831434003 | [Link](https://github.com/hashgraph/guardian/blob/main/Methodology%20Library/CDM/CDM.policy) | CDM AR-ACM0003 Methodology |
+
diff --git a/Methodology Library/Improved CookStove/policies/Improved Cookstove Policy.policy b/Methodology Library/Improved CookStove/policies/Improved Cookstove Policy.policy
new file mode 100644
index 0000000000..ad99a51830
Binary files /dev/null and b/Methodology Library/Improved CookStove/policies/Improved Cookstove Policy.policy differ
diff --git a/Methodology Library/iREC/Policies/iRec 10 Recipient (1684757087.809526003).policy b/Methodology Library/iREC/Policies/iRec 10 Recipient (1684757087.809526003).policy
new file mode 100644
index 0000000000..367af71f37
Binary files /dev/null and b/Methodology Library/iREC/Policies/iRec 10 Recipient (1684757087.809526003).policy differ
diff --git a/Methodology Library/iREC/Policies/iRec 10 Source (1684756995.238994037).policy b/Methodology Library/iREC/Policies/iRec 10 Source (1684756995.238994037).policy
new file mode 100644
index 0000000000..d5b6ef62f5
Binary files /dev/null and b/Methodology Library/iREC/Policies/iRec 10 Source (1684756995.238994037).policy differ
diff --git a/api-docs/.env (1) b/api-docs/.env (1)
new file mode 100644
index 0000000000..e69de29bb2
diff --git a/docs/guardian/standard-registry/policies/demo-on-policy-wizard-using-ui.md b/docs/guardian/standard-registry/policies/demo-on-policy-wizard-using-ui.md
new file mode 100644
index 0000000000..3793085e1c
--- /dev/null
+++ b/docs/guardian/standard-registry/policies/demo-on-policy-wizard-using-ui.md
@@ -0,0 +1,91 @@
+# 💻 Demo on Policy Wizard using UI
+
+There are two ways to open Policy Wizard:
+
+1. Click on Policy Wizard button from Policies Tab as shown below:
+
+
+
+2. Open from the Policy Configurator page:
+
+
+
+## 4 step process to complete Policy Wizard:
+
+### Policy Description:
+
+This step allows users to setup policy information such as name, description, policy tag and topic description.
+
+
+
+### Policy Roles:
+
+This step provides facilities to manage policy roles. Created Roles can be deleted by clicking on them.
+
+{% hint style="info" %}
+**Note:** Owner is the default policy role (Policy Owner) and cannot be deleted.
+{% endhint %}
+
+
+
+### 3. Policy Schemas
+
+This step allows facilities to manage schemas in the policy by selecting schemas in the dropdown.
+
+#### 3.1 {schema} configuration
+
+
+
+At this stage users set roles which are able to view the document grid. Additionally they can set the _produced schema_ to configure _produced schema_ creation based on the current schema.
+
+**Relationship schema** defines documents which will be placed in the relationships in the current schema (after creation).
+
+**Initial for roles** field defines which roles will see this schema (instead of displaying grid immediately) after role choosing.
+
+If **Approve and Reject** and **Minting tokens** are set to _enable_ the corresponding functions by this schema would be enabled. This additionally required to specify the token and the field in schema to be used in the minting rule.
+
+{% hint style="info" %}
+Note: We can select multiple schemas by entering the schemas names separated by a delimiter: ",".
+{% endhint %}
+
+
+
+#### 3.1.1 {role} configuration
+
+
+
+This step allows:
+
+1. To set _approver_ (only if _Approve and Reject functionality_ is enabled)
+2. _creator_ flags for the selected role.
+3. Also allows to select _grid columns_ (ordering is supported).
+
+### 4. TrustChain
+
+
+
+This step allows to set up users which are able to view grids with VPs and the grid with the trust chain.
+
+#### 4.1. {role} configuration
+
+
+
+In this step, Users can choose a minting schema which will be displayed on the trust chain. Additionally, visibility for VPs can be configured to ‘only own ‘ (recommended for the roles other than OWNER) or to ‘all’.
+
+## Save/Recovery Process
+
+After the policy in the wizard is configured, users can click on ‘Create’ and thereby save the progress of the wizard configuration to be able to restore it later.
+
+
+
+{% hint style="info" %}
+**Note:**
+
+1. If ‘Cancel' is clicked, then the wizard progress will be removed.
+2. Progress will be automatically removed when policy is published.
+{% endhint %}
+
+Next time, when the wizard is opened a dialog with the selector of wizard states would be displayed, where we can select respective policy and restore progress.
+
+
+
diff --git a/docs/guardian/standard-registry/policies/policy-wizard-apis/README.md b/docs/guardian/standard-registry/policies/policy-wizard-apis/README.md
new file mode 100644
index 0000000000..0f81dc8262
--- /dev/null
+++ b/docs/guardian/standard-registry/policies/policy-wizard-apis/README.md
@@ -0,0 +1,2 @@
+# ⚙ Policy Wizard APIs
+
diff --git a/docs/guardian/standard-registry/policies/policy-wizard-apis/creating-new-policy.md b/docs/guardian/standard-registry/policies/policy-wizard-apis/creating-new-policy.md
new file mode 100644
index 0000000000..e7cca609c3
--- /dev/null
+++ b/docs/guardian/standard-registry/policies/policy-wizard-apis/creating-new-policy.md
@@ -0,0 +1,78 @@
+# Creating new Policy
+
+{% swagger method="post" path="" baseUrl="/policy" summary="Creates a new policy." %}
+{% swagger-description %}
+Creates a new policy by wizard. Only users with the Standard Registry role are allowed to make the request. security:
+{% endswagger-description %}
+
+{% swagger-parameter in="body" type="Object" required="true" %}
+Object that contains wizard configuration.
+{% endswagger-parameter %}
+
+{% swagger-response status="201: Created" description="Successful Operation" %}
+```
+content:
+ application/json:
+ schema:
+ type: object
+ properties:
+ policyId:
+ type: string
+ wizardConfig:
+ $ref: "#/components/schemas/WizardConfig"
+```
+{% endswagger-response %}
+
+{% swagger-response status="401: Unauthorized" description="Unauthorized" %}
+
+{% endswagger-response %}
+
+{% swagger-response status="403: Forbidden" description="Forbidden" %}
+
+{% endswagger-response %}
+
+{% swagger-response status="500: Internal Server Error" description="Internal Server Error" %}
+```
+content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/Error"
+```
+{% endswagger-response %}
+{% endswagger %}
+
+{% swagger method="post" path="" baseUrl="/policy/push" summary="Creates a new policy." %}
+{% swagger-description %}
+Creates a new policy by wizard. Only users with the Standard Registry role are allowed to make the request.
+{% endswagger-description %}
+
+{% swagger-parameter in="body" type="Object" required="true" %}
+Object that contains wizard configuration.
+{% endswagger-parameter %}
+
+{% swagger-response status="201: Created" description="Successful Operation" %}
+```
+content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/Task"
+```
+{% endswagger-response %}
+
+{% swagger-response status="401: Unauthorized" description="Unauthorized" %}
+
+{% endswagger-response %}
+
+{% swagger-response status="403: Forbidden" description="Forbidden" %}
+
+{% endswagger-response %}
+
+{% swagger-response status="500: Internal Server Error" description="Internal Server Error" %}
+```
+content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/Error"
+```
+{% endswagger-response %}
+{% endswagger %}
diff --git a/docs/guardian/standard-registry/policies/policy-wizard-apis/getting-policy-configuration.md b/docs/guardian/standard-registry/policies/policy-wizard-apis/getting-policy-configuration.md
new file mode 100644
index 0000000000..cdf47c5be6
--- /dev/null
+++ b/docs/guardian/standard-registry/policies/policy-wizard-apis/getting-policy-configuration.md
@@ -0,0 +1,46 @@
+# Getting Policy Configuration
+
+{% swagger method="post" path="" baseUrl="/{policyId}/config" summary="Get policy config." %}
+{% swagger-description %}
+Get policy config by wizard. Only users with the Standard Registry role are allowed to make the request.
+{% endswagger-description %}
+
+{% swagger-parameter in="path" name="policyId" type="String" required="true" %}
+Policy identifier.
+{% endswagger-parameter %}
+
+{% swagger-parameter in="body" type="Object" required="true" %}
+Object that contains wizard configuration.
+{% endswagger-parameter %}
+
+{% swagger-response status="200: OK" description="Successful Operation" %}
+```
+content:
+ application/json:
+ schema:
+ type: object
+ properties:
+ policyConfig:
+ $ref: "#/components/schemas/PolicyConfig"
+ wizardConfig:
+ $ref: "#/components/schemas/WizardConfig"
+```
+{% endswagger-response %}
+
+{% swagger-response status="401: Unauthorized" description="Unauthorized" %}
+
+{% endswagger-response %}
+
+{% swagger-response status="403: Forbidden" description="Forbidden" %}
+
+{% endswagger-response %}
+
+{% swagger-response status="500: Internal Server Error" description="Internal Server Error" %}
+```
+content:
+ application/json:
+ schema:
+ $ref: "#/components/schemas/Error"
+```
+{% endswagger-response %}
+{% endswagger %}
diff --git a/docs/guardian/standard-registry/selective-disclosure-demo.md b/docs/guardian/standard-registry/selective-disclosure-demo.md
new file mode 100644
index 0000000000..c73f62782d
--- /dev/null
+++ b/docs/guardian/standard-registry/selective-disclosure-demo.md
@@ -0,0 +1,18 @@
+# 🔐 Selective Disclosure Demo
+
+Please check the steps involved in performing Selective Disclosure functionality:
+
+1. We need to select “Encrypted Verifiable Credential” option as an entity type while creating Schema.
+
+![](<../../.gitbook/assets/0 (5).png>)
+
+2. Some of the fields in schema can be marked as private (only when schema has Encrypted Verifiable Credential type):
+
+![](<../../.gitbook/assets/1 (1).png>)
+
+3. Encrypted Verifiable Credential will be published in IPFS with AES GCM encryption
+
+Aes256Gcm.nIwedhii-6Wd5li2F6G7jVDTh1vBUrtOvWGBCMQ4NYHnZoY5\_FeAorxZKw7of4zFTw\_2XnRlzP88EPDIASw540waI5\_GsdfX87YYeDIlYV09eTGeg6nTT6VjKoKFDSKDFVgXXqmzXCX9Y9i\_vQbWRiUDeFNLhJrH6m452HBCWNFFeKjTeqJSM8fvPWum\_1rpdcZtQUjs0sdZTGFafx-6q\_woO4Fy0TMzq4I7ETUkN6qrdXn90grlwoAHiUNuIcnofqwfwNldnJRHX8aWJRTseudZYZzF\_XvX3078qC-JZy0Oh7iTvE-Ok\_OCPnhBYkWJduCr-9qp0ewYfESB40j9YnQ5Y44OmNQU36Isdagdg9RQ5RFDNZIBBlbY8kXeU474vb6riqjGWW-veXM6JsacOXxLgvdYN1JLrq947ruUvGg4Cq5OKnXQ9Db19mVzl46sa-26UgtIJgSuK1oWKEToV6QO\_aX-Qjg5naNv2M2oeg3Yn8ZEnHvlmeWowSmPKFGes5-X6dQyWnAKH5-Scc\_HWFqhY1KGzh\_\_VTpGbiwTlg1gjq4Zuzlk6ce0OcuTgVeSYuifUOu6T4C9qCKh5SfsTzHegRJ0-Q29bmCsHIKOUE9oeacIRozr5z-WG87o2ohveIV2Oz-ZJgU\_EplKNc9wu1WEQ88oWeiCPmssWI0pDy388\_4zy\_CMgzc9cxJ6frAoKPLzKr\_3aL-ORrOaSEAARv13W37XehmqyP230N4e\_h1hzS7lcgotb3d2ElLt3My1WuOLySylH1AV1BqYpZBniOui0KT-rxXfHDhIkwYwYx-4vrlfVtqOcC6QX84G9uL0DnshUXxBA\_\_0KciO4v8u6qSAhhX6ubnXGQNFZ9nsV1QhMg2EitufxcxRFeztjbTtL8aOKKGltOIXDY88-oc\_k4luVW3ByVgmaaapd7jnFarHLlV2O41GR8CtX-2\_i3LT\_5xU\_WAtZIolRZZNujr-rRoPy2sQSDQHgBI65KNufTyCWlpyVhD-c-UMN0GV3Qf1K0yAcqRJF3nSuhyxlxR\_mQ3D3TrtHgiWdGir-5BDEJ8rVpW77Okb6KqXU1X\_nyISm4moG5vvj4-uoiZ5LeKOrUE3sxFzmvvorXkiKr-\_AFgK7uI8wxThgeN5XJPnYsltqAqI2tqsLpP6kuBfaktQQi6ItJoFoms\_IK2bohewR8XKu4GgmFxBla76rZ1HkWbovj3JA-n4bW9C9A1G5nOshCuBHUn4TFHOCkzrRGVM7hwAW9Rh-4ZfovYiENu0gv6Dqm27Flnm6LTQ2IN2BQcH37WmFNNycVE5Qr2hKzIM6CSaeV3ukvg=.QUAAAAAFaXYADAAAAADFkFYv-x1EYD2iwcsFYXQAEAAAAACQLRr6flPBpSYZk-zlo82VAmFkAAUAAABub25lAAA=.Pbkdf2Hmac.S0EAAAAFaXYAFAAAAAC5tzmfz7TiZiEsE5cs5NOgv\_-H7BBpAOxRAAAQbAAgAAAAAmhhc2gABwAAAFNIQTI1NgAA
+
+4. If VP contains Encrypted Verifiable Credential, fields marked as private will be automatically removed
+
diff --git a/docs/monitoring-tools.md b/docs/monitoring-tools.md
new file mode 100644
index 0000000000..bdf0b3895e
--- /dev/null
+++ b/docs/monitoring-tools.md
@@ -0,0 +1,36 @@
+---
+description: >-
+ The Guardian application is now integrated into some monitoring tools to give
+ you metrics to observe and analyze the performance and health of applications
+---
+
+# 📉 Monitoring tools
+
+Now, the Guardian application provides some ways to monitor its services using two widely used open-source applications.
+
+[Prometheus](https://prometheus.io/) and [Grafana](https://grafana.com/) are powerful monitoring tools commonly used to observe and analyze the performance and health of applications. In the context of monitoring the Guardian application, Prometheus and Grafana provide a comprehensive solution to collect, store, visualize, and alert on various metrics and data points.
+
+Prometheus is an open-source monitoring system that excels at collecting and storing time-series data. It is designed to monitor highly dynamic and distributed environments, making it an ideal choice for modern application architectures. Prometheus employs a pull-based model, where it periodically scrapes metrics data from configured targets, such as application instances or infrastructure components.
+
+With Prometheus, you can instrument your Guardian application to expose various metrics, such as request latency, error rates, resource utilization, and custom application-specific metrics. Prometheus stores this data in a time-series database, allowing you to query historical metrics and generate meaningful insights. Additionally, Prometheus offers a flexible querying language called PromQL, which enables advanced data analysis and aggregation.
+
+Grafana is a popular open-source data visualization and analytics platform that complements Prometheus by providing a feature-rich dashboarding solution. It allows you to create visually appealing and customizable dashboards to monitor and analyze metrics collected by Prometheus. Grafana supports a wide range of visualization options, including graphs, tables, heatmaps, and alerts.
+
+We have integrated Prometheus with Grafana, allowing you to create real-time dashboards that display critical metrics and provide a holistic view of your Guardian application's performance. These dashboards can help you identify bottlenecks, track trends, and troubleshoot issues promptly. Grafana also allows you to set up alerts based on predefined thresholds or complex rules, ensuring that you receive notifications when important metrics cross certain boundaries.
+
+Together, Prometheus and Grafana form a robust monitoring stack for the Guardian application, enabling you to gain valuable insights into its behavior and performance. By leveraging the power of Prometheus for data collection and Grafana for data visualization, you can proactively monitor your application, make data-driven decisions, and ensure a seamless user experience.
+
+These services are being scraped by Prometheus, which was defined to running here [**http://localhost:9090**](http://localhost:9090/). At this point, you can create your queries.
+
+* api-gateway
+* guardian-service
+* auth-service
+* policy-service
+* topic-viewer
+* mrv-sender
+
+A complete dashboard was created by default using the Grafana application to present interesting metrics. This dashboard can be accessed here once you have the Guardian application running -> [**http://localhost:9080**](http://localhost:9080/).
+
+
+
+\
diff --git a/frontend/src/app/modules/policy-engine/policy-viewer/blocks/upload-document-block/upload-document-block.component.css b/frontend/src/app/modules/policy-engine/policy-viewer/blocks/upload-document-block/upload-document-block.component.css
index c6e9129a9e..d463929af0 100644
--- a/frontend/src/app/modules/policy-engine/policy-viewer/blocks/upload-document-block/upload-document-block.component.css
+++ b/frontend/src/app/modules/policy-engine/policy-viewer/blocks/upload-document-block/upload-document-block.component.css
@@ -64,8 +64,8 @@
.body-dialog-template {
margin: 0;
padding: 0;
- padding-bottom: 70px;
- max-height: calc(70 * var(--vh)) !important;
+ padding-bottom: 20px;
+ max-height: calc(65vh + 40px) !important;
position: relative;
overflow: visible;
}
@@ -89,7 +89,7 @@
padding: 0 40px;
}
-.form-page .page-btns {
+.form-page .page-btns {
padding: 0px 40px 40px 40px;
}
@@ -134,7 +134,30 @@
margin-left: 3px;
}
+.registrant-application-create-btn {
+ display: none;
+}
+
@media (max-width: 810px) {
+ .loading {
+ top: 75px;
+ z-index: 999;
+ }
+
+ .loading-dialog {
+ position: fixed;
+ top: 75px;
+ z-index: 999;
+ bottom: 0;
+ }
+
+ .page-btns {
+ display: none !important;
+ }
+
+ .dialog-actions-container {
+ display: none !important;
+ }
h1 {
height: 40px;
@@ -161,10 +184,10 @@
.form-dialog {
width: 90%;
margin: 0 auto;
- padding: 0;
+ padding: 0px 0px 0px 0px;
border: none;
- max-height: 55vh;
- max-width: 90vh;
+ max-height: none;
+ max-width: 90vw;
}
.schema-form {
@@ -186,6 +209,7 @@
}
.registrant-application-create-btn {
+ display: block !important;
position: fixed;
width: calc(45% - 5px);
right: 5%;
diff --git a/logger-service/configs/.env.logger.develop b/logger-service/configs/.env.logger.develop
index d63d185e71..0c13a3fa40 100644
--- a/logger-service/configs/.env.logger.develop
+++ b/logger-service/configs/.env.logger.develop
@@ -1,3 +1,4 @@
+<<<<<<<< HEAD:logger-service/configs/.env.logger.develop
# Logger Service Specialized Variables
SERVICE_CHANNEL="logger-service"
DB_DATABASE="logger_db"
@@ -10,3 +11,6 @@ MQ_ADDRESS="localhost"
DB_HOST="localhost"
MQ_MAX_PAYLOAD="1048576"
#MQ_MESSAGE_CHUNK=5000000
+========
+GUARDIAN_ENV=""
+>>>>>>>> 0bbfabf22 (Merging Develop into Main for 2.13.0-prerelease (#2197)):logger-service/.env