今週の旅bot達の様子。
X/Twitter側は少し簡略化して1日1人の旅という形で現状運用中です。
ここ一週間の三姉妹の道程
mi
お疲れ様。天草を見物中です。御所浦付近も細かく島がある場所なので行き先設定は結構難しいです。
mu
お疲れ様。今治に到着したところです。個人的にはタオル博物館とか珍しいと思いましたがmuは今治城のほうが気に入ったようですね。
mei
お疲れ様。先週からそのままロングアイランド島の南側を東に向かっています。観光地だと思うのですがアウトドア系統の場所のようです。まだ東端に何があるのか見ていません。
いろいろリファクタリング中
想起RAG周りで筋の悪いバグがあって修正中なのですが、この際次の展開に合わせて全体をリファクタリング中です。
リファクタリングはやろうとすると面倒なのですが、ガッツリやろうとやる気になると新技術の習得も含めて結構面白くなってくるので不思議です。
mi-serverそのものは元々tsedをベースにして作っているのですが最近はEffectを混ぜ込んでいます。
いろいろ混ぜたためでもあるのですが、元々思いついては機能追加みたいなことをしていたのでserviceの依存関係が崩れやすくなっていて、依存関係エラーが出やすくなっていたのですよ。
この前、機能を追加するのに依存エラーを解決できなくなって、思っていたソースの場所と違うところに処理を置くはめになって、これはさすがにちょっとまずいかなと。。
dbmsもtypeORMを使っているのですが、開発途中ではPrismaを使おうとしたものの、Raspberry piでPrismaがうまく動かない頃があり(今はどうなんだろう?)typeORMを使っています。dbmsもこの際今風のものに置き換えようと思うのですがdbmsの引越とか仕事で考えたらよほどでないとちょっとやれないですよね。
こういうのも個人で道楽でやってる強みです。
方向はAI処理周りと旅bot周りを、よりEffect寄りに置き換えて整理するという考え方です。将来的には別のプロジェクトに切り出したいところです。
レガシー処理は既存のままで残してデグレートは抑える方向です。
そういう意味でいうと今のmi-serverは二代目でして、最初のmi-serverはtsed v5(v6に移行)で個人タスク/スマートプラグ管理、旅bot機能を切り出して以降の新機能をmi-server2(tsed v6->tsed v7)に移行してAI機能を含める新機能はこちらで構築です。
その次の世代を準備中という感じでしょうか。
最近Effectのランタイム周りが固まってきてServiceをどう書くかがようやくはっきりしてきたのでこの仕組みに寄せようかなと。といいつつも当のEffectは結構breaking changeしてくるので怖くはあるのですが。。
dbmsもそれに合わせてdrizzle ormに置き換えはじめています。でも@effect/sql-drizzle(effect用drizzleスタブ)もまだなんちゃって感があるんですよね。。
Effectはフレームワークとして使うにはまだ固まってないところが多いので当面はtsedの下に軒を借りてEffectで書き換えたServiceを少しずつ置いていこうとしています。
と、ここまで書いたら tsed もversion 8がbeta-preview中らしい。。
tsed v8がv7と比べてどう便利なのかはまだ分からないのですが、出来次第ではtsed v8を主にしてEffectをロジック処理範囲にするかもしれない。
まぁ仕事でやってる訳ではないので安全牌を打たずに、面白くモチベーションを保てたらアリなんです。
という訳で「まぁメイドさん」の機能的な改善はちょっと遅れているのですが、これについてはコンセプトに絞って記事を書こうと思っています。