You might consider using an auto-enter calculation on that child table which updates the status. When you create the auto-enter calculation, uncheck the box which says, 'Do Not Replace Existing Value in field if any'. In this way, the Status would re-evaluate every time a field used in your auto-enter calculation changes so your Status would stay up to date without script.
UPDATE: Unless you mean that the Status field is in the parent record
To answer the more general question:
How to trigger a script which is after OnRecordCommit?
Use OnRecordCommit to run this script:
If [Not $$TriggersOff ]
Set Variable [$$TriggersOff ; Value: True ]
// put your post commit script steps here
Set Variable [$$TriggersOff ; Value: False ]
This allows you to commit the record in the script without getting enmeshed in an endless series of OnCommit triggers.
Thanks. Yes, recursive can achieve it.