Observación clave-valor de una relación de muchos en cacao

Estoy tratando de hacer que la observación del valor clave funcione para un NSMutableArray. A continuación se muestra el archivo .h para MyObservee, la clase observada:

@interface MyObservee : NSObject {
    @private int someValue;
    @private NSMutableArray *someArray;
}

@property (readwrite,assign) int someValue;
- (NSMutableArray *)someArray;
@end

La clase MyObserver implementa observeValueForKeyPath: ofObject: change: context :. Así es como agrego el observador:

MyObservee *moe = [[MyObservee alloc] init];
MyObserver *mobs = [[MyObserver alloc] init];

[moe addObserver:mobs 
      forKeyPath:@"someArray" 
         options:(NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld) 
         context:NULL];

[moe.someArray addObject:@"hi there"];

¿Cómo es que el mensaje addObject: no se activa como un cambio en la ruta de clave de someArray? Tengo la sensación de que hay algo que no entiendo completamente aquí.

Respuestas a la pregunta(3)

Su respuesta a la pregunta