depends on #26
Once users are able to create additional knowledge bases, create a management system to share a knowledge base with other users in read only mode or contributor mode.
Read only will allow users to only read from the lancedb table.
Contributor mode will allow users to upload documents to a specific knowledge base.
Admin mode will allow users to delete documents from a knowledge base.
This implies a change on the way we ingest documents and maintain them in the document registry. For example, we'll have to assert uniqueness based on MD5(kb_id, content) rather than MD5(user_id, content). This should not be a big deal, as we're currently using a user's cognito_id to identify their default knowledge base.
depends on #26
Once users are able to create additional knowledge bases, create a management system to share a knowledge base with other users in read only mode or contributor mode.
Read only will allow users to only read from the lancedb table.
Contributor mode will allow users to upload documents to a specific knowledge base.
Admin mode will allow users to delete documents from a knowledge base.
This implies a change on the way we ingest documents and maintain them in the document registry. For example, we'll have to assert uniqueness based on
MD5(kb_id, content)
rather thanMD5(user_id, content)
. This should not be a big deal, as we're currently using a user's cognito_id to identify their default knowledge base.