namespace FrameworkDAL.Query.GEF { // ============================================================ // GEF Outcome Feedback Query Builder // // Backs TGEFOUTCOMEFEEDBACK — a pure append-only log (IGEFEngine.RecordOutcomeFeedbackAsync // never updates or deletes a row here). IDENTITY PK, same pattern as this repo's existing // GOP append-only logs (LGOPEXECUTIONNODELOG / LGOPEXECUTIONSTATELOG in // FrameworkDAL/Query/GOP/GopQueueQB.cs) — see the migration file's header comment for why an // IDENTITY PK was chosen over CLAUDE-DB-SCHEMA.md's default AutoNumber-for-T-prefix rule. // // Required index: IX_TGEFOUTCOMEFEEDBACK_LOOKUP (TENANTID, DOMAIN, ENTITYCODE, ENTITYID) // ============================================================ public static class GEFOutcomeFeedbackQB { public const string INSERT_OUTCOME_FEEDBACK = @" INSERT INTO TGEFOUTCOMEFEEDBACK (TENANTID, DOMAIN, ENTITYCODE, ENTITYID, OUTCOMETYPE, BLOCKER, FOCUSADHERENCE, RECORDEDBYID, RECORDEDON) VALUES (@ClientId, @Domain, @EntityCode, @EntityId, @OutcomeType, @Blocker, @FocusAdherence, @RecordedById, @RecordedOn); SELECT SCOPE_IDENTITY();"; } }