-
Notifications
You must be signed in to change notification settings - Fork 28
feat: neo4j connector #539
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
neo4j.datasource.config.mp4 |
Doc example{
"_index": "coco_document-v2",
"_type": "_doc",
"_id": "99786427481574a4b5e5d4640daf5493",
"_score": 0,
"_source": {
"id": "99786427481574a4b5e5d4640daf5493",
"payload": {
"coco_property": "2025-10-09T04:28:44.918Z",
"n": {
"category": "Legal",
"disabled": false,
"document_id": "doc-AA27",
"lang": "en",
"opened_date": "2025-09-20",
"size": 180000,
"summary": "Updated policy regarding the retention and deletion of client data.",
"title": "Data Retention Policy v2",
"type": "PDF",
"updated": "2025-10-09T04:28:44.918Z"
},
"n.disabled": false,
"n.element_id": "4:1093e8af-4022-4813-9534-8c7121ac10d4:557",
"n.labels": [
"Document"
],
"n.opened_date": "2025-09-20",
"n.updated": "2025-10-09T04:28:44.918Z"
},
"source": {
"type": "connector",
"name": "Neo4j Docs",
"id": "d3d34pdafbilvmlmnlsg"
},
"type": "PDF",
"category": "Legal",
"title": "Data Retention Policy v2",
"summary": "Updated policy regarding the retention and deletion of client data.",
"lang": "en",
"size": 180000,
"last_updated_by": {}
}
} |
Tie *StoredCursorValue `json:"tie,omitempty"` | ||
} | ||
|
||
type SyncState struct { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I noticed there’s a sync state management feature — that’s great to have. I’d like to extend this concept to the generic connector management infrastructure, so other connectors can also benefit from it.
I’m working on integrating existing connectors into the processor layer and leveraging the generic pipeline framework to unify data processing capabilities — stay tuned!
- Resolved conflicts in web frontend files - Merged connector types from both branches - Added Neo4j, Feishu, and Lark to supported types - All connector refactoring work preserved from both branches 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
|
config/setup/zh-CN/connector.tpl
Outdated
"default" : "/assets/icons/connector/neo4j/icon.png" | ||
} | ||
}, | ||
"builtin": true |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
processor is missing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
coco.yml
Outdated
interval: 30s | ||
queue: | ||
name: indexing_documents | ||
neo4j: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is not necessary needed anymore.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
Enable the connector in `coco.yml` so coco-server can schedule sync jobs: | ||
|
||
```yaml | ||
connector: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
docs need to update.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
|
||
| **Field** | **Type** | **Description** | | ||
|--------------|-----------|------------------------------------------------------------------------------------------| | ||
| `enabled` | `boolean` | Turns the Neo4j connector on or off. | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this config section is not needed any more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
ormCtx := orm.NewContextWithParent(ctx) | ||
state := &SyncState{} | ||
state.SetID(makeSyncStateID(connectorID, datasourceID)) | ||
exists, err := orm.GetV2(ormCtx, state) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
need to add ctx.DirectAccess()
for load and save function, as they are background jobs.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
What does this PR do
feat: neo4j connector
Standards checklist