CI / build + unit (pull_request) Successful in 1m15s
#rss subcommands on the command channel: help / add <url> <name> / remove <name> / tags / sources / get <name|#tag>. Sources are stored in a new rss_sources table in the existing MESH_DB_PATH file (second node:sqlite connection, case-insensitive names); feeds parsed with fast-xml-parser (RSS 2.0 + Atom); AI tags and headline summaries via injected LlmService.chat() with bounded maxTokens (50/200). CommandService gains prefix registration so one handler owns the whole #rss family while #ping stays an exact match; wired in CommandModule's factory — still no constructor-level cycle, no forwardRef. One dead feed does not sink a tag summary.
20 lines
546 B
TypeScript
20 lines
546 B
TypeScript
import { Module } from '@nestjs/common';
|
|
import { BatteryAlertModule } from './battery/battery.module.js';
|
|
import { CommandModule } from './commands/command.module.js';
|
|
import { LlmModule } from './llm/llm.module.js';
|
|
import { MeshModule } from './mesh/mesh.module.js';
|
|
import { RssModule } from './rss/rss.module.js';
|
|
import { WeatherModule } from './weather/weather.module.js';
|
|
|
|
@Module({
|
|
imports: [
|
|
MeshModule,
|
|
WeatherModule,
|
|
BatteryAlertModule,
|
|
CommandModule,
|
|
LlmModule,
|
|
RssModule,
|
|
],
|
|
})
|
|
export class AppModule {}
|