Meta Configuration in DVID

NeuTu also relies on some configuration in the target DVID node to tune its behavior.

neutu_config

neutu_config is a keyvalue that stores the following keys:

user_status

It defines roles of some users. Currently it is mainly used for defining admin users:

{
"admin": ["user1", "user2"]
}

body_status_v2

Its value is a JSON object that defines body statuses used by body annotation. The main field of the JSON object is "status" that maps to an array, in which each element is a JSON object that defines one status:

Schema for a status object
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"name": {
"description": "name of the status",
"type": "string"
},
"protection": {
"description": "protection level",
"type": "integer"
},
"priority": {
"description": "status with higher priority overwrites the lower one in merging",
"type": "integer"
},
"final": {
"description": "final status, which cannot be changed by non-admin",
"type": "boolean"
},
"admin_level": {
"description": "0 means nothing special and 1 means it can only be added by admin",
"type": "integer"
}
},
"required": [
"name"
]
}

Protection level:

0: can be added or changed by anyone

4-6 (obsolete): can only be added by admin, but changed by anyone. It is obsolete and should use "admin_level": 1 instead for this purpose.

7-8: can only be added or changed by admin

>=9: can only be changed

Example
Example
{
"status": [
{
"protection": 9,
"priority": 0,
"name": "Finalized",
"expert": false,
"final": true
},
{
"protection": 5,
"priority": 10,
"name": "Traced",
"expert": true,
"final": false,
"admin_level": 1
},
{
"protection": 9,
"priority": 20,
"name": "Traced in ROI",
"expert": false,
"final": false
},
{
"protection": 5,
"priority": 30,
"name": "Roughly traced",
"expert": true,
"final": false,
"admin_level": 1
},
{
"protection": 0,
"priority": 40,
"name": "Prelim Roughly traced",
"expert": false,
"final": false
},
{
"protection": 9,
"priority": 50,
"name": "Partially traced",
"expert": false,
"final": false
},
{
"protection": 0,
"priority": 55,
"name": "Unimportant",
"expert": false,
"final": false,
"mergable": false
},
{
"protection": 9,
"priority": 60,
"name": "Hard to trace",
"expert": false,
"final": false
},
{
"protection": 9,
"priority": 70,
"name": "Anchor",
"expert": false,
"final": false,
"admin_level": 1
},
{
"protection": 0,
"priority": 80,
"name": "Leaves",
"expert": false,
"final": true
},
{
"protection": 9,
"priority": 90,
"name": "0.5assign",
"expert": false,
"final": false
},
{
"protection": 9,
"priority": 100,
"name": "Not examined",
"expert": false,
"final": false
},
{
"protection": 0,
"priority": 110,
"name": "Orphan hotknife",
"expert": false,
"final": false
},
{
"protection": 0,
"priority": 120,
"name": "Orphan",
"expert": false,
"final": false
}
],
"conflict": [
["roughly traced", "prelim roughly traced", "anchor", "traced"]
]
}
‚Äč