async getLatestPostStats() {
        try {
            // Get the latest published post
            const latestPost = await this.knex('posts as p')
                .select(
                    'p.id',
                    'p.uuid',
                    'p.title',
                    'p.slug',
                    'p.feature_image',
                    'p.published_at',
                    'e.email_count',
                    'e.opened_count'
                )
                .leftJoin('emails as e', 'p.id', 'e.post_id')
                .where('p.status', 'published')
                .whereNotNull('p.published_at')
                .orderBy('p.published_at', 'desc')
                .first();

            if (!latestPost) {
                return {data: []};
            }

            // Get member attribution counts using the same logic as other methods
            const memberAttributionCounts = await this._getMemberAttributionCounts([latestPost.id]);
            const attributionCount = memberAttributionCounts.find(ac => ac.post_id === latestPost.id);
            
            const freeMembers = attributionCount ? attributionCount.free_members : 0;
            const paidMembers = attributionCount ? attributionCount.paid_members : 0;
            const totalMembers = freeMembers + paidMembers;

            // Calculate open rate
            const openRate = latestPost.email_count ? 
                (latestPost.opened_count / latestPost.email_count) * 100 : 
                null;

            // Get visitor count from Tinybird
            let visitors = 0;
            if (this.tinybirdClient) {
                try {
                    const dateFrom = new Date(latestPost.published_at).toISOString().split('T')[0];
                    const visitorData = await this.tinybirdClient.fetch('api_top_pages', {
                        post_uuid: latestPost.uuid,
                        dateFrom: dateFrom
                    });

                    visitors = visitorData?.[0]?.visits || 0;
                } catch (error) {
                    logging.error('Error fetching visitor data from Tinybird:', error);
                }
            }

            return {
                data: [{
                    id: latestPost.id,
                    title: latestPost.title,
                    slug: latestPost.slug,
                    feature_image: latestPost.feature_image ? urlUtils.transformReadyToAbsolute(latestPost.feature_image) : latestPost.feature_image,
                    published_at: latestPost.published_at,
                    recipient_count: latestPost.email_count,
                    opened_count: latestPost.opened_count,
                    open_rate: openRate,
                    member_delta: totalMembers,
                    free_members: freeMembers,
                    paid_members: paidMembers,
                    visitors: visitors
                }]
            };
        } catch (error) {
            // Log the error but return a valid response
            logging.error('Error fetching latest post stats:', error);
            return {data: []};
        }
    }
Get stats for the latest published post including open rate, member attribution counts, and visitor count
@returns {Promise<{data: Array<{id: string, title: string, slug: string, feature_image: string|null, published_at: string, recipient_count: number|null, opened_count: number|null, open_rate: number|null, member_delta: number, free_members: number, paid_members: number, visitors: number}>}>}