How to set up a command-based communication using I2C

Connect the GND between the boards.
The I2C bus has three wires: SDA, SCL and GND.

The M0 board should not pull SDA or SCL low. I really should not do that.

Is your picture wrong ? The Black square is the Adafruit Sense board with nRF52840 processor ?

Make a sketch on the M0 with only Wire.begin(slave_address) and run a I2C Scanner sketch in the Adafruit Sense Master. The Master should see all the onboard I2C devices. Can you also see the M0 Arduino board appear and disappear if you connect and disconnect it ?
Are you sure that the I2C Slave address is not already in use by a sensor on the Adafruit Sense board ?

Suppose the Adafruit Master can see the other Arduino board.
Then turn it around. Put that Wire.begin(slave_address) in the Adafruit Sense board and run a I2C Scanner sketch in the M0. Can the M0 see all the sensors on the other board and also the processor ?