tududi/backend/migrations/20250711000001-add-suggestion-metadata-to-inbox-items.js
Antonis Anastasiadis 4878c71618 Lint & format (#159)
Co-authored-by: antanst <>
2025-07-15 10:44:02 +03:00

59 lines
2 KiB
JavaScript

'use strict';
const { safeAddColumns } = require('../utils/migration-utils');
module.exports = {
async up(queryInterface, Sequelize) {
await safeAddColumns(queryInterface, 'inbox_items', [
{
name: 'suggested_type',
definition: {
type: Sequelize.STRING,
allowNull: true,
comment: 'AI suggested item type: task, note, or null',
},
},
{
name: 'suggested_reason',
definition: {
type: Sequelize.STRING,
allowNull: true,
comment:
'Reason for suggestion: verb_detected, bookmark_tag, etc.',
},
},
{
name: 'parsed_tags',
definition: {
type: Sequelize.JSON,
allowNull: true,
comment: 'Array of parsed hashtags from content',
},
},
{
name: 'parsed_projects',
definition: {
type: Sequelize.JSON,
allowNull: true,
comment: 'Array of parsed project references from content',
},
},
{
name: 'cleaned_content',
definition: {
type: Sequelize.STRING,
allowNull: true,
comment: 'Content with tags and project references removed',
},
},
]);
},
async down(queryInterface, Sequelize) {
await queryInterface.removeColumn('inbox_items', 'suggested_type');
await queryInterface.removeColumn('inbox_items', 'suggested_reason');
await queryInterface.removeColumn('inbox_items', 'parsed_tags');
await queryInterface.removeColumn('inbox_items', 'parsed_projects');
await queryInterface.removeColumn('inbox_items', 'cleaned_content');
},
};