Skip to content

feat: harden Python gr2 hook runtime semantics #564

@laynepenney

Description

@laynepenney

The hook config model is designed, but the Python runtime still needs the full semantics enforced consistently in the real CLI.

Scope:

  • enforce if_exists = skip|overwrite|merge|error for file projections
  • enforce on_failure = block|warn|skip across materialize/enter/exit
  • make when = first_materialize|always|dirty|manual concrete in the runtime
  • keep behavior machine-readable and predictable

Why:

  • Python gr2 is now the UX authority
  • hook behavior is part of the product contract, not just a prototype detail
  • current partial behavior is enough to demo, not enough to trust daily

Acceptance:

  • hooks behave according to HOOK-CONFIG-MODEL.md
  • failure behavior is explicit, testable, and unsurprising
  • projection conflicts do not fail silently

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions