Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/remove-bidirectional-project-link.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@hypercerts-org/lexicon": minor
---

Remove bidirectional project-activity link. Activities no longer include a `project` field reference. Projects continue to reference activities via the `activities` array, making the relationship unidirectional (project → activities only).
2 changes: 0 additions & 2 deletions ERD.puml
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,6 @@ dataclass activity <<largeBold>> #B4E5D0 {
contributions[]?
locations[]?
rights?
project?
createdAt
!endif
}
Expand Down Expand Up @@ -305,7 +304,6 @@ project::location --> location
activity::contributions -l--> contribution
activity::rights --> rights
activity::locations --> location
activity::project --> project

contribution::contributors --> contributor : made by

Expand Down
3 changes: 1 addition & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -298,7 +298,6 @@ Hypercerts-specific lexicons for tracking impact work and claims.
| `contributions` | `array` | ❌ | A strong reference to the contributions done to create the impact in the hypercerts | References must conform to `org.hypercerts.claim.contribution` |
| `rights` | `ref` | ❌ | A strong reference to the rights that this hypercert has | References must conform to `org.hypercerts.claim.rights` |
| `locations` | `ref` | ❌ | An array of strong references to the locations where the work for done hypercert was located | References must conform to `app.certified.location` |
| `project` | `string` | ❌ | A reference (AT-URI) to the project record that this activity is part of | References must conform to `org.hypercerts.claim.project` |
| `createdAt` | `string` | ✅ | Client-declared timestamp when this record was originally created | |

#### Defs
Expand Down Expand Up @@ -427,7 +426,7 @@ Hypercerts-specific lexicons for tracking impact work and claims.

**Lexicon ID:** `org.hypercerts.claim.project`

**Description:** A project that can include multiple activities, each of which may be linked to at most one project.
**Description:** A project that can include multiple activities

**Key:** `tid`

Expand Down
5 changes: 0 additions & 5 deletions lexicons/org/hypercerts/claim/activity.json
Original file line number Diff line number Diff line change
Expand Up @@ -76,11 +76,6 @@
"ref": "com.atproto.repo.strongRef"
}
},
"project": {
"type": "string",
"format": "at-uri",
"description": "A reference (AT-URI) to the project record that this activity is part of. The record referenced must conform with the lexicon org.hypercerts.claim.project. This activity must also be referenced by the project, establishing a bidirectional link."
},
"createdAt": {
"type": "string",
"format": "datetime",
Expand Down
2 changes: 1 addition & 1 deletion lexicons/org/hypercerts/claim/project.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"defs": {
"main": {
"type": "record",
"description": "A project that can include multiple activities, each of which may be linked to at most one project.",
"description": "A project that can include multiple activities",
"key": "tid",
"record": {
"type": "object",
Expand Down