Added biometrics for avatars.

This commit is contained in:
DebaucheryLibrarian
2026-07-05 04:02:00 +02:00
parent 32a3f876e3
commit 525bca255b
9 changed files with 912 additions and 28 deletions

View File

@@ -76,7 +76,7 @@ exports.up = async (knex) => {
});
await knex.schema.createTable('media', (table) => {
table.text('id', 21)
table.string('id', 21)
.primary();
table.text('path');

View File

@@ -0,0 +1,35 @@
exports.up = async function(knex) {
await knex.schema.createTable('media_biometrics', (table) => {
table.increments('id');
table.string('media_id', 21)
.references('id')
.inTable('media')
.notNullable()
.onDelete('cascade');
table.integer('width');
table.integer('height');
table.integer('face_index')
.notNullable()
.defaultTo(0);
table.json('biometrics');
table.specificType('embedding', 'vector(1024)');
table.datetime('updated_at')
.notNullable()
.defaultTo(knex.fn.now());
table.datetime('created_at')
.notNullable()
.defaultTo(knex.fn.now());
table.unique(['media_id', 'face_index']);
});
};
exports.down = async function(knex) {
await knex.schema.dropTable('media_biometrics');
};