Rendered at 23:30:06 GMT+0000 (Coordinated Universal Time) with Cloudflare Workers.
tuoxie2004 33 minutes ago [-]
[flagged]
giannischatz 4 hours ago [-]
Interesting approach. One thing that always bites spreadsheet-centric
tools: cell references survive insertion/deletion in weird ways
(formulas don't, LLM "cell pointers" definitely won't).
If a cell's agent output lives at A3 and someone inserts a row above,
is the agent now watching A4? The naive answer is yes, but then
re-running the agent might produce different output than what's
displayed in the referenced range elsewhere. Spreadsheet users are
very used to this working magically for formulas — if agents break
the invariant, it'll feel broken even when nothing technically is.
How are you handling that?
sshah03 2 hours ago [-]
I punt on this a little bit, in that to make it easier I don't allow actions that would cause issues with this when an agent is still running (insert, delete, sort rows etc...) because it's tough to handle for mid-execution.
However, in the other cases, references get rewritten the same way everywhere (whether it's a formula, or an agent's watch list), so {A3} becomes {A4} etc... everywhere with the same process. Also in that case, it doesn't get marked for needing to be "re-run" because it checks value itself is unchanged, even if the cell being referred to changed.
I've tested it quite a bit. Given all of the moving parts in a spreadsheet app there's still the possibility that given enough usage someone encounters some combination of moves where this fails, but I think if that does happen it should be a fixable bug.
I also provide a backup solution with "Named cells", basically off sheet cells that can be used for constants and such and referenced by name instead of by cell, if needed.
compiler-guy 12 minutes ago [-]
I think you could use named cells to fix the insert/delete row problem in general.
The named cell can have a trivial `=SheetName!a3`. Those will be automatically updated with insert and delete just like any other formula.
They can be referenced directly for reading, and for writing you can do a quick parse and find the original.
loveTech 1 days ago [-]
[dead]
sshah03 1 days ago [-]
Thanks! I do have some videos in the repo demonstrating what it can do; however, if from your experience building fluxcut you have some suggestions on what would make them more useful to people I'm happy to take them!
If a cell's agent output lives at A3 and someone inserts a row above, is the agent now watching A4? The naive answer is yes, but then re-running the agent might produce different output than what's displayed in the referenced range elsewhere. Spreadsheet users are very used to this working magically for formulas — if agents break the invariant, it'll feel broken even when nothing technically is.
How are you handling that?
However, in the other cases, references get rewritten the same way everywhere (whether it's a formula, or an agent's watch list), so {A3} becomes {A4} etc... everywhere with the same process. Also in that case, it doesn't get marked for needing to be "re-run" because it checks value itself is unchanged, even if the cell being referred to changed.
I've tested it quite a bit. Given all of the moving parts in a spreadsheet app there's still the possibility that given enough usage someone encounters some combination of moves where this fails, but I think if that does happen it should be a fixable bug.
I also provide a backup solution with "Named cells", basically off sheet cells that can be used for constants and such and referenced by name instead of by cell, if needed.
The named cell can have a trivial `=SheetName!a3`. Those will be automatically updated with insert and delete just like any other formula.
They can be referenced directly for reading, and for writing you can do a quick parse and find the original.