<odoo>
    <data noupdate="1">
        <!-- Waiter can only see their own orders -->
        <record id="rule_waiter_own_orders" model="ir.rule">
            <field name="name">Waiter Own Orders</field>
            <field name="model_id" ref="point_of_sale.model_pos_order"/>
            <field name="domain_force">[('user_id', '=', user.id)]</field>
            <field name="groups" eval="[(4, ref('group_restaurant_waiter'))]"/>
        </record>

        <!-- Kitchen staff can see all orders in 'draft' or 'paid' (depending on how KDS is implemented) -->
        <!-- Usually KDS filters by 'pos_order_line' preparation status -->
        <record id="rule_kitchen_all_orders" model="ir.rule">
            <field name="name">Kitchen View Orders</field>
            <field name="model_id" ref="point_of_sale.model_pos_order"/>
            <field name="domain_force">[(1, '=', 1)]</field>
            <field name="groups" eval="[(4, ref('group_restaurant_kitchen'))]"/>
        </record>
    </data>
</odoo>
