> Okay. That sounds great. It would be interesting to see what the system

Well.. If others agree that is :). That is just one of the options :)

On Sun, May 31, 2026 at 6:23 PM Sameer Mesiah <[email protected]> wrote:

> Okay. That sounds great. It would be interesting to see what the system
> looks like when it is live.
>
> Thanks,
> Sameer Mesiah.
>
> On Sun, 31 May 2026 at 17:15, Jarek Potiuk <[email protected]> wrote:
>
> > Hi Sameer,
> >
> > Thanks for your thoughtful questions! Here are my thoughts on those
> points:
> >
> > 1)  I see the value here mainly in terms of efficiency and
> sustainability.
> > By computing a solution once and storing it, we can save the time and
> > tokens an LLM would otherwise use to solve the same problem over and
> over.
> > It's a nice way to be more environmentally friendly, too!
> >
> > 2)  Since many contributions are already agent-assisted, we can address
> > hallucinations by adding some guidance to AGENTS.md. Rather than relying
> on
> > periodic checks, we can ask agents to perform their own consistency and
> > hallucination checks during the PR process. This keeps a human naturally
> in
> > the loop during review, turning token usage into a great opportunity for
> > automated quality control—which we ask our contributors' agents to
> perform.
> >
> > This is actually a very interesting "twist" - because this also nicely
> > approaches the "assymetry" we have by having a lot more AI assisted
> > contributions. We can ask - in our AGENTS.md those agents to do **way**
> mor
> > things to make our projects better - all of them done on the local
> machines
> > of the contributors, with their tokens being spent.
> >
> > Best,
> > Jarek Potiuk
> >
> >
> > On Sun, May 31, 2026 at 4:55 PM Sameer Mesiah <[email protected]>
> > wrote:
> >
> > > Hi Jarek,
> > >
> > > I do have a few questions about the "suggestions database" point:
> > >
> > > 1) Previously, it was agreed that since LLMs work well with
> unstructured
> > > error messages, there was minimal benefit to an additional taxonomy
> layer
> > > on top of existing exceptions. I was just hoping you could elaborate on
> > the
> > > marginal value of a structured data store over better exception
> messages?
> > >
> > > 2) If we were to implement this "suggestions database", do you believe
> > the
> > > hallucination rate of the current agentic systems we have available is
> > low
> > > enough that it requires minimal manual intervention to the extent that
> it
> > > is worthwhile to introduce? If a maintainer/committer/contributor has
> to
> > > skim through the database periodically to remove hallucinations, would
> we
> > > not be expending tokens in favour of negligible time savings?
> > >
> > > Granted, I could be overestimating the hallucination rate of these
> > agentic
> > > systems (I have never used them personally) so it might be the ideal
> > > solution. It's an interesting idea anyway so I would love to hear more
> > > about it.
> > >
> > > On Sun, 31 May 2026 at 15:37, Jarek Potiuk <[email protected]> wrote:
> > >
> > > > Hi all,
> > > >
> > > > TP's suggestion aligns with Omkar’s earlier proposal (
> > > > https://lists.apache.org/thread/f275xo3tjd4olsmrc8nggncs62fjnl0x). I
> > see
> > > > two main approaches:
> > > >
> > > > 1.  Generic Python exceptions: Simple and concise, but difficult for
> > > > providing nuanced diagnostic or resolution guidance in logs.
> > > > 2.  Custom exception hierarchy: Allows us to accumulate specific
> > > > troubleshooting documentation for users. This also enables the
> > > non-breaking
> > > > compatibility TP mentioned.
> > > >
> > > > While I previously favored simplicity, I now lean toward a structured
> > > > hierarchy. In an agentic context, we could automate the maintenance
> of
> > a
> > > > "suggestions database" by scanning past issues. This would provide
> > users
> > > > (and agents) with clear, documented resolution steps, ultimately
> saving
> > > > time and tokens.
> > > >
> > > > Best,
> > > > Jarek Potiuk
> > > >
> > > >
> > > > On Sun, May 31, 2026 at 4:19 PM Tzu-ping Chung via dev <
> > > > [email protected]> wrote:
> > > >
> > > > > I think we can make this non-breaking entirely? We can simply
> raise a
> > > > > subclass of both AirflowException and whatever we want to migrate
> to.
> > > > >
> > > > > If we want to, we can emit a deprecation warning if
> AirflowException
> > is
> > > > > imported directly by the user, but I feel even that is particularly
> > > > needed.
> > > > >
> > > > > Raising a custom exception that’s as specific as practical is
> always
> > > the
> > > > > best practice. Using a custom exception that subclasses both
> built-in
> > > and
> > > > > AirflowException (but not AirflowException itself) is a good idea
> on
> > > its
> > > > > own.
> > > > >
> > > > > TP
> > > > >
> > > > >
> > > > > > On 31 May 2026, at 21:25, Jens Scheffler <[email protected]>
> > > wrote:
> > > > > >
> > > > > > Hi,
> > > > > >
> > > > > > I do not have a stron opinion on this, with the past decision we
> > > mainly
> > > > > wanted to ensure code is clean.
> > > > > >
> > > > > > For me also Option (3) would be viable: We leave existing code as
> > it
> > > is
> > > > > and just ensure that new code is clean. But I am also okay to join
> > the
> > > > > other majority opinion.
> > > > > >
> > > > > > Jens
> > > > > >
> > > > > > On 31.05.26 14:08, Sameer Mesiah wrote:
> > > > > >> Hi,
> > > > > >>
> > > > > >> Thanks for opening this thread. This was long overdue
> considering
> > > that
> > > > > >> current migration efforts for AirflowException are more
> scattered
> > > > rather
> > > > > >> than a consolidated pre-planned wave.
> > > > > >>
> > > > > >> In general, I agree with your overall approach. But there are a
> > few
> > > > > things
> > > > > >> I want to raise in response to your proposal:
> > > > > >>
> > > > > >> On 1)
> > > > > >>
> > > > > >> I think Amogh already expanded on thiss somewhat. But I believe
> it
> > > is
> > > > > >> important to understand that AirflowException is not constrained
> > to
> > > > > >> the provider layer but often bubble up from Airflow core.For
> > example
> > > > > >> task_runner.py explicitly catches AirflowException as part of
> task
> > > > > >> execution and retry handling, and there are also usages in the
> > hook
> > > > and
> > > > > >> connection layers.
> > > > > >>
> > > > > >> But depending on whether we scope this to core + providers vs
> > > > providers
> > > > > >> only, the migration strategy looks quite different.  If the
> > > intention
> > > > is
> > > > > >> provider-only migration, users will continue to encounter
> > > > > AirflowException
> > > > > >> from core Airflow components, which may make the overall
> exception
> > > > model
> > > > > >> feel somewhat inconsistent. If the intention is project-wide
> > > > > deprecation, I
> > > > > >> think we need a broader plan than provider-level migrations
> alone.
> > > > > >>
> > > > > >> Also, as Amogh already implied (he is free to correct me in
> case I
> > > > > >> misinterpreted his reservations), deprecation warnings may not
> be
> > > > > >> worthwhile here. Unlike a deprecated API or method, this is not
> > > > > something
> > > > > >> users are actively choosing to call. In most cases, Airflow
> itself
> > > is
> > > > > >> deciding which exception type to raise. I am leaning against
> > > warnings
> > > > > due
> > > > > >> to the potential for log pollution and the relatively limited
> > value
> > > > they
> > > > > >> provide.
> > > > > >>
> > > > > >> On 2)
> > > > > >>
> > > > > >> I agree with your per-package migration proposal. But as Amogh
> > said,
> > > > we
> > > > > >> should ensure new exceptions inherit from AirflowException to
> > > prevent
> > > > > >> breaking changes across the provider ecosystem. I must add that
> > > there
> > > > > will
> > > > > >> inevitably be a period where users run multiple providers, some
> > > > migrated
> > > > > >> and some not. This may result in a mixture of exception types
> > > > appearing
> > > > > in
> > > > > >> logs and stack traces. While not ideal, this is probably
> > unavoidable
> > > > > given
> > > > > >> independent provider versioning. As long as migrations are
> clearly
> > > > > >> documented, I do not see this as a major issue.
> > > > > >>
> > > > > >> My answers to your questions:
> > > > > >>
> > > > > >> *Should we add a deprecation warning to  AirflowException?*
> > > > > >>
> > > > > >> I am +0. Not strongly opposed, but I am leaning no due to the
> risk
> > > of
> > > > > log
> > > > > >> pollution and the fact that the warning would be emitted by
> > Airflow
> > > > > itself
> > > > > >> rather than as a result of an explicit user action.
> > > > > >>
> > > > > >> *Is the per-package migration approach reasonable?*
> > > > > >>
> > > > > >> Yes. No blocking concerns from my side.
> > > > > >>
> > > > > >> *Should we define a project-wide exception taxonomy, or leave
> > > > exception
> > > > > >> choices to individual provider teams?*
> > > > > >>
> > > > > >> I would leave this to individual provider teams. The providers
> > have
> > > > very
> > > > > >> different APIs, error models, and opinions around exception
> > > handling.
> > > > > >> Attempting to enforce a central taxonomy across all providers
> may
> > be
> > > > > >> impractical and may not provide much practical value over what
> we
> > > > > currently
> > > > > >> have in place.
> > > > > >>
> > > > > >> Thanks,
> > > > > >> Sameer Mesiah.
> > > > > >>
> > > > > >> On Sat, 30 May 2026 at 10:59, Shahar Epstein <[email protected]
> >
> > > > wrote:
> > > > > >>
> > > > > >>> Hi all,
> > > > > >>>
> > > > > >>> This follows up on the earlier lazy-consensus
> > > > > >>> <
> > https://lists.apache.org/thread/m86gs4mqt8hq1n26g0pp0fq5h5g0x2q9>
> > > > and
> > > > > >>> related discussions around deprecating AirflowException.
> > > > > >>>
> > > > > >>> While working on a cleanup PR for the Google Cloud Run operator
> > in
> > > > the
> > > > > >>> Google provider (#67769), Amogh pointed out that replacing
> > > > > AirflowException
> > > > > >>> with built-in or custom exceptions is a breaking change. Users
> > may
> > > > > rely on
> > > > > >>> AirflowException in callbacks (on_failure_callback,
> > > > on_retry_callback)
> > > > > or
> > > > > >>> in custom wrappers that catch it explicitly.
> > > > > >>>
> > > > > >>> Rather than making these changes incrementally across
> individual
> > > PRs,
> > > > > I'd
> > > > > >>> like to discuss a coordinated migration strategy.
> > > > > >>> Proposal
> > > > > >>>
> > > > > >>> *1. Emit a deprecation warning from
> > **AirflowException.__init__**.*
> > > > > >>>
> > > > > >>> Although emitting warnings when exceptions are raised is
> > uncommon,
> > > it
> > > > > is
> > > > > >>> justified here because users may depend on AirflowException in
> > > > > callbacks
> > > > > >>> and exception handlers. This provides advance notice before
> > > > > >>> package-specific migrations occur.
> > > > > >>>
> > > > > >>> *2. Migrate per package in the next breaking release of that
> > > > package.*
> > > > > >>>
> > > > > >>> Require a single migration PR per package (airflow-core and
> each
> > > > > provider),
> > > > > >>> rather than spreading exception changes across multiple PRs and
> > > > > releases.
> > > > > >>> The migration would be included in that package's next breaking
> > > > > release and
> > > > > >>> documented accordingly.
> > > > > >>> Questions
> > > > > >>>
> > > > > >>>    - Should we add a deprecation warning to AirflowException?
> > > > > >>>    - Is the per-package migration approach reasonable?
> > > > > >>>    - Should we define a project-wide exception taxonomy, or
> leave
> > > > > exception
> > > > > >>>    choices to individual provider teams?
> > > > > >>>
> > > > > >>> If there's agreement, I'll follow up with a lazy-consensus
> > > proposal.
> > > > > >>>
> > > > > >>> Thanks,
> > > > > >>>
> > > > > >>>
> > > > > >>> Shahar
> > > > > >>>
> > > > > >
> > > > > >
> > ---------------------------------------------------------------------
> > > > > > To unsubscribe, e-mail: [email protected]
> > > > > > For additional commands, e-mail: [email protected]
> > > > > >
> > > > >
> > > > >
> > > > >
> ---------------------------------------------------------------------
> > > > > To unsubscribe, e-mail: [email protected]
> > > > > For additional commands, e-mail: [email protected]
> > > > >
> > > > >
> > > >
> > >
> >
>

Reply via email to