| INT-W22/1 |
2026-10-15 |
M1-57 enters as one squash of b380a4e..835efde onto the integration base after M1-60. Append-only files are unions: DECISIONS, the server CHANGELOG, the module README of messaging, the enabled list of api/operations.yaml (getMessage and listThreadMessages enabled, neither in later) and the route table of api/routes/real_test.go. sqlc (with the .gen.go names of M1-57, the stale *.sql.go files of messaging removed) and go generate (API code, config schema) regenerated the generated files. |
The ticket was built on an older base; a union keeps what each side added, and generated files come only from their generators. |
| INT-W22/2 |
2026-10-15 |
Semantic conflict: M1-57 and M1-60 both declared ErrorCounter, Deps.Log, Deps.Errors, reasonFilterMismatch, messageResource, Service.filterMismatch and the adapter helper uuids. One ErrorCounter, Log, Errors, reason constant and uuids remain. History and Get keep their own resource and filter mismatch record under the names historyResource and historyFilterMismatch, so each ticket's authorize input and log line stay as built. |
The smallest change that compiles without altering either ticket's behaviour. |
| INT-W22/4 |
2026-10-15 |
M1-57 and M1-58 both added Store.VisibleMessage and GetVisibleMessage; the M1-57 one stays and serves editing. caller and messageResource of M1-58 equal those of M1-60 and go. wire.NewMessaging takes MessagingWrites (M1-58). |
Duplicate declarations, same behaviour. |
| INT-W22/5 |
2026-10-15 |
Test code only: M1-57's TestQueriesCarryVisibleChannelPredicate accepts channel_id = ANY ( with a space, as M1-60 writes it, and lists the template statements of M1-60 that carry no channel predicate with their reasons; the use case tests of M1-57 and M1-60 give New every collaborator and limit that the other ticket made required. |
The tests of each ticket were written before the other ticket's rules; what they assert is unchanged. |