Initial commit

This commit is contained in:
David Frassi
2026-06-17 01:26:44 +02:00
commit 51c56a6f30
65 changed files with 3731 additions and 0 deletions
+51
View File
@@ -0,0 +1,51 @@
[2026-05-05 21:05:20] INVIO POST a Canale: 69f9e7e35c4c051afa116a9e
[2026-05-05 21:05:22] RISPOSTA BUFFER: {"post": {"id": "69fa5b92508055e61464dc15"}}
[2026-05-05 21:05:22] INVIO POST a Canale: 69f9ea855c4c051afa117baa
[2026-05-05 21:05:22] ERRORE HTTP 400: {"errors":[{"message":"Variable \"$input\" got invalid value { type: \"post\" } at \"input.metadata.instagram\"; Field \"shouldShareToFeed\" of required type \"Boolean!\" was not provided.","locations":[{"line":2,"column":23}],"extensions":{"code":"BAD_USER_INPUT"}}]}
[2026-05-05 21:07:05] INVIO POST a Canale: 69f9e7e35c4c051afa116a9e
[2026-05-05 21:07:06] RISPOSTA BUFFER: {"post": {"id": "69fa5bfaf2feba8c0c48e58f"}}
[2026-05-05 21:07:06] INVIO POST a Canale: 69f9ea855c4c051afa117baa
[2026-05-05 21:07:07] RISPOSTA BUFFER: {"post": {"id": "69fa5bfbf2feba8c0c48e5a9"}}
[2026-05-05 21:09:19] INVIO POST a Canale: 69f9e7e35c4c051afa116a9e
[2026-05-05 21:09:20] RISPOSTA BUFFER: {"post": {"id": "69fa5c80f2feba8c0c48e835"}}
[2026-05-05 21:09:20] INVIO POST a Canale: 69f9ea855c4c051afa117baa
[2026-05-05 21:09:21] RISPOSTA BUFFER: {"post": {"id": "69fa5c81508055e61464e273"}}
[2026-05-05 21:37:02] INVIO POST a Canale: 69f9e7e35c4c051afa116a9e
[2026-05-05 21:37:04] RISPOSTA BUFFER: {"post": {"id": "69fa6300f2feba8c0c492100"}}
[2026-05-05 21:37:04] INVIO POST a Canale: 69f9ea855c4c051afa117baa
[2026-05-05 21:37:05] RISPOSTA BUFFER: {"post": {"id": "69fa6301f2feba8c0c492127"}}
[2026-05-05 21:38:31] INVIO POST a Canale: 69f9e7e35c4c051afa116a9e
[2026-05-05 21:38:33] RISPOSTA BUFFER: {"post": {"id": "69fa6359508055e614652001"}}
[2026-05-05 21:38:33] INVIO POST a Canale: 69f9ea855c4c051afa117baa
[2026-05-05 21:38:35] RISPOSTA BUFFER: {"post": {"id": "69fa635bf2feba8c0c4922ab"}}
[2026-05-05 21:41:27] INVIO POST a Canale: 69f9e7e35c4c051afa116a9e
[2026-05-05 21:41:27] ERRORE HTTP 400: {"errors":[{"message":"Variable \"$input\" got invalid value { channelId: \"69f9e7e35c4c051afa116a9e\", text: \"*Un volo elettrico verso il nulla ✨*\\n\\nLuci notturne, riflessi dorati e il bisogno viscerale di lasciarsi tutto alle spalle. \\\"Midnight Meridian\\\" è la mia fuga urbana, una catarsi tra synth brillanti e ritmi che non lasciano scampo. Se senti la necessità di perderti nel movimento per ritrovare te stessa, questa è la tua nuova colonna sonora. Lascia che le ombre prendano vita e abbandonati a questa danza liberatoria. Ascolta ora: https://distrokid.com/hyperfollow/veronika33/midnight-meridian-2\\n\\n#MidnightMeridian #Veronika33 #Synthwave #ElectronicMusic #NewMusic #UrbanVibes #NightLife #Catharsis #Synthpop #DanceMusic #MusicRelease #MidnightVibes #IndependentArtist #ElectroPop #NightDrive\", mode: \"shareNow\", assets: { images: [Array] }, metadata: { tiktok: [Object] } }; Field \"schedulingType\" of required type \"SchedulingType!\" was not provided.","locations":[{"line":2,"column":23}],"extensions":{"code":"BAD_USER_INPUT"}}]}
[2026-05-05 21:41:27] INVIO POST a Canale: 69f9ea855c4c051afa117baa
[2026-05-05 21:41:27] ERRORE HTTP 400: {"errors":[{"message":"Variable \"$input\" got invalid value { channelId: \"69f9ea855c4c051afa117baa\", text: \"*Un volo elettrico verso il nulla ✨*\\n\\nLuci notturne, riflessi dorati e il bisogno viscerale di lasciarsi tutto alle spalle. \\\"Midnight Meridian\\\" è la mia fuga urbana, una catarsi tra synth brillanti e ritmi che non lasciano scampo. Se senti la necessità di perderti nel movimento per ritrovare te stessa, questa è la tua nuova colonna sonora. Lascia che le ombre prendano vita e abbandonati a questa danza liberatoria. Ascolta ora: https://distrokid.com/hyperfollow/veronika33/midnight-meridian-2\\n\\n#MidnightMeridian #Veronika33 #Synthwave #ElectronicMusic #NewMusic #UrbanVibes #NightLife #Catharsis #Synthpop #DanceMusic #MusicRelease #MidnightVibes #IndependentArtist #ElectroPop #NightDrive\", mode: \"shareNow\", assets: { images: [Array] }, metadata: { instagram: [Object] } }; Field \"schedulingType\" of required type \"SchedulingType!\" was not provided.","locations":[{"line":2,"column":23}],"extensions":{"code":"BAD_USER_INPUT"}}]}
[2026-05-05 21:42:30] INVIO POST a Canale: 69f9e7e35c4c051afa116a9e
[2026-05-05 21:42:41] RISPOSTA BUFFER: {"post": {"id": "69fa6447f2feba8c0c492ab3"}}
[2026-05-05 21:42:41] INVIO POST a Canale: 69f9ea855c4c051afa117baa
[2026-05-05 21:42:52] RISPOSTA BUFFER: {"post": {"id": "69fa6452f2feba8c0c492ae3"}}
[2026-05-06 00:27:00] INVIO POST a Canale: 69f9e7e35c4c051afa116a9e
[2026-05-06 00:27:01] ERRORE HTTP 400: {"errors":[{"message":"Variable \"$input\" got invalid value { video: { url: \"https://h.uguu.se/iBZbfOTe.mp4\" } } at \"input.assets\"; Field \"video\" is not defined by type \"AssetsInput\". [Suggestion hidden]?","locations":[{"line":2,"column":23}],"extensions":{"code":"BAD_USER_INPUT"}}]}
[2026-05-06 00:27:01] INVIO POST a Canale: 69f9ea855c4c051afa117baa
[2026-05-06 00:27:01] ERRORE HTTP 400: {"errors":[{"message":"Variable \"$input\" got invalid value { video: { url: \"https://h.uguu.se/iBZbfOTe.mp4\" } } at \"input.assets\"; Field \"video\" is not defined by type \"AssetsInput\". [Suggestion hidden]?","locations":[{"line":2,"column":23}],"extensions":{"code":"BAD_USER_INPUT"}}]}
[2026-05-06 00:28:05] INVIO POST a Canale: 69f9e7e35c4c051afa116a9e
[2026-05-06 00:28:19] RISPOSTA BUFFER: {"post": {"id": "69fa8b19e6fd3862f225c85c"}}
[2026-05-06 00:28:19] INVIO POST a Canale: 69f9ea855c4c051afa117baa
[2026-05-06 00:28:32] RISPOSTA BUFFER: {"post": {"id": "69fa8b25e6fd3862f225c8e1"}}
[2026-05-12 23:52:39] INVIO POST a Canale: 69f9e7e35c4c051afa116a9e
[2026-05-12 23:52:39] RISPOSTA BUFFER: {"message": "Channel not found"}
[2026-05-12 23:52:39] INVIO POST a Canale: 69f9ea855c4c051afa117baa
[2026-05-12 23:52:40] RISPOSTA BUFFER: {"message": "Channel not found"}
[2026-05-13 00:09:28] Nessun Profile ID fornito, avvio auto-discovery...
[2026-05-13 00:09:29] ERRORE recupero profili: {"errors":[{"message":"Cannot query field \"profiles\" on type \"Query\".","locations":[{"line":3,"column":11}],"extensions":{"code":"GRAPHQL_VALIDATION_FAILED"}}]}
[2026-05-13 00:09:48] Nessun Profile ID fornito, avvio auto-discovery...
[2026-05-13 00:09:48] ERRORE recupero profili: {"errors":[{"message":"Cannot query field \"profiles\" on type \"Query\".","locations":[{"line":3,"column":11}],"extensions":{"code":"GRAPHQL_VALIDATION_FAILED"}}]}
+5
View File
@@ -0,0 +1,5 @@
{
"total_monthly": 1000,
"remaining": 910,
"generated_this_month": 90
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 MiB

BIN
View File
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 478 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 312 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 578 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 MiB

+138
View File
@@ -0,0 +1,138 @@
--- Tue May 12 16:02:34 2026 ---
❌ Errore critico nel task generate (StereoComics): Failed to retrieve file url:
Cannot retrieve the public link of the file. You may need to change
the permission to 'Anyone with the link', or have had many accesses.
Check FAQ in https://github.com/wkentaro/gdown?tab=readme-ov-file#faq.
You may still be able to access the file from the browser:
https://drive.google.com/uc?id=14RMoKsiupSQVj2MEzbXgNBzKZ3FPLSVQ
but Gdown can't. Please check connections and permissions.
Traceback (most recent call last):
File "/usr/local/lib/python3.11/site-packages/gdown/download.py", line 301, in download
url = get_url_from_gdrive_confirmation(res.text)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/gdown/download.py", line 65, in get_url_from_gdrive_confirmation
raise FileURLRetrievalError(
gdown.exceptions.FileURLRetrievalError: Cannot retrieve the public link of the file. You may need to change the permission to 'Anyone with the link', or have had many accesses. Check FAQ in https://github.com/wkentaro/gdown?tab=readme-ov-file#faq.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/app/src/background_runner.py", line 71, in <module>
run_generate(args.artist_id, mode=args.mode)
File "/app/src/background_runner.py", line 43, in run_generate
results = agents.run_for_artist(artist, mode=mode)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/app/src/agents.py", line 285, in run_for_artist
audio_state = self.analyze_audio_node(initial_state)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/app/src/agents.py", line 49, in analyze_audio_node
gdown.download(url, output=path, quiet=True)
File "/usr/local/lib/python3.11/site-packages/gdown/download.py", line 312, in download
raise FileURLRetrievalError(message)
gdown.exceptions.FileURLRetrievalError: Failed to retrieve file url:
Cannot retrieve the public link of the file. You may need to change
the permission to 'Anyone with the link', or have had many accesses.
Check FAQ in https://github.com/wkentaro/gdown?tab=readme-ov-file#faq.
You may still be able to access the file from the browser:
https://drive.google.com/uc?id=14RMoKsiupSQVj2MEzbXgNBzKZ3FPLSVQ
but Gdown can't. Please check connections and permissions.
--- Tue May 12 20:58:46 2026 ---
❌ Errore critico nel task generate (Veronica Intorcia): (sqlite3.OperationalError) table drafts has no column named focus_points
[SQL: INSERT INTO drafts (artist_id, title, caption, hashtags, image_path, image_paths, image_url, video_url, video_path, audio_analysis, focus_points, status, created_at) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)]
[parameters: ('Veronica Intorcia', "Perdersi nell'Emozione", 'Lasciati trasportare dalle vibrazioni ipnotiche di "Lost In The Emotion". Una fusione magistrale tra Deep House e Melodic House, dove voci soul incon ... (151 characters truncated) ... ofisticata o vuole accendere l\'energia della notte. Ascolta ora il nuovo brano qui: https://distrokid.com/hyperfollow/veronika33/midnight-meridian-2', '#DeepHouse #MelodicHouse #ElectronicMusic #LostInTheEmotion #HouseMusic #SoulfulHouse #NewMusicAlert #HypnoticBeats #MusicJourney #NightVibes #MelodicTechno #IntrospectiveVibes #EuphoricMusic #DanceMusic #NewRelease', '', None, None, '', None, "Immergiti nelle profondità ipnotiche di 'Lost In The Emotion', una magistrale fusione di Deep House e Melodic House. Con le sue voci soul, il ritmo i ... (166 characters truncated) ... are un mood sofisticato o accendere l'energia notturna, è un viaggio sonoro accattivante, progettato per risuonare profondamente con gli ascoltatori.", None, 'pending', '2026-05-12 20:58:46.021420')]
(Background on this error at: https://sqlalche.me/e/20/e3q8)
Traceback (most recent call last):
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context
self.dialect.do_execute(
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/default.py", line 952, in do_execute
cursor.execute(statement, parameters)
sqlite3.OperationalError: table drafts has no column named focus_points
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/app/src/background_runner.py", line 72, in <module>
run_generate(args.artist_id, mode=args.mode)
File "/app/src/background_runner.py", line 46, in run_generate
db.save_draft(
File "/app/src/database.py", line 131, in save_draft
session.commit()
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 2030, in commit
trans.commit(_to_root=True)
File "<string>", line 2, in commit
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/state_changes.py", line 137, in _go
ret_value = fn(self, *arg, **kw)
^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 1311, in commit
self._prepare_impl()
File "<string>", line 2, in _prepare_impl
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/state_changes.py", line 137, in _go
ret_value = fn(self, *arg, **kw)
^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 1286, in _prepare_impl
self.session.flush()
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 4331, in flush
self._flush(objects)
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 4466, in _flush
with util.safe_reraise():
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/util/langhelpers.py", line 121, in __exit__
raise exc_value.with_traceback(exc_tb)
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/session.py", line 4427, in _flush
flush_context.execute()
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/unitofwork.py", line 466, in execute
rec.execute(self)
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/unitofwork.py", line 642, in execute
util.preloaded.orm_persistence.save_obj(
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/persistence.py", line 93, in save_obj
_emit_insert_statements(
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/persistence.py", line 1233, in _emit_insert_statements
result = connection.execute(
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1419, in execute
return meth(
^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/sql/elements.py", line 527, in _execute_on_connection
return connection._execute_clauseelement(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1641, in _execute_clauseelement
ret = self._execute_context(
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1846, in _execute_context
return self._exec_single_context(
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1986, in _exec_single_context
self._handle_dbapi_exception(
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 2363, in _handle_dbapi_exception
raise sqlalchemy_exception.with_traceback(exc_info[2]) from e
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py", line 1967, in _exec_single_context
self.dialect.do_execute(
File "/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/default.py", line 952, in do_execute
cursor.execute(statement, parameters)
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) table drafts has no column named focus_points
[SQL: INSERT INTO drafts (artist_id, title, caption, hashtags, image_path, image_paths, image_url, video_url, video_path, audio_analysis, focus_points, status, created_at) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)]
[parameters: ('Veronica Intorcia', "Perdersi nell'Emozione", 'Lasciati trasportare dalle vibrazioni ipnotiche di "Lost In The Emotion". Una fusione magistrale tra Deep House e Melodic House, dove voci soul incon ... (151 characters truncated) ... ofisticata o vuole accendere l\'energia della notte. Ascolta ora il nuovo brano qui: https://distrokid.com/hyperfollow/veronika33/midnight-meridian-2', '#DeepHouse #MelodicHouse #ElectronicMusic #LostInTheEmotion #HouseMusic #SoulfulHouse #NewMusicAlert #HypnoticBeats #MusicJourney #NightVibes #MelodicTechno #IntrospectiveVibes #EuphoricMusic #DanceMusic #NewRelease', '', None, None, '', None, "Immergiti nelle profondità ipnotiche di 'Lost In The Emotion', una magistrale fusione di Deep House e Melodic House. Con le sue voci soul, il ritmo i ... (166 characters truncated) ... are un mood sofisticato o accendere l'energia notturna, è un viaggio sonoro accattivante, progettato per risuonare profondamente con gli ascoltatori.", None, 'pending', '2026-05-12 20:58:46.021420')]
(Background on this error at: https://sqlalche.me/e/20/e3q8)
--- Thu May 28 09:50:25 2026 ---
❌ Errore critico nel task higgsfield (Veronica Intorcia): name 'subprocess' is not defined
Traceback (most recent call last):
File "/Users/davidfrassi/SRC/agenti/agenzia/src/background_runner.py", line 136, in <module>
run_higgsfield(args.artist_id, args.prompt, dry_run=args.dry_run)
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/davidfrassi/SRC/agenti/agenzia/src/background_runner.py", line 114, in run_higgsfield
res = subprocess.run(cmd, capture_output=True, text=True)
^^^^^^^^^^
NameError: name 'subprocess' is not defined. Did you forget to import 'subprocess'?