changeset 3232:cd90da787a44 mercurial-4.3

test-compat: merge stable into mercurial-4.3
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Mon, 23 Oct 2017 15:50:18 +0200
parents 9f900937c198 (diff) 70dbd02f5869 (current diff)
children ef04514bca47 e1a230cc4527
files
diffstat 77 files changed, 1630 insertions(+), 1711 deletions(-) [+]
line wrap: on
line diff
--- a/tests/test-amend.t
+++ b/tests/test-amend.t
@@ -21,12 +21,13 @@
   $ hg amend -d '0 0'
   $ hg debugobsolete
   07f4944404050f47db2e5c5071e0e84e7a27bba9 6a022cbb61d5ba0f03f98ff2d36319dfea1034ae 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  b2e32ffb533cbe1d5759638c0cd4e8abc43b2738 0 {07f4944404050f47db2e5c5071e0e84e7a27bba9} (*) {'ef1': '*', 'user': 'test'} (glob)
   $ hg branch
   foo
   $ hg branches
-  foo                            1:6a022cbb61d5
+  foo                            2:6a022cbb61d5
   $ glog
-  @  1@foo(draft) adda
+  @  2@foo(draft) adda
   
 Test no-op
 
@@ -34,7 +35,7 @@
   nothing changed
   [1]
   $ glog
-  @  1@foo(draft) adda
+  @  2@foo(draft) adda
   
 
 Test forcing the message to the same value, no intermediate revision.
@@ -43,7 +44,7 @@
   nothing changed
   [1]
   $ glog
-  @  1@foo(draft) adda
+  @  2@foo(draft) adda
   
 
 Test collapsing into an existing revision, no intermediate revision.
@@ -65,19 +66,20 @@
   $ hg ci -m reseta
   $ hg debugobsolete
   07f4944404050f47db2e5c5071e0e84e7a27bba9 6a022cbb61d5ba0f03f98ff2d36319dfea1034ae 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  b2e32ffb533cbe1d5759638c0cd4e8abc43b2738 0 {07f4944404050f47db2e5c5071e0e84e7a27bba9} (*) {'ef1': '*', 'user': 'test'} (glob)
   $ hg phase 2
   2: draft
   $ glog
-  @  3@foo(draft) reseta
+  @  4@foo(draft) reseta
   |
-  o  2@foo(draft) changea
+  o  3@foo(draft) changea
   |
-  o  1@foo(draft) adda
+  o  2@foo(draft) adda
   
 Specify precise commit date with -d
   $ hg amend -d '2001-02-03 04:05:06 +0700'
   $ hg parents --template '{rev}  {date|date}\n'
-  4  Sat Feb 03 04:05:06 2001 +0700
+  5  Sat Feb 03 04:05:06 2001 +0700
 
 Specify "now" as commit date with -D
   $ before=`date +%s`
@@ -86,13 +88,13 @@
   $ after=`date +%s`
   $ (echo $before ; echo $commit; echo $after) | sort -k1 -n -s
   \d+ (re)
-  \d+ 0 rev5 (re)
+  \d+ 0 rev6 (re)
   \d+ (re)
 
 Specify current user as committer with -U
   $ HGUSER=newbie hg amend -U
   $ hg parents --template '{rev}  {author}\n'
-  6  newbie
+  7  newbie
 
 Check that --logfile works
   $ echo "logfile message" > logfile.txt
@@ -107,7 +109,7 @@
   (use 'hg config --edit' to set your username)
   [255]
   $ hg sum
-  parent: 7:* tip (glob)
+  parent: 8:* tip (glob)
    logfile message
   branch: foo
   commit: 1 unknown (clean)
--- a/tests/test-discovery-obshashrange.t
+++ b/tests/test-discovery-obshashrange.t
@@ -31,7 +31,6 @@
   $ cd server
   $ hg debugbuilddag '.+7'
   $ hg blackbox
-  * @0000000000000000000000000000000000000000 (*)> init server exited 0 after *.?? seconds (glob)
   * @0000000000000000000000000000000000000000 (*)> serve --stdio (glob)
   * @0000000000000000000000000000000000000000 (*)> -R server serve --stdio exited 0 after *.?? seconds (glob)
   * @0000000000000000000000000000000000000000 (*)> debugbuilddag .+7 (glob)
@@ -137,7 +136,6 @@
   adding file changes
   added 5 changesets with 0 changes to 0 files
   3 new obsolescence markers
-  new changesets 1ea73414a91b:bebd167eb94d
   (run 'hg update' to get a working copy)
   $ hg -R ../server blackbox
   * @0000000000000000000000000000000000000000 (*)> debugobshashrange --subranges --rev tip (glob)
@@ -153,7 +151,6 @@
   cccccccccccccccccccccccccccccccccccccccc bebd167eb94d257ace0e814aeb98e6972ed2970d 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
   $ rm ../server/.hg/blackbox.log
   $ hg blackbox
-  * @0000000000000000000000000000000000000000 (*)> clone 'ssh://user@dummy/server' client exited 0 after *.?? seconds (glob)
   * @0000000000000000000000000000000000000000 (*)> pull --rev 4 (glob)
   * @0000000000000000000000000000000000000000 (*)> updated stablerange cache in *.???? seconds (glob)
   * @0000000000000000000000000000000000000000 (*)> updated evo-ext-obshashrange in *.???? seconds (5r, 3o) (glob)
@@ -183,8 +180,8 @@
   running python "*/dummyssh" 'user@dummy' 'hg -R server serve --stdio' (glob)
   sending hello command
   sending between command
-  remote: 533
-  remote: capabilities: _evoext_getbundle_obscommon _evoext_obshash_0 _evoext_obshash_1 _evoext_obshashrange_v0 _evoext_pullobsmarkers_0 _evoext_pushobsmarkers_0 batch branchmap bundle2=HG20%0Achangegroup%3D01%2C02%0Adigests%3Dmd5%2Csha1%2Csha512%0Aerror%3Dabort%2Cunsupportedcontent%2Cpushraced%2Cpushkey%0Ahgtagsfnodes%0Alistkeys%0Aobsmarkers%3DV0%2CV1%0Aphases%3Dheads%0Apushkey%0Aremote-changegroup%3Dhttp%2Chttps changegroupsubset getbundle known lookup pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
+  remote: 516
+  remote: capabilities: _evoext_getbundle_obscommon _evoext_obshash_0 _evoext_obshash_1 _evoext_obshashrange_v0 _evoext_pullobsmarkers_0 _evoext_pushobsmarkers_0 batch branchmap bundle2=HG20%0Achangegroup%3D01%2C02%0Adigests%3Dmd5%2Csha1%2Csha512%0Aerror%3Dabort%2Cunsupportedcontent%2Cpushraced%2Cpushkey%0Ahgtagsfnodes%0Alistkeys%0Aobsmarkers%3DV0%2CV1%0Apushkey%0Aremote-changegroup%3Dhttp%2Chttps changegroupsubset getbundle known lookup pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
   remote: 1
   preparing listkeys for "phases"
   sending listkeys command
@@ -218,9 +215,9 @@
   45f8b879de922f6a6e620ba04205730335b6fc7e
   sending unbundle command
   bundle2-output-bundle: "HG20", 4 parts total
-  bundle2-output-part: "replycaps" 185 bytes payload
+  bundle2-output-part: "replycaps" 172 bytes payload
   bundle2-output-part: "changegroup" (params: 1 mandatory) streamed payload
-  bundle2-output-part: "phase-heads" 24 bytes payload
+  bundle2-output-part: "pushkey" (params: 4 mandatory) empty payload
   bundle2-output-part: "obsmarkers" streamed payload
   remote: adding changesets
   remote: adding manifests
@@ -229,8 +226,9 @@
   remote: 1 new obsolescence markers
   bundle2-input-bundle: no-transaction
   bundle2-input-part: "reply:changegroup" (advisory) (params: 0 advisory) supported
+  bundle2-input-part: "reply:pushkey" (params: 0 advisory) supported
   bundle2-input-part: "reply:obsmarkers" (params: 0 advisory) supported
-  bundle2-input-bundle: 1 parts total
+  bundle2-input-bundle: 2 parts total
   preparing listkeys for "phases"
   sending listkeys command
   received listkey for "phases": 58 bytes
@@ -371,7 +369,6 @@
   adding file changes
   added 2 changesets with 0 changes to 0 files (+1 heads)
   3 new obsolescence markers
-  new changesets c8d03c1b5e94:f69452c5b1af
   (run 'hg heads' to see heads, 'hg merge' to merge)
 
   $ hg -R ../server blackbox
@@ -549,7 +546,6 @@
   adding file changes
   added 1 changesets with 0 changes to 0 files
   1 new obsolescence markers
-  new changesets 4de32a90b66c
   (run 'hg update' to get a working copy)
   $ hg rollback
   repository tip rolled back to revision 7 (undo pull)
@@ -600,7 +596,6 @@
   adding file changes
   added 1 changesets with 0 changes to 0 files
   1 new obsolescence markers
-  new changesets 4de32a90b66c
   (run 'hg update' to get a working copy)
   $ hg blackbox
   * @45f8b879de922f6a6e620ba04205730335b6fc7e (*)> debugobshashrange --subranges --rev 'heads(all())' (glob)
@@ -692,7 +687,6 @@
   adding file changes
   added 1 changesets with 1 changes to 1 files (+1 heads)
   2 new obsolescence markers
-  new changesets 45f8b879de92
   (run 'hg heads' to see heads, 'hg merge' to merge)
   $ hg log -G
   o  8 45f8b879de92 foo tip
--- a/tests/test-divergent.t
+++ b/tests/test-divergent.t
@@ -45,7 +45,7 @@
   1 changesets pruned
   $ hg prune -s "desc(bdivergent2)" "desc(_b)" --hidden
   1 changesets pruned
-  2 new content-divergent changesets
+  2 new divergent changesets
   $ hg log -G
   @  3:e708fd28d5cf@default(draft) add bdivergent2 [content-divergent]
   |
@@ -62,7 +62,7 @@
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   working directory is now at c26f1d3baed2
   $ hg log -G
-  @  4:c26f1d3baed2@default(draft) add bdivergent1 []
+  @  5:c26f1d3baed2@default(draft) add bdivergent1 []
   |
   o  0:135f39f4bd78@default(draft) add _a []
   
@@ -88,25 +88,24 @@
   1 changesets pruned
   $ hg prune -s "desc(cdivergent2)" "desc(_c)" --hidden
   1 changesets pruned
-  2 new content-divergent changesets
+  2 new divergent changesets
   $ hg log -G
-  @  7:0a768ef678d9@default(draft) cdivergent2 [content-divergent]
+  @  8:0a768ef678d9@default(draft) cdivergent2 [content-divergent]
   |
-  | o  6:26c7705fee96@default(draft) add cdivergent1 [content-divergent]
+  | o  7:26c7705fee96@default(draft) add cdivergent1 [content-divergent]
   |/
-  | o  4:c26f1d3baed2@default(draft) add bdivergent1 []
+  | o  5:c26f1d3baed2@default(draft) add bdivergent1 []
   |/
   o  0:135f39f4bd78@default(draft) add _a []
   
   $ hg evolve --all --any --contentdivergent
-  merge:[6] add cdivergent1
-  with: [7] cdivergent2
-  base: [5] add _c
+  merge:[7] add cdivergent1
+  with: [8] cdivergent2
+  base: [6] add _c
   updating to "local" conflict
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
-  nothing changed
-  working directory is now at 26c7705fee96
+  working directory is now at 6602ff5a79dc
 
 Test None docstring issue of evolve divergent, which caused hg crush
 
@@ -125,7 +124,7 @@
   1 changesets pruned
   $ hg prune -s "desc(bdivergent2)" "desc(_b)" --hidden
   1 changesets pruned
-  2 new content-divergent changesets
+  2 new divergent changesets
   $ hg log -G
   @  3:e708fd28d5cf@default(draft) add bdivergent2 [content-divergent]
   |
--- a/tests/test-drop.t
+++ b/tests/test-drop.t
@@ -178,7 +178,7 @@
   $ hg commit --amend
   $ summary
   ============ graph ==============
-  @  changeset:   3:a2c06c884bfe
+  @  changeset:   4:a2c06c884bfe
   |  tag:         tip
   |  parent:      1:19509a42b0d0
   |  user:        test
@@ -196,17 +196,23 @@
      summary:     add base
   
   ============ hidden =============
-  @  changeset:   3:a2c06c884bfe
+  @  changeset:   4:a2c06c884bfe
   |  tag:         tip
   |  parent:      1:19509a42b0d0
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
   |  summary:     add child
   |
+  | x  changeset:   3:87ea30a976fd
+  | |  user:        test
+  | |  date:        Thu Jan 01 00:00:00 1970 +0000
+  | |  obsolete:    pruned
+  | |  summary:     temporary amend commit for 34b6c051bf1f
+  | |
   | x  changeset:   2:34b6c051bf1f
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    amended using amend as 3:a2c06c884bfe
+  |    obsolete:    amended as a2c06c884bfe
   |    summary:     add child
   |
   o  changeset:   1:19509a42b0d0
@@ -221,6 +227,7 @@
   
   ============ obsmark ============
   34b6c051bf1f78db6aef400776de5cb964470207 a2c06c884bfe53d3840026248bd8a7eafa152df8 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  87ea30a976fdf235bf096f04899cb02a903873e2 0 {34b6c051bf1f78db6aef400776de5cb964470207} (*) {'ef1': '*', 'user': 'test'} (glob)
   $ hg drop .
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   working directory now at 19509a42b0d0
--- a/tests/test-evolve-bumped.t
+++ b/tests/test-evolve-bumped.t
@@ -49,7 +49,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  new changesets 4d1169d82e47
   (run 'hg update' to get a working copy)
   $ hg log -r 'draft()'
   1:4d1169d82e47@default(draft) modify a
@@ -68,7 +67,7 @@
   pulling from ../public
   searching for changes
   no changes found
-  1 new phase-divergent changesets
+  1 new bumped changesets
 
   $ hg evolve -a -A --phasedivergent
   recreate:[2] tweak a
@@ -106,7 +105,7 @@
   $ hg commit -m "merge"
   $ hg commit --amend -m "New message"
   $ hg phase --public 551127da2a8a --hidden
-  1 new phase-divergent changesets
+  1 new bumped changesets
   $ hg log -G
   @    7:b28e84916d8c@default(draft) New message
   |\
--- a/tests/test-evolve-cycles.t
+++ b/tests/test-evolve-cycles.t
@@ -50,7 +50,7 @@
 Create a cycle
   $ hg prune -s "desc(B)" "desc(A)"
   1 changesets pruned
-  2 new orphan changesets
+  2 new unstable changesets
   $ hg prune -s "desc(C)" "desc(B)"
   1 changesets pruned
   $ hg prune -s "desc(A)" "desc(C)"
@@ -62,19 +62,19 @@
   |  tag:         tip
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  obsolete:    rewritten as 1:2a34000d3544
+  |  obsolete:    rewritten as 2a34000d3544
   |  summary:     C
   |
   x  changeset:   2:c473644ee0e9
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  obsolete:    rewritten as 3:a8df460dbbfe
+  |  obsolete:    rewritten as a8df460dbbfe
   |  summary:     B
   |
   @  changeset:   1:2a34000d3544
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  obsolete:    rewritten as 2:c473644ee0e9
+  |  obsolete:    rewritten as c473644ee0e9
   |  summary:     A
   |
   o  changeset:   0:ea207398892e
@@ -188,7 +188,7 @@
 Create a first cycle
   $ hg prune -s "desc(B)" "desc(A)"
   1 changesets pruned
-  5 new orphan changesets
+  5 new unstable changesets
   $ hg prune -s "desc(C)" "desc(B)"
   1 changesets pruned
   $ hg prune --split -s "desc(A)" -s "desc(D)" "desc(C)"
@@ -207,37 +207,37 @@
   |  tag:         tip
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  obsolete:    rewritten as 4:868d2e0eb19c
+  |  obsolete:    rewritten as 868d2e0eb19c
   |  summary:     F
   |
   x  changeset:   5:0da815c333f6
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  obsolete:    rewritten as 6:d9f908fde1a1
+  |  obsolete:    rewritten as d9f908fde1a1
   |  summary:     E
   |
   @  changeset:   4:868d2e0eb19c
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  obsolete:    rewritten as 5:0da815c333f6
+  |  obsolete:    rewritten as 0da815c333f6
   |  summary:     D
   |
   x  changeset:   3:a8df460dbbfe
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  obsolete:    split as 1:2a34000d3544, 4:868d2e0eb19c
+  |  obsolete:    split as 2a34000d3544, 868d2e0eb19c
   |  summary:     C
   |
   x  changeset:   2:c473644ee0e9
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  obsolete:    rewritten as 3:a8df460dbbfe
+  |  obsolete:    rewritten as a8df460dbbfe
   |  summary:     B
   |
   x  changeset:   1:2a34000d3544
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  obsolete:    rewritten as 2:c473644ee0e9
+  |  obsolete:    rewritten as c473644ee0e9
   |  summary:     A
   |
   o  changeset:   0:ea207398892e
--- a/tests/test-evolve-effectflags.t
+++ b/tests/test-evolve-effectflags.t
@@ -29,7 +29,7 @@
 check result
 
   $ hg debugobsolete --rev .
-  471f378eab4c5e25f6c77f785b27c936efb22874 fdf9bde5129a28d4548fadd3f62b265cdd3b7a2e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '1', 'operation': 'amend', 'user': 'test'}
+  471f378eab4c5e25f6c77f785b27c936efb22874 fdf9bde5129a28d4548fadd3f62b265cdd3b7a2e 0 (*) {'ef1': '1', 'user': 'test'} (glob)
   $ hg obslog .
   @  fdf9bde5129a (2) A1
   |
@@ -40,7 +40,7 @@
   changeset:   1:471f378eab4c
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
-  obsolete:    reworded using amend as 2:fdf9bde5129a
+  obsolete:    reworded as fdf9bde5129a
   summary:     A0
   
 
@@ -53,7 +53,7 @@
 check result
 
   $ hg debugobsolete --rev .
-  ef4a313b1e0ade55718395d80e6b88c5ccd875eb 5485c92d34330dac9d7a63dc07e1e3373835b964 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '16', 'operation': 'amend', 'user': 'test'}
+  ef4a313b1e0ade55718395d80e6b88c5ccd875eb 5485c92d34330dac9d7a63dc07e1e3373835b964 0 (*) {'ef1': '16', 'user': 'test'} (glob)
   $ hg obslog .
   @  5485c92d3433 (4) B0
   |
@@ -64,7 +64,7 @@
   changeset:   3:ef4a313b1e0a
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
-  obsolete:    reauthored using amend as 4:5485c92d3433
+  obsolete:    reauthored as 5485c92d3433
   summary:     B0
   
 
@@ -77,7 +77,7 @@
 check result
 
   $ hg debugobsolete --rev .
-  2ef0680ff45038ac28c9f1ff3644341f54487280 4dd84345082e9e5291c2e6b3f335bbf8bf389378 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '32', 'operation': 'amend', 'user': 'test'}
+  2ef0680ff45038ac28c9f1ff3644341f54487280 4dd84345082e9e5291c2e6b3f335bbf8bf389378 0 (*) {'ef1': '32', 'user': 'test'} (glob)
   $ hg obslog .
   @  4dd84345082e (6) B1
   |
@@ -88,7 +88,7 @@
   changeset:   5:2ef0680ff450
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
-  obsolete:    date-changed using amend as 6:4dd84345082e
+  obsolete:    date-changed as 4dd84345082e
   summary:     B1
   
 
@@ -104,9 +104,10 @@
 check result
 
   $ hg debugobsolete --rev .
-  bd3db8264ceebf1966319f5df3be7aac6acd1a8e 14a01456e0574f0e0a0b15b2345486a6364a8d79 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '64', 'operation': 'amend', 'user': 'test'}
+  4d1430a201c1ffbd8465dec75edd4a691a2d97ec 0 {bd3db8264ceebf1966319f5df3be7aac6acd1a8e} (*) {'ef1': '0', 'user': 'test'} (glob)
+  bd3db8264ceebf1966319f5df3be7aac6acd1a8e 14a01456e0574f0e0a0b15b2345486a6364a8d79 0 (*) {'ef1': '64', 'user': 'test'} (glob)
   $ hg obslog .
-  @  14a01456e057 (8) B2
+  @  14a01456e057 (9) B2
   |
   x  bd3db8264cee (7) B2
        rewritten(branch) as 14a01456e057 by test (*) (glob)
@@ -115,7 +116,7 @@
   changeset:   7:bd3db8264cee
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
-  obsolete:    branch-changed using amend as 8:14a01456e057
+  obsolete:    branch-changed as 14a01456e057
   summary:     B2
   
 
@@ -128,23 +129,23 @@
   $ mkcommit C0
   $ mkcommit D0
   $ hg rebase -r . -d 'desc(B0)'
-  rebasing 10:c85eff83a034 "D0" (tip)
+  rebasing 11:c85eff83a034 "D0" (tip)
 
 check result
 
   $ hg debugobsolete --rev .
-  c85eff83a0340efd9da52b806a94c350222f3371 da86aa2f19a30d6686b15cae15c7b6c908ec9699 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '4', 'operation': 'rebase', 'user': 'test'}
+  c85eff83a0340efd9da52b806a94c350222f3371 da86aa2f19a30d6686b15cae15c7b6c908ec9699 0 (*) {'ef1': '4', 'user': 'test'} (glob)
   $ hg obslog .
-  @  da86aa2f19a3 (11) D0
+  @  da86aa2f19a3 (12) D0
   |
-  x  c85eff83a034 (10) D0
+  x  c85eff83a034 (11) D0
        rewritten(parent) as da86aa2f19a3 by test (*) (glob)
   
   $ hg log --hidden -r "c85eff83a034"
-  changeset:   10:c85eff83a034
+  changeset:   11:c85eff83a034
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
-  obsolete:    rebased using rebase as 11:da86aa2f19a3
+  obsolete:    rebased as da86aa2f19a3
   summary:     D0
   
 
@@ -158,18 +159,19 @@
 check result
 
   $ hg debugobsolete --rev .
-  ebfe0333e0d96f68a917afd97c0a0af87f1c3b5f 75781fdbdbf58a987516b00c980bccda1e9ae588 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
+  d6f4d8b8d3c8cde990f13915bced7f92ce1cc54f 0 {ebfe0333e0d96f68a917afd97c0a0af87f1c3b5f} (*) {'ef1': '0', 'user': 'test'} (glob)
+  ebfe0333e0d96f68a917afd97c0a0af87f1c3b5f 75781fdbdbf58a987516b00c980bccda1e9ae588 0 (*) {'ef1': '8', 'user': 'test'} (glob)
   $ hg obslog .
-  @  75781fdbdbf5 (13) E0
+  @  75781fdbdbf5 (15) E0
   |
-  x  ebfe0333e0d9 (12) E0
+  x  ebfe0333e0d9 (13) E0
        rewritten(content) as 75781fdbdbf5 by test (*) (glob)
   
   $ hg log --hidden -r "ebfe0333e0d9"
-  changeset:   12:ebfe0333e0d9
+  changeset:   13:ebfe0333e0d9
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
-  obsolete:    amended using amend as 13:75781fdbdbf5
+  obsolete:    amended as 75781fdbdbf5
   summary:     E0
   
 
@@ -184,18 +186,19 @@
 check result
 
   $ hg debugobsolete --rev .
-  fad47e5bd78e6aa4db1b5a0a1751bc12563655ff a94e0fd5f1c81d969381a76eb0d37ce499a44fae 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '113', 'operation': 'amend', 'user': 'test'}
+  3b12912003b4e7aa6df6cded86255006c3c29d27 0 {fad47e5bd78e6aa4db1b5a0a1751bc12563655ff} (*) {'ef1': '0', 'user': 'test'} (glob)
+  fad47e5bd78e6aa4db1b5a0a1751bc12563655ff a94e0fd5f1c81d969381a76eb0d37ce499a44fae 0 (*) {'ef1': '113', 'user': 'test'} (glob)
   $ hg obslog .
-  @  a94e0fd5f1c8 (15) F1
+  @  a94e0fd5f1c8 (18) F1
   |
-  x  fad47e5bd78e (14) F0
+  x  fad47e5bd78e (16) F0
        rewritten(description, user, date, branch) as a94e0fd5f1c8 by test (*) (glob)
   
   $ hg log --hidden -r "fad47e5bd78e"
-  changeset:   14:fad47e5bd78e
+  changeset:   16:fad47e5bd78e
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
-  obsolete:    rewritten using amend as 15:a94e0fd5f1c8
+  obsolete:    rewritten as a94e0fd5f1c8
   summary:     F0
   
 
@@ -238,20 +241,20 @@
   $ hg commit -m "H2"
   created new head
   $ hg rebase -s "desc(H1)" -d "desc(H2)" -t :merge3
-  rebasing 17:b57fed8d8322 "H1"
+  rebasing 20:b57fed8d8322 "H1"
   merging H0
   $ hg obslog tip
-  o  e509e2eb3df5 (19) H1
+  o  e509e2eb3df5 (22) H1
   |
-  x  b57fed8d8322 (17) H1
+  x  b57fed8d8322 (20) H1
        rewritten(parent) as e509e2eb3df5 by test (*) (glob)
   
   $ hg log --hidden -r "b57fed8d8322"
-  changeset:   17:b57fed8d8322
+  changeset:   20:b57fed8d8322
   branch:      my-other-branch
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
-  obsolete:    rebased using rebase as 19:e509e2eb3df5
+  obsolete:    rebased as e509e2eb3df5
   summary:     H1
   
 amend closing the branch should be detected as meta change
@@ -266,16 +269,16 @@
 check result
 
   $ hg obslog .
-  @  12c6238b5e37 (22) I0
+  @  12c6238b5e37 (26) I0
   |
-  x  2f599e54c1c6 (21) I0
+  x  2f599e54c1c6 (24) I0
        rewritten(meta) as 12c6238b5e37 by test (*) (glob)
   
   $ hg log --hidden -r "2f599e54c1c6"
-  changeset:   21:2f599e54c1c6
+  changeset:   24:2f599e54c1c6
   branch:      closedbranch
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
-  obsolete:    meta-changed using amend as 22:12c6238b5e37
+  obsolete:    meta-changed as 12c6238b5e37
   summary:     I0
   
--- a/tests/test-evolve-list.t
+++ b/tests/test-evolve-list.t
@@ -17,7 +17,7 @@
   $ hg up 0
   0 files updated, 0 files merged, 2 files removed, 0 files unresolved
   $ echo a >> a && hg ci --amend -m a
-  2 new orphan changesets
+  2 new unstable changesets
   $ hg evolve --list
   d2ae7f538514: b
     unstable: cb9a9f314b8b (obsolete parent)
@@ -34,7 +34,7 @@
   adding a
   $ echo b > b && hg ci --amend -m ab
   $ hg phase --public --rev 0 --hidden
-  1 new phase-divergent changesets
+  1 new bumped changesets
   $ hg evolve --list
   88cc282e27fc: ab
     bumped: cb9a9f314b8b (immutable precursor)
@@ -64,7 +64,7 @@
   rebasing 1:d2ae7f538514 "b"
   $ hg rebase -s 1 -d 3 --hidden --config experimental.allowdivergence=True
   rebasing 1:d2ae7f538514 "b"
-  2 new content-divergent changesets
+  2 new divergent changesets
   $ hg evolve --list
   c882616e9d84: b
     divergent: a922b3733e98 (draft) (precursor d2ae7f538514)
--- a/tests/test-evolve-obshistory-complex.t
+++ b/tests/test-evolve-obshistory-complex.t
@@ -68,7 +68,7 @@
 
   $ hg fold --exact -r 1 -r 2 --date "0 0" -m "fold0"
   2 changesets folded
-  4 new orphan changesets
+  4 new unstable changesets
   $ hg fold --exact -r 3 -r 4 --date "0 0" -m "fold1"
   2 changesets folded
   $ hg fold --exact -r 5 -r 6 --date "0 0" -m "fold2"
@@ -80,14 +80,14 @@
   |  parent:      4:868d2e0eb19c
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  instability: orphan
+  |  trouble:     unstable
   |  summary:     fold2
   |
   | o  changeset:   8:d15d0ffc75f6
   | |  parent:      2:c473644ee0e9
   | |  user:        test
   | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  instability: orphan
+  | |  trouble:     unstable
   | |  summary:     fold1
   | |
   | | o  changeset:   7:b868bc49b0a4
@@ -99,25 +99,25 @@
   x | |  changeset:   4:868d2e0eb19c
   | | |  user:        test
   | | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | | |  obsolete:    rewritten as 8:d15d0ffc75f6
+  | | |  obsolete:    rewritten as d15d0ffc75f6
   | | |  summary:     D
   | | |
   x | |  changeset:   3:a8df460dbbfe
   |/ /   user:        test
   | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | |    obsolete:    rewritten as 8:d15d0ffc75f6
+  | |    obsolete:    rewritten as d15d0ffc75f6
   | |    summary:     C
   | |
   x |  changeset:   2:c473644ee0e9
   | |  user:        test
   | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  obsolete:    rewritten as 7:b868bc49b0a4
+  | |  obsolete:    rewritten as b868bc49b0a4
   | |  summary:     B
   | |
   x |  changeset:   1:2a34000d3544
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    rewritten as 7:b868bc49b0a4
+  |    obsolete:    rewritten as b868bc49b0a4
   |    summary:     A
   |
   o  changeset:   0:ea207398892e
@@ -236,27 +236,27 @@
   |  tag:         tip
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  instability: orphan
+  |  trouble:     unstable
   |  summary:     fold2
   |
   o  changeset:   14:ec31316faa9d
   |  parent:      4:868d2e0eb19c
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  instability: orphan
+  |  trouble:     unstable
   |  summary:     fold2
   |
   | o  changeset:   13:d0f33db50670
   | |  user:        test
   | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  instability: orphan
+  | |  trouble:     unstable
   | |  summary:     fold1
   | |
   | o  changeset:   12:7b3290f6e0a0
   | |  parent:      2:c473644ee0e9
   | |  user:        test
   | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  instability: orphan
+  | |  trouble:     unstable
   | |  summary:     fold1
   | |
   | | o  changeset:   11:e036916b63ea
@@ -273,25 +273,25 @@
   x | |  changeset:   4:868d2e0eb19c
   | | |  user:        test
   | | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | | |  obsolete:    split as 12:7b3290f6e0a0, 13:d0f33db50670
+  | | |  obsolete:    split as 7b3290f6e0a0, d0f33db50670
   | | |  summary:     D
   | | |
   x | |  changeset:   3:a8df460dbbfe
   |/ /   user:        test
   | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | |    obsolete:    split as 12:7b3290f6e0a0, 13:d0f33db50670
+  | |    obsolete:    split as 7b3290f6e0a0, d0f33db50670
   | |    summary:     C
   | |
   x |  changeset:   2:c473644ee0e9
   | |  user:        test
   | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  obsolete:    split as 10:19e14c8397fc, 11:e036916b63ea
+  | |  obsolete:    split as 19e14c8397fc, e036916b63ea
   | |  summary:     B
   | |
   x |  changeset:   1:2a34000d3544
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    split as 10:19e14c8397fc, 11:e036916b63ea
+  |    obsolete:    split as 19e14c8397fc, e036916b63ea
   |    summary:     A
   |
   o  changeset:   0:ea207398892e
@@ -312,21 +312,21 @@
   |  tag:         tip
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  instability: orphan
+  |  trouble:     unstable
   |  summary:     fold2
   |
   o  changeset:   14:ec31316faa9d
   |  parent:      4:868d2e0eb19c
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  instability: orphan
+  |  trouble:     unstable
   |  summary:     fold2
   |
   | o  changeset:   12:7b3290f6e0a0
   | |  parent:      2:c473644ee0e9
   | |  user:        test
   | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  instability: orphan
+  | |  trouble:     unstable
   | |  summary:     fold1
   | |
   | | o  changeset:   10:19e14c8397fc
@@ -338,25 +338,25 @@
   x | |  changeset:   4:868d2e0eb19c
   | | |  user:        test
   | | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | | |  obsolete:    split as 12:7b3290f6e0a0, 14:ec31316faa9d
+  | | |  obsolete:    split as 7b3290f6e0a0, ec31316faa9d
   | | |  summary:     D
   | | |
   x | |  changeset:   3:a8df460dbbfe
   |/ /   user:        test
   | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | |    obsolete:    split as 12:7b3290f6e0a0, 14:ec31316faa9d
+  | |    obsolete:    split as 7b3290f6e0a0, ec31316faa9d
   | |    summary:     C
   | |
   x |  changeset:   2:c473644ee0e9
   | |  user:        test
   | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  obsolete:    split as 10:19e14c8397fc, 12:7b3290f6e0a0
+  | |  obsolete:    split as 19e14c8397fc, 7b3290f6e0a0
   | |  summary:     B
   | |
   x |  changeset:   1:2a34000d3544
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    split as 10:19e14c8397fc, 12:7b3290f6e0a0
+  |    obsolete:    split as 19e14c8397fc, 7b3290f6e0a0
   |    summary:     A
   |
   o  changeset:   0:ea207398892e
--- a/tests/test-evolve-obshistory.t
+++ b/tests/test-evolve-obshistory.t
@@ -31,17 +31,23 @@
   > 
   > Better commit message"
   $ hg log --hidden -G
-  @  changeset:   2:4ae3a4151de9
+  @  changeset:   3:4ae3a4151de9
   |  tag:         tip
   |  parent:      0:ea207398892e
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
   |  summary:     A1
   |
+  | x  changeset:   2:f137d23bb3e1
+  | |  user:        test
+  | |  date:        Thu Jan 01 00:00:00 1970 +0000
+  | |  obsolete:    pruned
+  | |  summary:     temporary amend commit for 471f378eab4c
+  | |
   | x  changeset:   1:471f378eab4c
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    rewritten using amend as 2:4ae3a4151de9
+  |    obsolete:    rewritten as 4ae3a4151de9
   |    summary:     A0
   |
   o  changeset:   0:ea207398892e
@@ -52,7 +58,7 @@
 Actual test
 -----------
   $ hg obslog --patch 4ae3a4151de9
-  @  4ae3a4151de9 (2) A1
+  @  4ae3a4151de9 (3) A1
   |
   x  471f378eab4c (1) A0
        rewritten(description, content) as 4ae3a4151de9 by test (*) (glob)
@@ -74,7 +80,7 @@
   
 
   $ hg obslog --no-graph --patch 4ae3a4151de9
-  4ae3a4151de9 (2) A1
+  4ae3a4151de9 (3) A1
   471f378eab4c (1) A0
     rewritten(description, content) as 4ae3a4151de9 by test (Thu Jan 01 00:00:00 1970 +0000)
       --- a/471f378eab4c-changeset-description	
@@ -103,7 +109,7 @@
       {
           "markers": [],
           "node": "4ae3a4151de9",
-          "rev": 2,
+          "rev": 3,
           "shortdescription": "A1"
       },
       {
@@ -359,7 +365,7 @@
   | x  changeset:   1:471597cad322
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    split as 2:337fec4d2edc, 3:f257fde29c7a
+  |    obsolete:    split as 337fec4d2edc, f257fde29c7a
   |    summary:     A0
   |
   o  changeset:   0:ea207398892e
@@ -613,7 +619,7 @@
   | x  changeset:   1:de7290d8b885
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    split as 2:337fec4d2edc, 3:f257fde29c7a, 4:1ae8bc733a14, 5:c7f044602e9b
+  |    obsolete:    split as 1ae8bc733a14, 337fec4d2edc, c7f044602e9b, f257fde29c7a
   |    summary:     A0
   |
   o  changeset:   0:ea207398892e
@@ -789,13 +795,13 @@
   | x  changeset:   2:0dec01379d3b
   | |  user:        test
   | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  obsolete:    rewritten as 3:eb5a0daa2192
+  | |  obsolete:    rewritten as eb5a0daa2192
   | |  summary:     B0
   | |
   | x  changeset:   1:471f378eab4c
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    rewritten as 3:eb5a0daa2192
+  |    obsolete:    rewritten as eb5a0daa2192
   |    summary:     A0
   |
   o  changeset:   0:ea207398892e
@@ -996,7 +1002,7 @@
   | x  changeset:   1:471f378eab4c
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    reworded using amend as 2:fdf9bde5129a
+  |    obsolete:    reworded as fdf9bde5129a
   |    summary:     A0
   |
   o  changeset:   0:ea207398892e
@@ -1009,28 +1015,28 @@
   working directory parent is obsolete! (471f378eab4c)
   (use 'hg evolve' to update to its successor: fdf9bde5129a)
   $ hg amend -m "A2"
-  2 new content-divergent changesets
+  2 new divergent changesets
   $ hg log --hidden -G
   @  changeset:   3:65b757b745b9
   |  tag:         tip
   |  parent:      0:ea207398892e
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  instability: content-divergent
+  |  trouble:     divergent
   |  summary:     A2
   |
   | o  changeset:   2:fdf9bde5129a
   |/   parent:      0:ea207398892e
   |    user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    instability: content-divergent
+  |    trouble:     divergent
   |    summary:     A1
   |
   | x  changeset:   1:471f378eab4c
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    reworded using amend as 2:fdf9bde5129a
-  |    obsolete:    reworded using amend as 3:65b757b745b9
+  |    obsolete:    reworded as fdf9bde5129a
+  |    obsolete:    reworded as 65b757b745b9
   |    summary:     A0
   |
   o  changeset:   0:ea207398892e
@@ -1312,7 +1318,7 @@
   | x  changeset:   2:0dec01379d3b
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    reworded using amend as 3:b7ea6d14e664
+  |    obsolete:    reworded as b7ea6d14e664
   |    summary:     B0
   |
   o  changeset:   1:471f378eab4c
@@ -1340,19 +1346,19 @@
   | |  parent:      1:471f378eab4c
   | |  user:        test
   | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  obsolete:    rewritten as 4:eb5a0daa2192
+  | |  obsolete:    rewritten as eb5a0daa2192
   | |  summary:     B1
   | |
   | | x  changeset:   2:0dec01379d3b
   | |/   user:        test
   | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | |    obsolete:    reworded using amend as 3:b7ea6d14e664
+  | |    obsolete:    reworded as b7ea6d14e664
   | |    summary:     B0
   | |
   | x  changeset:   1:471f378eab4c
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    rewritten as 4:eb5a0daa2192
+  |    obsolete:    rewritten as eb5a0daa2192
   |    summary:     A0
   |
   o  changeset:   0:ea207398892e
@@ -1576,13 +1582,13 @@
   |/   parent:      0:ea207398892e
   |    user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    reworded using amend as 3:7a230b46bf61
+  |    obsolete:    reworded as 7a230b46bf61
   |    summary:     A1
   |
   | x  changeset:   1:471f378eab4c
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    reworded using amend as 2:fdf9bde5129a
+  |    obsolete:    reworded as fdf9bde5129a
   |    summary:     A0
   |
   o  changeset:   0:ea207398892e
@@ -1624,7 +1630,6 @@
   added 1 changesets with 0 changes to 1 files (+1 heads)
   2 new obsolescence markers
   obsoleted 1 changesets
-  new changesets 7a230b46bf61
   (run 'hg heads' to see heads, 'hg merge' to merge)
   working directory parent is obsolete! (471f378eab4c)
   (use 'hg evolve' to update to its successor: 7a230b46bf61)
--- a/tests/test-evolve-order.t
+++ b/tests/test-evolve-order.t
@@ -44,9 +44,9 @@
   0 files updated, 0 files merged, 2 files removed, 0 files unresolved
   $ echo "aaa" > _a
   $ hg amend
-  2 new orphan changesets
+  2 new unstable changesets
   $ hg log -G
-  @  4:12d519679175@default(draft) add _a
+  @  5:12d519679175@default(draft) add _a
   |
   | o  3:4d156641b718@default(draft) add _c
   | |
@@ -60,9 +60,9 @@
 evolve --rev reorders the rev to solve instability, trivial case 2 revs wrong order
   $ hg evolve --rev 'desc(_c) + desc(_b)'
   move:[2] add _b
-  atop:[4] add _a
+  atop:[5] add _a
   move:[3] add _c
-  atop:[5] add _b
+  atop:[6] add _b
   working directory is now at 52b8f9b04f83
 
 evolve --rev reorders the rev to solve instability. Harder case, obsolescence
@@ -73,10 +73,10 @@
   $ hg up "desc(_a)"
   0 files updated, 0 files merged, 3 files removed, 0 files unresolved
   $ hg amend -m "aprime"
-  3 new orphan changesets
+  3 new unstable changesets
   $ hg evolve --rev "desc(_b)"
-  move:[5] add _b
-  atop:[8] aprime
+  move:[6] add _b
+  atop:[9] aprime
   working directory is now at 476c9c052aae
   $ hg up "desc(_b) - obsolete()"
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
@@ -84,40 +84,40 @@
   $ hg up "desc(aprime)"
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ hg amend -m "asecond"
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg log -G
-  @  11:9a584314f3f3@default(draft) asecond
+  @  12:9a584314f3f3@default(draft) asecond
   |
-  | o  10:a59c79776f7c@default(draft) bprime
+  | o  11:a59c79776f7c@default(draft) bprime
   | |
-  | x  8:81a687b96d4d@default(draft) aprime
+  | x  9:81a687b96d4d@default(draft) aprime
   |/
-  | o  7:464731bc0ed0@default(draft) add _d
+  | o  8:464731bc0ed0@default(draft) add _d
   | |
-  | o  6:52b8f9b04f83@default(draft) add _c
+  | o  7:52b8f9b04f83@default(draft) add _c
   | |
-  | x  5:59476c3836ef@default(draft) add _b
+  | x  6:59476c3836ef@default(draft) add _b
   | |
-  | x  4:12d519679175@default(draft) add _a
+  | x  5:12d519679175@default(draft) add _a
   |/
   o  0:f92638be10c7@default(public) add p
   
   $ hg evolve --rev "orphan()"
-  move:[10] bprime
-  atop:[11] asecond
-  move:[6] add _c
-  atop:[12] bprime
-  move:[7] add _d
-  atop:[13] add _c
+  move:[11] bprime
+  atop:[12] asecond
+  move:[7] add _c
+  atop:[13] bprime
+  move:[8] add _d
+  atop:[14] add _c
   working directory is now at 739f18ac1d03
   $ hg log -G
-  @  14:739f18ac1d03@default(draft) add _d
+  @  15:739f18ac1d03@default(draft) add _d
   |
-  o  13:e5960578d158@default(draft) add _c
+  o  14:e5960578d158@default(draft) add _c
   |
-  o  12:4ad33fa88946@default(draft) bprime
+  o  13:4ad33fa88946@default(draft) bprime
   |
-  o  11:9a584314f3f3@default(draft) asecond
+  o  12:9a584314f3f3@default(draft) asecond
   |
   o  0:f92638be10c7@default(public) add p
   
@@ -131,28 +131,28 @@
   $ mkstack "desc(_d)" c1second >/dev/null
   $ hg prune "desc(c1_)" -s "desc(c1prime)"
   1 changesets pruned
-  3 new orphan changesets
+  3 new unstable changesets
   $ hg prune "desc(c2_)" -s "desc(c2prime)"
   1 changesets pruned
   $ hg prune "desc(c1prime)" -s "desc(c1second)"
   1 changesets pruned
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg log -G -r "desc(_d)::"
-  @  21:dcf786e878fd@default(draft) add c1second
+  @  22:dcf786e878fd@default(draft) add c1second
   |
-  | o  20:507d52d715f6@default(draft) add c2prime
+  | o  21:507d52d715f6@default(draft) add c2prime
   | |
-  | x  19:c995cb124ddc@default(draft) add c1prime
+  | x  20:c995cb124ddc@default(draft) add c1prime
   |/
-  | o  18:d096a2437fd0@default(draft) add c4_
+  | o  19:d096a2437fd0@default(draft) add c4_
   | |
-  | o  17:cde95c6cba7a@default(draft) add c3_
+  | o  18:cde95c6cba7a@default(draft) add c3_
   | |
-  | x  16:e0d9f7a099fe@default(draft) add c2_
+  | x  17:e0d9f7a099fe@default(draft) add c2_
   | |
-  | x  15:43b7c338b1f8@default(draft) add c1_
+  | x  16:43b7c338b1f8@default(draft) add c1_
   |/
-  o  14:739f18ac1d03@default(draft) add _d
+  o  15:739f18ac1d03@default(draft) add _d
   |
   ~
 
@@ -161,40 +161,40 @@
   $ mkstack "desc(_d)" b1prime b3prime >/dev/null
   $ hg prune "desc(b1_)" -s "desc(b1prime)"
   1 changesets pruned
-  3 new orphan changesets
+  3 new unstable changesets
   $ hg prune "desc(b3_)" -s "desc(b3prime)"
   1 changesets pruned
   $ hg prune "desc(b2_)"
   1 changesets pruned
 
   $ hg log -G -r "desc(_d)::"
-  @  27:b253ff5b65d1@default(draft) add b3prime
+  @  28:b253ff5b65d1@default(draft) add b3prime
   |
-  o  26:4acf61f11dfb@default(draft) add b1prime
+  o  27:4acf61f11dfb@default(draft) add b1prime
   |
-  | o  25:594e1fbbd61f@default(draft) add b4_
+  | o  26:594e1fbbd61f@default(draft) add b4_
   | |
-  | x  24:be27500cfc76@default(draft) add b3_
+  | x  25:be27500cfc76@default(draft) add b3_
   | |
-  | x  23:b54f77dc5831@default(draft) add b2_
+  | x  24:b54f77dc5831@default(draft) add b2_
   | |
-  | x  22:0e1eba27e9aa@default(draft) add b1_
+  | x  23:0e1eba27e9aa@default(draft) add b1_
   |/
-  | o  21:dcf786e878fd@default(draft) add c1second
+  | o  22:dcf786e878fd@default(draft) add c1second
   |/
-  | o  20:507d52d715f6@default(draft) add c2prime
+  | o  21:507d52d715f6@default(draft) add c2prime
   | |
-  | x  19:c995cb124ddc@default(draft) add c1prime
+  | x  20:c995cb124ddc@default(draft) add c1prime
   |/
-  | o  18:d096a2437fd0@default(draft) add c4_
+  | o  19:d096a2437fd0@default(draft) add c4_
   | |
-  | o  17:cde95c6cba7a@default(draft) add c3_
+  | o  18:cde95c6cba7a@default(draft) add c3_
   | |
-  | x  16:e0d9f7a099fe@default(draft) add c2_
+  | x  17:e0d9f7a099fe@default(draft) add c2_
   | |
-  | x  15:43b7c338b1f8@default(draft) add c1_
+  | x  16:43b7c338b1f8@default(draft) add c1_
   |/
-  o  14:739f18ac1d03@default(draft) add _d
+  o  15:739f18ac1d03@default(draft) add _d
   |
   ~
 
@@ -203,35 +203,35 @@
   (desc(_d)::) - desc(c3_)
   $ hg evolve --rev "(desc(_d)::) - desc(c3_)"
   cannot solve instability of d096a2437fd0, skipping
-  move:[20] add c2prime
-  atop:[21] add c1second
-  move:[25] add b4_
-  atop:[27] add b3prime
+  move:[21] add c2prime
+  atop:[22] add c1second
+  move:[26] add b4_
+  atop:[28] add b3prime
   working directory is now at ea93190a9cd1
 
 Cleanup
   $ hg evolve --rev "(desc(_d)::)"
-  move:[17] add c3_
-  atop:[28] add c2prime
-  move:[18] add c4_
-  atop:[30] add c3_
+  move:[18] add c3_
+  atop:[29] add c2prime
+  move:[19] add c4_
+  atop:[31] add c3_
   working directory is now at 35e7b797ace5
   $ hg log -G -r "desc(_d)::"
-  @  31:35e7b797ace5@default(draft) add c4_
+  @  32:35e7b797ace5@default(draft) add c4_
   |
-  o  30:0b9488394e89@default(draft) add c3_
+  o  31:0b9488394e89@default(draft) add c3_
   |
-  | o  29:ea93190a9cd1@default(draft) add b4_
+  | o  30:ea93190a9cd1@default(draft) add b4_
   | |
-  o |  28:881b9c092e53@default(draft) add c2prime
+  o |  29:881b9c092e53@default(draft) add c2prime
   | |
-  | o  27:b253ff5b65d1@default(draft) add b3prime
+  | o  28:b253ff5b65d1@default(draft) add b3prime
   | |
-  | o  26:4acf61f11dfb@default(draft) add b1prime
+  | o  27:4acf61f11dfb@default(draft) add b1prime
   | |
-  o |  21:dcf786e878fd@default(draft) add c1second
+  o |  22:dcf786e878fd@default(draft) add c1second
   |/
-  o  14:739f18ac1d03@default(draft) add _d
+  o  15:739f18ac1d03@default(draft) add _d
   |
   ~
 
@@ -244,22 +244,22 @@
   created new head
   $ hg prev
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
-  [28] add c2prime
+  [29] add c2prime
   $ mkcommit c3part2
   created new head
   $ hg prune -s 'desc(c3part1)' 'desc(c3_)'
   1 changesets pruned
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg prune -s 'desc(c3part2)' 'desc(c3_)'
   1 changesets pruned
-  2 new content-divergent changesets
+  2 new divergent changesets
   $ hg up 'desc(b3prime)'
   2 files updated, 0 files merged, 3 files removed, 0 files unresolved
   $ hg amend -m 'b3second'
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg evolve --rev "orphan()"
-  move:[29] add b4_
-  atop:[34] b3second
+  move:[30] add b4_
+  atop:[35] b3second
   skipping 0b9488394e89: divergent rewriting. can't choose destination
   working directory is now at 31809a198477
 
--- a/tests/test-evolve-serveronly-bundle2.t
+++ b/tests/test-evolve-serveronly-bundle2.t
@@ -72,7 +72,6 @@
   adding manifests
   adding file changes
   added 2 changesets with 2 changes to 2 files
-  new changesets 8685c6d34325:4957bfdac07e
   (run 'hg update' to get a working copy)
   $ cat ../errors.log
   $ hg push -R ../other
@@ -108,7 +107,7 @@
   remote: adding manifests
   remote: adding file changes
   remote: added 1 changesets with 1 changes to 1 files (+1 heads)
-  remote: 1 new obsolescence markers
+  remote: 2 new obsolescence markers
   remote: obsoleted 1 changesets
   $ cat ../errors.log
   $ hg push
@@ -128,9 +127,8 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to [12] files \(\+1 heads\) (re)
-  1 new obsolescence markers
+  2 new obsolescence markers
   obsoleted 1 changesets
-  new changesets 9d1c114e7797
   (run 'hg heads' to see heads)
   $ cat ../errors.log
   $ hg -R ../other pull
--- a/tests/test-evolve-serveronly.t
+++ b/tests/test-evolve-serveronly.t
@@ -76,7 +76,6 @@
   the remote repository use years old versions of Mercurial and evolve
   pulling obsmarker using legacy method
   (please upgrade your server)
-  new changesets 8685c6d34325:4957bfdac07e
   (run 'hg update' to get a working copy)
   $ cat ../errors.log
   $ hg push -R ../other
@@ -115,8 +114,8 @@
   the remote repository use years old versions of Mercurial and evolve
   pushing obsmarker using legacy method
   (please upgrade your server)
-  pushing 1 obsolescence markers (* bytes) (glob)
-  remote: 1 obsolescence markers added
+  pushing 2 obsolescence markers (* bytes) (glob)
+  remote: 2 obsolescence markers added
   remote: obsoleted 1 changesets
   $ cat ../errors.log
   $ hg push
@@ -140,9 +139,8 @@
   the remote repository use years old versions of Mercurial and evolve
   pulling obsmarker using legacy method
   (please upgrade your server)
-  1 obsolescence markers added
+  2 obsolescence markers added
   obsoleted 1 changesets
-  new changesets 9d1c114e7797
   (run 'hg heads' to see heads)
   $ cat ../errors.log
   $ hg -R ../other pull
--- a/tests/test-evolve-split.t
+++ b/tests/test-evolve-split.t
@@ -44,7 +44,7 @@
   $ hg commit -m "_pp"
   $ hg prune --succ "desc(_oo) + desc(_pp)" -r "desc('oo+pp')" --split
   1 changesets pruned
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg log -G
   @  4:d0dcf24cddd3@default(draft) _pp
   |
--- a/tests/test-evolve-templates.t
+++ b/tests/test-evolve-templates.t
@@ -19,7 +19,7 @@
   >     {if(successors, "\n  semi-colon: {join(successors, "; ")}")}\
   >     {if(obsfate, "\n  Fate: {join(obsfate, "\n  Fate: ")}\n")}\n'
   > fatelog = log -G -T '{node|short}\n{if(obsfate, "  Obsfate: {join(obsfate, "; ")}\n\n")}'
-  > fatelogjson = log -G -T '{node|short} {obsfatedata|json}\n'
+  > fatelogjson = log -G -T '{node|short} {obsfate|json}\n'
   > EOF
 
 Test templates on amended commit
@@ -36,24 +36,30 @@
   $ HGUSER=test hg amend -m "A1" --config devel.default-date="1234567890 0"
   $ HGUSER=test2 hg amend -m "A2" --config devel.default-date="987654321 0"
   $ hg log --hidden -G
-  @  changeset:   3:d004c8f274b9
+  @  changeset:   4:d004c8f274b9
   |  tag:         tip
   |  parent:      0:ea207398892e
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
   |  summary:     A2
   |
-  | x  changeset:   2:a468dc9b3633
+  | x  changeset:   3:a468dc9b3633
   |/   parent:      0:ea207398892e
   |    user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    reworded using amend as 3:d004c8f274b9 by test2
+  |    obsolete:    reworded as d004c8f274b9 by test2
   |    summary:     A1
   |
+  | x  changeset:   2:f137d23bb3e1
+  | |  user:        test
+  | |  date:        Thu Jan 01 00:00:00 1970 +0000
+  | |  obsolete:    pruned
+  | |  summary:     temporary amend commit for 471f378eab4c
+  | |
   | x  changeset:   1:471f378eab4c
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    rewritten using amend as 2:a468dc9b3633
+  |    obsolete:    rewritten as a468dc9b3633
   |    summary:     A0
   |
   o  changeset:   0:ea207398892e
@@ -70,9 +76,9 @@
 
 Precursors template should show current revision as it is the working copy
   $ hg olog tip
-  o  d004c8f274b9 (3) A2
+  o  d004c8f274b9 (4) A2
   |
-  x  a468dc9b3633 (2) A1
+  x  a468dc9b3633 (3) A1
   |    rewritten(description) as d004c8f274b9 by test2 (Thu Apr 19 04:25:21 2001 +0000)
   |
   @  471f378eab4c (1) A0
@@ -83,15 +89,15 @@
   |    Precursors: 1:471f378eab4c
   |    semi-colon: 1:471f378eab4c
   | @  471f378eab4c
-  |/     Successors: 3:d004c8f274b9
-  |      semi-colon: 3:d004c8f274b9
-  |      Fate: rewritten using amend as 3:d004c8f274b9 by test, test2
+  |/     Successors: 4:d004c8f274b9
+  |      semi-colon: 4:d004c8f274b9
+  |      Fate: rewritten as d004c8f274b9 by test, test2
   |
   o  ea207398892e
   
 
   $ hg log -G
-  o  changeset:   3:d004c8f274b9
+  o  changeset:   4:d004c8f274b9
   |  tag:         tip
   |  parent:      0:ea207398892e
   |  user:        test
@@ -101,7 +107,7 @@
   | @  changeset:   1:471f378eab4c
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    rewritten using amend as 3:d004c8f274b9 by test, test2
+  |    obsolete:    rewritten as d004c8f274b9 by test, test2
   |    summary:     A0
   |
   o  changeset:   0:ea207398892e
@@ -114,7 +120,7 @@
   o  d004c8f274b9
   |
   | @  471f378eab4c
-  |/     Obsfate: rewritten using amend as 3:d004c8f274b9
+  |/     Obsfate: rewritten as d004c8f274b9
   |
   o  ea207398892e
   
@@ -123,7 +129,7 @@
   o  d004c8f274b9
   |
   | @  471f378eab4c
-  |/     Obsfate: rewritten using amend as 3:d004c8f274b9 by test, test2
+  |/     Obsfate: rewritten as d004c8f274b9 by test, test2
   |
   o  ea207398892e
   
@@ -131,7 +137,7 @@
   o  d004c8f274b9
   |
   | @  471f378eab4c
-  |/     Obsfate: rewritten using amend as 3:d004c8f274b9 by test, test2 (between 2001-04-19 04:25 +0000 and 2009-02-13 23:31 +0000)
+  |/     Obsfate: rewritten as d004c8f274b9 by test, test2 (between 2001-04-19 04:25 +0000 and 2009-02-13 23:31 +0000)
   |
   o  ea207398892e
   
@@ -162,12 +168,12 @@
 Precursors template should show current revision as it is the working copy
   $ hg tlog
   o  d004c8f274b9
-  |    Precursors: 2:a468dc9b3633
-  |    semi-colon: 2:a468dc9b3633
+  |    Precursors: 3:a468dc9b3633
+  |    semi-colon: 3:a468dc9b3633
   | @  a468dc9b3633
-  |/     Successors: 3:d004c8f274b9
-  |      semi-colon: 3:d004c8f274b9
-  |      Fate: reworded using amend as 3:d004c8f274b9 by test2
+  |/     Successors: 4:d004c8f274b9
+  |      semi-colon: 4:d004c8f274b9
+  |      Fate: reworded as d004c8f274b9 by test2
   |
   o  ea207398892e
   
@@ -175,27 +181,22 @@
 --hidden  
   $ hg tlog --hidden
   o  d004c8f274b9
-  |    Precursors: 2:a468dc9b3633
-  |    semi-colon: 2:a468dc9b3633
+  |    Precursors: 3:a468dc9b3633
+  |    semi-colon: 3:a468dc9b3633
   | @  a468dc9b3633
   |/     Precursors: 1:471f378eab4c
   |      semi-colon: 1:471f378eab4c
-  |      Successors: 3:d004c8f274b9
-  |      semi-colon: 3:d004c8f274b9
-  |      Fate: reworded using amend as 3:d004c8f274b9 by test2
+  |      Successors: 4:d004c8f274b9
+  |      semi-colon: 4:d004c8f274b9
+  |      Fate: reworded as d004c8f274b9 by test2
   |
+  | x  f137d23bb3e1
+  | |    Fate: pruned
+  | |
   | x  471f378eab4c
-  |/     Successors: 2:a468dc9b3633
-  |      semi-colon: 2:a468dc9b3633
-  |      Fate: rewritten using amend as 2:a468dc9b3633
-  |
-  o  ea207398892e
-  
-  $ hg fatelog -v
-  o  d004c8f274b9
-  |
-  | @  a468dc9b3633
-  |/     Obsfate: reworded using amend as 3:d004c8f274b9 by test2 (at 2001-04-19 04:25 +0000)
+  |/     Successors: 3:a468dc9b3633
+  |      semi-colon: 3:a468dc9b3633
+  |      Fate: rewritten as a468dc9b3633
   |
   o  ea207398892e
   
@@ -208,19 +209,22 @@
   
   $ hg tlog --hidden
   @  d004c8f274b9
-  |    Precursors: 2:a468dc9b3633
-  |    semi-colon: 2:a468dc9b3633
+  |    Precursors: 3:a468dc9b3633
+  |    semi-colon: 3:a468dc9b3633
   | x  a468dc9b3633
   |/     Precursors: 1:471f378eab4c
   |      semi-colon: 1:471f378eab4c
-  |      Successors: 3:d004c8f274b9
-  |      semi-colon: 3:d004c8f274b9
-  |      Fate: reworded using amend as 3:d004c8f274b9 by test2
+  |      Successors: 4:d004c8f274b9
+  |      semi-colon: 4:d004c8f274b9
+  |      Fate: reworded as d004c8f274b9 by test2
   |
+  | x  f137d23bb3e1
+  | |    Fate: pruned
+  | |
   | x  471f378eab4c
-  |/     Successors: 2:a468dc9b3633
-  |      semi-colon: 2:a468dc9b3633
-  |      Fate: rewritten using amend as 2:a468dc9b3633
+  |/     Successors: 3:a468dc9b3633
+  |      semi-colon: 3:a468dc9b3633
+  |      Fate: rewritten as a468dc9b3633
   |
   o  ea207398892e
   
@@ -234,10 +238,13 @@
   @  d004c8f274b9
   |
   | x  a468dc9b3633
-  |/     Obsfate: reworded using amend as 3:d004c8f274b9 by test2 (at 2001-04-19 04:25 +0000)
+  |/     Obsfate: reworded as d004c8f274b9 by test2 (at 2001-04-19 04:25 +0000)
   |
+  | x  f137d23bb3e1
+  | |    Obsfate: pruned by test (at 2009-02-13 23:31 +0000)
+  | |
   | x  471f378eab4c
-  |/     Obsfate: rewritten using amend as 2:a468dc9b3633 by test (at 2009-02-13 23:31 +0000)
+  |/     Obsfate: rewritten as a468dc9b3633 by test (at 2009-02-13 23:31 +0000)
   |
   o  ea207398892e
   
@@ -245,9 +252,11 @@
   $ hg fatelogjson --hidden
   @  d004c8f274b9 []
   |
-  | x  a468dc9b3633 [{"markers": [["a468dc9b36338b14fdb7825f55ce3df4e71517ad", ["d004c8f274b9ec480a47a93c10dac5eee63adb78"], 0, [["ef1", "1"], ["operation", "amend"], ["user", "test2"]], [987654321.0, 0], null]], "max_date": [987654321.0, 0], "min_date": [987654321.0, 0], "successors": ["d004c8f274b9ec480a47a93c10dac5eee63adb78"], "users": ["test2"], "verb": "reworded"}]
+  | x  a468dc9b3633 [{"markers": [["a468dc9b36338b14fdb7825f55ce3df4e71517ad", ["d004c8f274b9ec480a47a93c10dac5eee63adb78"], 0, [["ef1", "1"], ["user", "test2"]], [987654321.0, 0], null]], "max_date": [987654321.0, 0], "min_date": [987654321.0, 0], "successors": ["d004c8f274b9ec480a47a93c10dac5eee63adb78"], "users": ["test2"], "verb": "reworded"}]
   |/
-  | x  471f378eab4c [{"markers": [["471f378eab4c5e25f6c77f785b27c936efb22874", ["a468dc9b36338b14fdb7825f55ce3df4e71517ad"], 0, [["ef1", "9"], ["operation", "amend"], ["user", "test"]], [1234567890.0, 0], null]], "max_date": [1234567890.0, 0], "min_date": [1234567890.0, 0], "successors": ["a468dc9b36338b14fdb7825f55ce3df4e71517ad"], "users": ["test"], "verb": "rewritten"}]
+  | x  f137d23bb3e1 [{"markers": [["f137d23bb3e11dc1daeb6264fac9cb2433782e15", [], 0, [["ef1", "0"], ["user", "test"]], [1234567890.0, 0], ["471f378eab4c5e25f6c77f785b27c936efb22874"]]], "max_date": [1234567890.0, 0], "min_date": [1234567890.0, 0], "successors": [], "users": ["test"], "verb": "pruned"}]
+  | |
+  | x  471f378eab4c [{"markers": [["471f378eab4c5e25f6c77f785b27c936efb22874", ["a468dc9b36338b14fdb7825f55ce3df4e71517ad"], 0, [["ef1", "9"], ["user", "test"]], [1234567890.0, 0], null]], "max_date": [1234567890.0, 0], "min_date": [1234567890.0, 0], "successors": ["a468dc9b36338b14fdb7825f55ce3df4e71517ad"], "users": ["test"], "verb": "rewritten"}]
   |/
   o  ea207398892e []
   
@@ -326,7 +335,7 @@
   | x  changeset:   1:471597cad322
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    split as 2:337fec4d2edc, 3:f257fde29c7a
+  |    obsolete:    split as 337fec4d2edc, f257fde29c7a
   |    summary:     A0
   |
   o  changeset:   0:ea207398892e
@@ -354,7 +363,7 @@
   | @  471597cad322
   |/     Successors: 2:337fec4d2edc 3:f257fde29c7a
   |      semi-colon: 2:337fec4d2edc 3:f257fde29c7a
-  |      Fate: split as 2:337fec4d2edc, 3:f257fde29c7a
+  |      Fate: split as 337fec4d2edc, f257fde29c7a
   |
   o  ea207398892e
   
@@ -364,7 +373,7 @@
   o  337fec4d2edc
   |
   | @  471597cad322
-  |/     Obsfate: split as 2:337fec4d2edc, 3:f257fde29c7a
+  |/     Obsfate: split as 337fec4d2edc, f257fde29c7a
   |
   o  ea207398892e
   
@@ -393,7 +402,7 @@
   | x  471597cad322
   |/     Successors: 2:337fec4d2edc 3:f257fde29c7a
   |      semi-colon: 2:337fec4d2edc 3:f257fde29c7a
-  |      Fate: split as 2:337fec4d2edc, 3:f257fde29c7a
+  |      Fate: split as 337fec4d2edc, f257fde29c7a
   |
   o  ea207398892e
   
@@ -403,7 +412,7 @@
   o  337fec4d2edc
   |
   | x  471597cad322
-  |/     Obsfate: split as 2:337fec4d2edc, 3:f257fde29c7a
+  |/     Obsfate: split as 337fec4d2edc, f257fde29c7a
   |
   o  ea207398892e
   
@@ -460,13 +469,13 @@
   | x  changeset:   2:0dec01379d3b
   | |  user:        test
   | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  obsolete:    rewritten as 3:eb5a0daa2192
+  | |  obsolete:    rewritten as eb5a0daa2192
   | |  summary:     B0
   | |
   | x  changeset:   1:471f378eab4c
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    rewritten as 3:eb5a0daa2192
+  |    obsolete:    rewritten as eb5a0daa2192
   |    summary:     A0
   |
   o  changeset:   0:ea207398892e
@@ -490,7 +499,7 @@
   | @  471f378eab4c
   |/     Successors: 3:eb5a0daa2192
   |      semi-colon: 3:eb5a0daa2192
-  |      Fate: rewritten as 3:eb5a0daa2192
+  |      Fate: rewritten as eb5a0daa2192
   |
   o  ea207398892e
   
@@ -498,7 +507,7 @@
   o  eb5a0daa2192
   |
   | @  471f378eab4c
-  |/     Obsfate: rewritten as 3:eb5a0daa2192
+  |/     Obsfate: rewritten as eb5a0daa2192
   |
   o  ea207398892e
   
@@ -516,12 +525,12 @@
   | @  0dec01379d3b
   | |    Successors: 3:eb5a0daa2192
   | |    semi-colon: 3:eb5a0daa2192
-  | |    Fate: rewritten as 3:eb5a0daa2192
+  | |    Fate: rewritten as eb5a0daa2192
   | |
   | x  471f378eab4c
   |/     Successors: 3:eb5a0daa2192
   |      semi-colon: 3:eb5a0daa2192
-  |      Fate: rewritten as 3:eb5a0daa2192
+  |      Fate: rewritten as eb5a0daa2192
   |
   o  ea207398892e
   
@@ -529,10 +538,10 @@
   o  eb5a0daa2192
   |
   | @  0dec01379d3b
-  | |    Obsfate: rewritten as 3:eb5a0daa2192
+  | |    Obsfate: rewritten as eb5a0daa2192
   | |
   | x  471f378eab4c
-  |/     Obsfate: rewritten as 3:eb5a0daa2192
+  |/     Obsfate: rewritten as eb5a0daa2192
   |
   o  ea207398892e
   
@@ -556,12 +565,12 @@
   | x  0dec01379d3b
   | |    Successors: 3:eb5a0daa2192
   | |    semi-colon: 3:eb5a0daa2192
-  | |    Fate: rewritten as 3:eb5a0daa2192
+  | |    Fate: rewritten as eb5a0daa2192
   | |
   | x  471f378eab4c
   |/     Successors: 3:eb5a0daa2192
   |      semi-colon: 3:eb5a0daa2192
-  |      Fate: rewritten as 3:eb5a0daa2192
+  |      Fate: rewritten as eb5a0daa2192
   |
   o  ea207398892e
   
@@ -569,10 +578,10 @@
   @  eb5a0daa2192
   |
   | x  0dec01379d3b
-  | |    Obsfate: rewritten as 3:eb5a0daa2192
+  | |    Obsfate: rewritten as eb5a0daa2192
   | |
   | x  471f378eab4c
-  |/     Obsfate: rewritten as 3:eb5a0daa2192
+  |/     Obsfate: rewritten as eb5a0daa2192
   |
   o  ea207398892e
   
@@ -609,7 +618,7 @@
   | x  changeset:   1:471f378eab4c
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    reworded using amend as 2:fdf9bde5129a
+  |    obsolete:    reworded as fdf9bde5129a
   |    summary:     A0
   |
   o  changeset:   0:ea207398892e
@@ -622,28 +631,28 @@
   working directory parent is obsolete! (471f378eab4c)
   (use 'hg evolve' to update to its successor: fdf9bde5129a)
   $ hg amend -m "A2"
-  2 new content-divergent changesets
+  2 new divergent changesets
   $ hg log --hidden -G
   @  changeset:   3:65b757b745b9
   |  tag:         tip
   |  parent:      0:ea207398892e
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  instability: content-divergent
+  |  trouble:     divergent
   |  summary:     A2
   |
   | o  changeset:   2:fdf9bde5129a
   |/   parent:      0:ea207398892e
   |    user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    instability: content-divergent
+  |    trouble:     divergent
   |    summary:     A1
   |
   | x  changeset:   1:471f378eab4c
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    reworded using amend as 2:fdf9bde5129a
-  |    obsolete:    reworded using amend as 3:65b757b745b9
+  |    obsolete:    reworded as fdf9bde5129a
+  |    obsolete:    reworded as 65b757b745b9
   |    summary:     A0
   |
   o  changeset:   0:ea207398892e
@@ -672,8 +681,8 @@
   | @  471f378eab4c
   |/     Successors: 2:fdf9bde5129a; 4:019fadeab383
   |      semi-colon: 2:fdf9bde5129a; 4:019fadeab383
-  |      Fate: reworded using amend as 2:fdf9bde5129a
-  |      Fate: reworded using amend as 4:019fadeab383
+  |      Fate: reworded as fdf9bde5129a
+  |      Fate: reworded as 019fadeab383
   |
   o  ea207398892e
   
@@ -683,7 +692,7 @@
   | o  fdf9bde5129a
   |/
   | @  471f378eab4c
-  |/     Obsfate: reworded using amend as 2:fdf9bde5129a; reworded using amend as 4:019fadeab383
+  |/     Obsfate: reworded as fdf9bde5129a; reworded as 019fadeab383
   |
   o  ea207398892e
   
@@ -717,7 +726,7 @@
   |      semi-colon: 1:471f378eab4c
   |      Successors: 4:019fadeab383
   |      semi-colon: 4:019fadeab383
-  |      Fate: reworded using amend as 4:019fadeab383
+  |      Fate: reworded as 019fadeab383
   |
   | @  fdf9bde5129a
   |/     Precursors: 1:471f378eab4c
@@ -725,8 +734,8 @@
   | x  471f378eab4c
   |/     Successors: 2:fdf9bde5129a; 3:65b757b745b9
   |      semi-colon: 2:fdf9bde5129a; 3:65b757b745b9
-  |      Fate: reworded using amend as 2:fdf9bde5129a
-  |      Fate: reworded using amend as 3:65b757b745b9
+  |      Fate: reworded as fdf9bde5129a
+  |      Fate: reworded as 65b757b745b9
   |
   o  ea207398892e
   
@@ -734,12 +743,12 @@
   o  019fadeab383
   |
   | x  65b757b745b9
-  |/     Obsfate: reworded using amend as 4:019fadeab383
+  |/     Obsfate: reworded as 019fadeab383
   |
   | @  fdf9bde5129a
   |/
   | x  471f378eab4c
-  |/     Obsfate: reworded using amend as 2:fdf9bde5129a; reworded using amend as 3:65b757b745b9
+  |/     Obsfate: reworded as fdf9bde5129a; reworded as 65b757b745b9
   |
   o  ea207398892e
   
@@ -747,11 +756,11 @@
   $ hg fatelogjson --hidden
   o  019fadeab383 []
   |
-  | x  65b757b745b9 [{"markers": [["65b757b745b935093c87a2bccd877521cccffcbd", ["019fadeab383f6699fa83ad7bdb4d82ed2c0e5ab"], 0, [["ef1", "1"], ["operation", "amend"], ["user", "test"]], [0.0, 0], null]], "max_date": [0.0, 0], "min_date": [0.0, 0], "successors": ["019fadeab383f6699fa83ad7bdb4d82ed2c0e5ab"], "users": ["test"], "verb": "reworded"}]
+  | x  65b757b745b9 [{"markers": [["65b757b745b935093c87a2bccd877521cccffcbd", ["019fadeab383f6699fa83ad7bdb4d82ed2c0e5ab"], 0, [["ef1", "1"], ["user", "test"]], [0.0, 0], null]], "max_date": [0.0, 0], "min_date": [0.0, 0], "successors": ["019fadeab383f6699fa83ad7bdb4d82ed2c0e5ab"], "users": ["test"], "verb": "reworded"}]
   |/
   | @  fdf9bde5129a []
   |/
-  | x  471f378eab4c [{"markers": [["471f378eab4c5e25f6c77f785b27c936efb22874", ["fdf9bde5129a28d4548fadd3f62b265cdd3b7a2e"], 0, [["ef1", "1"], ["operation", "amend"], ["user", "test"]], [0.0, 0], null]], "max_date": [0.0, 0], "min_date": [0.0, 0], "successors": ["fdf9bde5129a28d4548fadd3f62b265cdd3b7a2e"], "users": ["test"], "verb": "reworded"}, {"markers": [["471f378eab4c5e25f6c77f785b27c936efb22874", ["65b757b745b935093c87a2bccd877521cccffcbd"], 0, [["ef1", "1"], ["operation", "amend"], ["user", "test"]], [0.0, 0], null]], "max_date": [0.0, 0], "min_date": [0.0, 0], "successors": ["65b757b745b935093c87a2bccd877521cccffcbd"], "users": ["test"], "verb": "reworded"}]
+  | x  471f378eab4c [{"markers": [["471f378eab4c5e25f6c77f785b27c936efb22874", ["fdf9bde5129a28d4548fadd3f62b265cdd3b7a2e"], 0, [["ef1", "1"], ["user", "test"]], [0.0, 0], null]], "max_date": [0.0, 0], "min_date": [0.0, 0], "successors": ["fdf9bde5129a28d4548fadd3f62b265cdd3b7a2e"], "users": ["test"], "verb": "reworded"}, {"markers": [["471f378eab4c5e25f6c77f785b27c936efb22874", ["65b757b745b935093c87a2bccd877521cccffcbd"], 0, [["ef1", "1"], ["user", "test"]], [0.0, 0], null]], "max_date": [0.0, 0], "min_date": [0.0, 0], "successors": ["65b757b745b935093c87a2bccd877521cccffcbd"], "users": ["test"], "verb": "reworded"}]
   |/
   o  ea207398892e []
   
@@ -779,7 +788,7 @@
   | x  changeset:   2:0dec01379d3b
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    reworded using amend as 3:b7ea6d14e664
+  |    obsolete:    reworded as b7ea6d14e664
   |    summary:     B0
   |
   o  changeset:   1:471f378eab4c
@@ -807,19 +816,19 @@
   | |  parent:      1:471f378eab4c
   | |  user:        test
   | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  obsolete:    rewritten as 4:eb5a0daa2192
+  | |  obsolete:    rewritten as eb5a0daa2192
   | |  summary:     B1
   | |
   | | x  changeset:   2:0dec01379d3b
   | |/   user:        test
   | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | |    obsolete:    reworded using amend as 3:b7ea6d14e664
+  | |    obsolete:    reworded as b7ea6d14e664
   | |    summary:     B0
   | |
   | x  changeset:   1:471f378eab4c
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    rewritten as 4:eb5a0daa2192
+  |    obsolete:    rewritten as eb5a0daa2192
   |    summary:     A0
   |
   o  changeset:   0:ea207398892e
@@ -841,7 +850,7 @@
   | @  471f378eab4c
   |/     Successors: 4:eb5a0daa2192
   |      semi-colon: 4:eb5a0daa2192
-  |      Fate: rewritten as 4:eb5a0daa2192
+  |      Fate: rewritten as eb5a0daa2192
   |
   o  ea207398892e
   
@@ -849,7 +858,7 @@
   o  eb5a0daa2192
   |
   | @  471f378eab4c
-  |/     Obsfate: rewritten as 4:eb5a0daa2192
+  |/     Obsfate: rewritten as eb5a0daa2192
   |
   o  ea207398892e
   
@@ -864,12 +873,12 @@
   | @  0dec01379d3b
   | |    Successors: 4:eb5a0daa2192
   | |    semi-colon: 4:eb5a0daa2192
-  | |    Fate: rewritten using amend as 4:eb5a0daa2192
+  | |    Fate: rewritten as eb5a0daa2192
   | |
   | x  471f378eab4c
   |/     Successors: 4:eb5a0daa2192
   |      semi-colon: 4:eb5a0daa2192
-  |      Fate: rewritten as 4:eb5a0daa2192
+  |      Fate: rewritten as eb5a0daa2192
   |
   o  ea207398892e
   
@@ -877,10 +886,10 @@
   o  eb5a0daa2192
   |
   | @  0dec01379d3b
-  | |    Obsfate: rewritten using amend as 4:eb5a0daa2192
+  | |    Obsfate: rewritten as eb5a0daa2192
   | |
   | x  471f378eab4c
-  |/     Obsfate: rewritten as 4:eb5a0daa2192
+  |/     Obsfate: rewritten as eb5a0daa2192
   |
   o  ea207398892e
   
@@ -896,12 +905,12 @@
   | @  b7ea6d14e664
   | |    Successors: 4:eb5a0daa2192
   | |    semi-colon: 4:eb5a0daa2192
-  | |    Fate: rewritten as 4:eb5a0daa2192
+  | |    Fate: rewritten as eb5a0daa2192
   | |
   | x  471f378eab4c
   |/     Successors: 4:eb5a0daa2192
   |      semi-colon: 4:eb5a0daa2192
-  |      Fate: rewritten as 4:eb5a0daa2192
+  |      Fate: rewritten as eb5a0daa2192
   |
   o  ea207398892e
   
@@ -909,10 +918,10 @@
   o  eb5a0daa2192
   |
   | @  b7ea6d14e664
-  | |    Obsfate: rewritten as 4:eb5a0daa2192
+  | |    Obsfate: rewritten as eb5a0daa2192
   | |
   | x  471f378eab4c
-  |/     Obsfate: rewritten as 4:eb5a0daa2192
+  |/     Obsfate: rewritten as eb5a0daa2192
   |
   o  ea207398892e
   
@@ -933,17 +942,17 @@
   | |    semi-colon: 2:0dec01379d3b
   | |    Successors: 4:eb5a0daa2192
   | |    semi-colon: 4:eb5a0daa2192
-  | |    Fate: rewritten as 4:eb5a0daa2192
+  | |    Fate: rewritten as eb5a0daa2192
   | |
   | | x  0dec01379d3b
   | |/     Successors: 3:b7ea6d14e664
   | |      semi-colon: 3:b7ea6d14e664
-  | |      Fate: reworded using amend as 3:b7ea6d14e664
+  | |      Fate: reworded as b7ea6d14e664
   | |
   | x  471f378eab4c
   |/     Successors: 4:eb5a0daa2192
   |      semi-colon: 4:eb5a0daa2192
-  |      Fate: rewritten as 4:eb5a0daa2192
+  |      Fate: rewritten as eb5a0daa2192
   |
   o  ea207398892e
   
@@ -951,13 +960,13 @@
   @  eb5a0daa2192
   |
   | x  b7ea6d14e664
-  | |    Obsfate: rewritten as 4:eb5a0daa2192
+  | |    Obsfate: rewritten as eb5a0daa2192
   | |
   | | x  0dec01379d3b
-  | |/     Obsfate: reworded using amend as 3:b7ea6d14e664
+  | |/     Obsfate: reworded as b7ea6d14e664
   | |
   | x  471f378eab4c
-  |/     Obsfate: rewritten as 4:eb5a0daa2192
+  |/     Obsfate: rewritten as eb5a0daa2192
   |
   o  ea207398892e
   
@@ -966,7 +975,7 @@
   |
   | x  b7ea6d14e664 [{"markers": [["b7ea6d14e664bdc8922221f7992631b50da3fb07", ["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"], 0, [["ef1", "13"], ["user", "test"]], [0.0, 0], null]], "max_date": [0.0, 0], "min_date": [0.0, 0], "successors": ["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"], "users": ["test"], "verb": "rewritten"}]
   | |
-  | | x  0dec01379d3b [{"markers": [["0dec01379d3be6318c470ead31b1fe7ae7cb53d5", ["b7ea6d14e664bdc8922221f7992631b50da3fb07"], 0, [["ef1", "1"], ["operation", "amend"], ["user", "test"]], [0.0, 0], null]], "max_date": [0.0, 0], "min_date": [0.0, 0], "successors": ["b7ea6d14e664bdc8922221f7992631b50da3fb07"], "users": ["test"], "verb": "reworded"}]
+  | | x  0dec01379d3b [{"markers": [["0dec01379d3be6318c470ead31b1fe7ae7cb53d5", ["b7ea6d14e664bdc8922221f7992631b50da3fb07"], 0, [["ef1", "1"], ["user", "test"]], [0.0, 0], null]], "max_date": [0.0, 0], "min_date": [0.0, 0], "successors": ["b7ea6d14e664bdc8922221f7992631b50da3fb07"], "users": ["test"], "verb": "reworded"}]
   | |/
   | x  471f378eab4c [{"markers": [["471f378eab4c5e25f6c77f785b27c936efb22874", ["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"], 0, [["ef1", "9"], ["user", "test"]], [0.0, 0], null]], "max_date": [0.0, 0], "min_date": [0.0, 0], "successors": ["eb5a0daa21923bbf8caeb2c42085b9e463861fd0"], "users": ["test"], "verb": "rewritten"}]
   |/
@@ -1014,13 +1023,13 @@
   |/   parent:      0:ea207398892e
   |    user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    reworded using amend as 3:7a230b46bf61
+  |    obsolete:    reworded as 7a230b46bf61
   |    summary:     A1
   |
   | x  changeset:   1:471f378eab4c
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    reworded using amend as 2:fdf9bde5129a
+  |    obsolete:    reworded as fdf9bde5129a
   |    summary:     A0
   |
   o  changeset:   0:ea207398892e
@@ -1038,7 +1047,6 @@
   added 1 changesets with 0 changes to 1 files (+1 heads)
   2 new obsolescence markers
   obsoleted 1 changesets
-  new changesets 7a230b46bf61
   (run 'hg heads' to see heads, 'hg merge' to merge)
   working directory parent is obsolete! (471f378eab4c)
   (use 'hg evolve' to update to its successor: 7a230b46bf61)
@@ -1053,7 +1061,7 @@
   | @  changeset:   1:471f378eab4c
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    reworded using amend as 2:7a230b46bf61
+  |    obsolete:    reworded as 7a230b46bf61
   |    summary:     A0
   |
   o  changeset:   0:ea207398892e
@@ -1071,7 +1079,7 @@
   | @  471f378eab4c
   |/     Successors: 2:7a230b46bf61
   |      semi-colon: 2:7a230b46bf61
-  |      Fate: reworded using amend as 2:7a230b46bf61
+  |      Fate: reworded as 7a230b46bf61
   |
   o  ea207398892e
   
@@ -1079,7 +1087,7 @@
   o  7a230b46bf61
   |
   | @  471f378eab4c
-  |/     Obsfate: reworded using amend as 2:7a230b46bf61 by test (at 1970-01-01 00:00 +0000)
+  |/     Obsfate: reworded as 7a230b46bf61 by test (at 1970-01-01 00:00 +0000)
   |
   o  ea207398892e
   
@@ -1102,7 +1110,7 @@
   | x  471f378eab4c
   |/     Successors: 2:7a230b46bf61
   |      semi-colon: 2:7a230b46bf61
-  |      Fate: reworded using amend as 2:7a230b46bf61
+  |      Fate: reworded as 7a230b46bf61
   |
   o  ea207398892e
   
@@ -1110,7 +1118,7 @@
   @  7a230b46bf61
   |
   | x  471f378eab4c
-  |/     Obsfate: reworded using amend as 2:7a230b46bf61 by test (at 1970-01-01 00:00 +0000)
+  |/     Obsfate: reworded as 7a230b46bf61 by test (at 1970-01-01 00:00 +0000)
   |
   o  ea207398892e
   
@@ -1118,7 +1126,7 @@
   $ hg fatelogjson --hidden
   @  7a230b46bf61 []
   |
-  | x  471f378eab4c [{"markers": [["471f378eab4c5e25f6c77f785b27c936efb22874", ["fdf9bde5129a28d4548fadd3f62b265cdd3b7a2e"], 0, [["ef1", "1"], ["operation", "amend"], ["user", "test"]], [0.0, 0], null], ["fdf9bde5129a28d4548fadd3f62b265cdd3b7a2e", ["7a230b46bf61e50b30308c6cfd7bd1269ef54702"], 0, [["ef1", "1"], ["operation", "amend"], ["user", "test"]], [0.0, 0], null]], "max_date": [0.0, 0], "min_date": [0.0, 0], "successors": ["7a230b46bf61e50b30308c6cfd7bd1269ef54702"], "users": ["test"], "verb": "reworded"}]
+  | x  471f378eab4c [{"markers": [["471f378eab4c5e25f6c77f785b27c936efb22874", ["fdf9bde5129a28d4548fadd3f62b265cdd3b7a2e"], 0, [["ef1", "1"], ["user", "test"]], [0.0, 0], null], ["fdf9bde5129a28d4548fadd3f62b265cdd3b7a2e", ["7a230b46bf61e50b30308c6cfd7bd1269ef54702"], 0, [["ef1", "1"], ["user", "test"]], [0.0, 0], null]], "max_date": [0.0, 0], "min_date": [0.0, 0], "successors": ["7a230b46bf61e50b30308c6cfd7bd1269ef54702"], "users": ["test"], "verb": "reworded"}]
   |/
   o  ea207398892e []
   
--- a/tests/test-evolve-topic.t
+++ b/tests/test-evolve-topic.t
@@ -87,16 +87,16 @@
   0 files updated, 0 files merged, 2 files removed, 0 files unresolved
   $ echo ddd >> ddd
   $ hg amend
-  6 new orphan changesets
+  6 new unstable changesets
   $ hg up 'desc(fff)'
   3 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ echo fff >> fff
   $ hg amend
 
   $ hg log -G
-  @  11 - {foo} e104f49bab28 add fff (draft)
+  @  13 - {foo} e104f49bab28 add fff (draft)
   |
-  | o  10 - {foo} d9cacd156ffc add ddd (draft)
+  | o  11 - {foo} d9cacd156ffc add ddd (draft)
   | |
   | | o  9 - {bar} 1d964213b023 add jjj (draft)
   | | |
@@ -123,16 +123,16 @@
 
   $ hg evolve --all
   move:[4] add eee
-  atop:[10] add ddd
-  move:[11] add fff
-  atop:[12] add eee
+  atop:[11] add ddd
+  move:[13] add fff
+  atop:[14] add eee
   working directory is now at 070c5573d8f9
   $ hg log -G
-  @  13 - {foo} 070c5573d8f9 add fff (draft)
+  @  15 - {foo} 070c5573d8f9 add fff (draft)
   |
-  o  12 - {foo} 42b49017ff90 add eee (draft)
+  o  14 - {foo} 42b49017ff90 add eee (draft)
   |
-  o  10 - {foo} d9cacd156ffc add ddd (draft)
+  o  11 - {foo} d9cacd156ffc add ddd (draft)
   |
   | o  9 - {bar} 1d964213b023 add jjj (draft)
   | |
@@ -160,28 +160,28 @@
 
   $ hg evolve --rev 'topic(bar)'
   move:[6] add ggg
-  atop:[13] add fff
+  atop:[15] add fff
   move:[7] add hhh
-  atop:[14] add ggg
+  atop:[16] add ggg
   move:[8] add iii
-  atop:[15] add hhh
+  atop:[17] add hhh
   move:[9] add jjj
-  atop:[16] add iii
+  atop:[18] add iii
   working directory is now at 9bf430c106b7
   $ hg log -G
-  @  17 - {bar} 9bf430c106b7 add jjj (draft)
+  @  19 - {bar} 9bf430c106b7 add jjj (draft)
   |
-  o  16 - {bar} d2dc89c57700 add iii (draft)
+  o  18 - {bar} d2dc89c57700 add iii (draft)
   |
-  o  15 - {bar} 20bc4d02aa62 add hhh (draft)
+  o  17 - {bar} 20bc4d02aa62 add hhh (draft)
   |
-  o  14 - {bar} 16d6f664b17c add ggg (draft)
+  o  16 - {bar} 16d6f664b17c add ggg (draft)
   |
-  o  13 - {foo} 070c5573d8f9 add fff (draft)
+  o  15 - {foo} 070c5573d8f9 add fff (draft)
   |
-  o  12 - {foo} 42b49017ff90 add eee (draft)
+  o  14 - {foo} 42b49017ff90 add eee (draft)
   |
-  o  10 - {foo} d9cacd156ffc add ddd (draft)
+  o  11 - {foo} d9cacd156ffc add ddd (draft)
   |
   o  2 - {foo} cced9bac76e3 add ccc (draft)
   |
@@ -200,10 +200,10 @@
   0 files updated, 0 files merged, 4 files removed, 0 files unresolved
   $ hg prev
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
-  [12] add eee
+  [14] add eee
   $ hg next
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-  [13] add fff
+  [15] add fff
   $ hg next
   no children on topic "foo"
   do you want --no-topic
@@ -211,11 +211,11 @@
   $ hg next --no-topic
   switching to topic bar
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-  [14] add ggg
+  [16] add ggg
   $ hg prev
   preserving the current topic 'bar'
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
-  [13] add fff
+  [15] add fff
   $ hg prev
   no parent in topic "bar"
   (do you want --no-topic)
@@ -223,4 +223,4 @@
   $ hg prev --no-topic
   switching to topic foo
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
-  [12] add eee
+  [14] add eee
--- a/tests/test-evolve.t
+++ b/tests/test-evolve.t
@@ -327,7 +327,7 @@
 changeset plus the updating changeset are hidden from view by default::
 
   $ hg log
-  3	feature-B: another feature (child of 568a468b60fc) - test
+  4	feature-B: another feature (child of 568a468b60fc) - test
   1	feature-A: a nifty feature - test
   0	: base - test
 
@@ -344,18 +344,22 @@
 (amend of on ancestors)
 
   $ hg amend
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg log
-  4	feature-A: a nifty feature - test
-  3	feature-B: another feature (child of 568a468b60fc) - test
+  6	feature-A: a nifty feature - test
+  4	feature-B: another feature (child of 568a468b60fc) - test
   1	: a nifty feature - test
   0	: base - test
   $ hg up -q 0
   $ glog --hidden
-  o  4:ba0ec09b1bab@default(draft) a nifty feature
+  o  6:ba0ec09b1bab@default(draft) a nifty feature
   |
-  | o  3:6992c59c6b06@default(draft) another feature (child of 568a468b60fc)
+  | x  5:c296b79833d1@default(draft) temporary amend commit for 568a468b60fc
   | |
+  | | o  4:6992c59c6b06@default(draft) another feature (child of 568a468b60fc)
+  | |/
+  | | x  3:c97947cdc7a2@default(draft) temporary amend commit for 73296a82292a
+  | | |
   | | x  2:73296a82292a@default(draft) another feature (child of 568a468b60fc)
   | |/
   | x  1:568a468b60fc@default(draft) a nifty feature
@@ -363,16 +367,18 @@
   @  0:e55e0562ee93@default(public) base
   
   $ hg debugobsolete
-  73296a82292a76fb8a7061969d2489ec0d84cd5e 6992c59c6b06a1b4a92e24ff884829ae026d018b 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
-  568a468b60fc99a42d5d4ddbe181caff1eef308d ba0ec09b1babf3489b567853807f452edd46704f 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
+  73296a82292a76fb8a7061969d2489ec0d84cd5e 6992c59c6b06a1b4a92e24ff884829ae026d018b 0 (*) {'ef1': '8', 'user': 'test'} (glob)
+  c97947cdc7a2a11cf78419f5c2c3dd3944ec79e8 0 {73296a82292a76fb8a7061969d2489ec0d84cd5e} (*) {'ef1': '0', 'user': 'test'} (glob)
+  568a468b60fc99a42d5d4ddbe181caff1eef308d ba0ec09b1babf3489b567853807f452edd46704f 0 (*) {'ef1': '8', 'user': 'test'} (glob)
+  c296b79833d1d497f33144786174bf35e04e44a3 0 {568a468b60fc99a42d5d4ddbe181caff1eef308d} (*) {'ef1': '0', 'user': 'test'} (glob)
   $ hg evolve
-  move:[3] another feature (child of 568a468b60fc)
-  atop:[4] a nifty feature
+  move:[4] another feature (child of 568a468b60fc)
+  atop:[6] a nifty feature
   merging main-file-1
   working directory is now at 99833d22b0c6
   $ hg log
-  5	feature-B: another feature (child of ba0ec09b1bab) - test
-  4	feature-A: a nifty feature - test
+  7	feature-B: another feature (child of ba0ec09b1bab) - test
+  6	feature-A: a nifty feature - test
   0	: base - test
 
 Test commit -o options
@@ -383,43 +389,43 @@
   adding file-from-B
   reverting main-file-1
   $ sed -i'' -e s/Zwei/deux/ main-file-1
-  $ hg commit -m 'another feature that rox' -o 5
+  $ hg commit -m 'another feature that rox' -o 7
   created new head
   $ hg log
-  6	feature-B: another feature that rox - test
-  4	feature-A: a nifty feature - test
+  8	feature-B: another feature that rox - test
+  6	feature-A: a nifty feature - test
   0	: base - test
 
 phase change turning obsolete changeset public issue a bumped warning
 
   $ hg phase --hidden --public 99833d22b0c6
-  1 new phase-divergent changesets
+  1 new bumped changesets
 
 all solving bumped troubled
 
-  $ glog
-  @  6:47d52a103155@default(draft) another feature that rox
+  $ hg log -G
+  @  8	feature-B: another feature that rox - test
   |
-  | o  5:99833d22b0c6@default(public) another feature (child of ba0ec09b1bab)
+  | o  7	: another feature (child of ba0ec09b1bab) - test
   |/
-  o  4:ba0ec09b1bab@default(public) a nifty feature
+  o  6	feature-A: a nifty feature - test
   |
-  o  0:e55e0562ee93@default(public) base
+  o  0	: base - test
   
   $ hg evolve --any --traceback --phasedivergent
-  recreate:[6] another feature that rox
-  atop:[5] another feature (child of ba0ec09b1bab)
+  recreate:[8] another feature that rox
+  atop:[7] another feature (child of ba0ec09b1bab)
   computing new diff
   committed as 6707c5e1c49d
   working directory is now at 6707c5e1c49d
-  $ glog
-  @  7:6707c5e1c49d@default(draft) bumped update to 99833d22b0c6:
+  $ hg log -G
+  @  9	feature-B: bumped update to 99833d22b0c6: - test
   |
-  o  5:99833d22b0c6@default(public) another feature (child of ba0ec09b1bab)
+  o  7	: another feature (child of ba0ec09b1bab) - test
   |
-  o  4:ba0ec09b1bab@default(public) a nifty feature
+  o  6	feature-A: a nifty feature - test
   |
-  o  0:e55e0562ee93@default(public) base
+  o  0	: base - test
   
   $ hg diff --hidden -r 6707c5e1c49d -r 47d52a103155
   $ hg diff -r 6707c5e1c49d^ -r 6707c5e1c49d
@@ -440,22 +446,22 @@
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ sed -i'' -e s/Un/Én/ main-file-1
   $ hg commit --amend -m 'dansk!'
-  2 new orphan changesets
+  2 new unstable changesets
 
 (ninja test for the {trouble} template:
 
   $ hg log -G --template '{rev} {troubles}\n'
-  @  10
+  @  13
   |
-  | o  9 orphan
+  | o  11 orphan
   | |
-  | o  8 orphan
+  | o  10 orphan
   | |
-  | x  7
+  | x  9
   |/
-  o  5
+  o  7
   |
-  o  4
+  o  6
   |
   o  0
   
@@ -464,23 +470,23 @@
 (/ninja)
 
   $ hg evolve --all --traceback
-  move:[8] dansk 2!
-  atop:[10] dansk!
+  move:[10] dansk 2!
+  atop:[13] dansk!
   merging main-file-1
-  move:[9] dansk 3!
-  atop:[11] dansk 2!
+  move:[11] dansk 3!
+  atop:[14] dansk 2!
   merging main-file-1
   working directory is now at 68557e4f0048
   $ hg log -G
-  @  12	: dansk 3! - test
+  @  15	: dansk 3! - test
   |
-  o  11	: dansk 2! - test
+  o  14	: dansk 2! - test
   |
-  o  10	feature-B: dansk! - test
+  o  13	feature-B: dansk! - test
   |
-  o  5	: another feature (child of ba0ec09b1bab) - test
+  o  7	: another feature (child of ba0ec09b1bab) - test
   |
-  o  4	feature-A: a nifty feature - test
+  o  6	feature-A: a nifty feature - test
   |
   o  0	: base - test
   
@@ -508,7 +514,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  new changesets 702e4d0a6d86
   $ cd alpha
 
   $ cat << EOF > A
@@ -541,13 +546,13 @@
   checking manifests
   crosschecking files in changesets and manifests
   checking files
-  3 files, 3 changesets, 3 total revisions
+  3 files, 4 changesets, 4 total revisions
   $ hg --config extensions.hgext.mq= strip 'extinct()'
   abort: empty revision set
   [255]
 (do some garbare collection)
   $ hg --config extensions.hgext.mq= strip --hidden 'extinct()'  --config devel.strip-obsmarkers=no
-  saved backup bundle to $TESTTMP/alpha/.hg/strip-backup/e87767087a57-a365b072-backup.hg (glob)
+  saved backup bundle to $TESTTMP/alpha/.hg/strip-backup/e87767087a57-d7bd82e9-backup.hg (glob)
   $ hg verify
   checking changesets
   checking manifests
@@ -566,8 +571,7 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  1 new obsolescence markers
-  new changesets c6dda801837c
+  2 new obsolescence markers
   (run 'hg update' to get a working copy)
   $ hg up
   2 files updated, 0 files merged, 0 files removed, 0 files unresolved
@@ -827,7 +831,7 @@
   $ hg ci -m c
   $ hg prune .^
   1 changesets pruned
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg stab --any
   move:[15] c
   atop:[13] a
@@ -844,13 +848,13 @@
   2 changesets folded
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ glog
-  @  13:98cb758db56d@default(draft) Folding with custom commit message
+  @  16:98cb758db56d@default(draft) Folding with custom commit message
   |
-  o  10:0a2f9b959bb4@default(draft) dansk!
+  o  13:0a2f9b959bb4@default(draft) dansk!
   |
-  o  5:99833d22b0c6@default(public) another feature (child of ba0ec09b1bab)
+  o  7:99833d22b0c6@default(public) another feature (child of ba0ec09b1bab)
   |
-  o  4:ba0ec09b1bab@default(public) a nifty feature
+  o  6:ba0ec09b1bab@default(public) a nifty feature
   |
   o  0:e55e0562ee93@default(public) base
   
@@ -863,10 +867,10 @@
   2 changesets folded
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg qlog
-  14 - a00182c58888 A longer
+  17 - a00182c58888 A longer
                     commit message (draft)
-  5 - 99833d22b0c6 another feature (child of ba0ec09b1bab) (public)
-  4 - ba0ec09b1bab a nifty feature (public)
+  7 - 99833d22b0c6 another feature (child of ba0ec09b1bab) (public)
+  6 - ba0ec09b1bab a nifty feature (public)
   0 - e55e0562ee93 base (public)
 
   $ cd ..
@@ -904,17 +908,17 @@
   marked working directory as branch mybranch
   (branches are permanent and global, did you want a bookmark?)
   $ hg amend
-  1 new orphan changesets
+  1 new unstable changesets
 
   $ hg evolve
   move:[3] a3
-  atop:[4] a2
+  atop:[5] a2
   working directory is now at 7c5649f73d11
 
   $ hg log -G --template '{rev} [{branch}] {desc|firstline}\n'
-  @  5 [mybranch] a3
+  @  6 [mybranch] a3
   |
-  o  4 [mybranch] a2
+  o  5 [mybranch] a2
   |
   o  1 [default] a1
   |
@@ -926,21 +930,21 @@
   $ hg up 'desc(a1)'
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg amend -m 'a1_'
-  2 new orphan changesets
+  2 new unstable changesets
   $ hg evolve
-  move:[4] a2
-  atop:[6] a1_
+  move:[5] a2
+  atop:[7] a1_
   working directory is now at eb07e22a0e63
   $ hg evolve
-  move:[5] a3
-  atop:[7] a2
+  move:[6] a3
+  atop:[8] a2
   working directory is now at 777c26ca5e78
   $ hg log -G --template '{rev} [{branch}] {desc|firstline}\n'
-  @  8 [mybranch] a3
+  @  9 [mybranch] a3
   |
-  o  7 [mybranch] a2
+  o  8 [mybranch] a2
   |
-  o  6 [default] a1_
+  o  7 [default] a1_
   |
   o  0 [default] a0
   
@@ -950,18 +954,18 @@
   $ hg up -r "desc('a1_')"
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg ci --amend -m 'a1__'
-  2 new orphan changesets
+  2 new unstable changesets
 
   $ hg up -r "desc('a2')"
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg log -G --template '{rev} [{branch}] {desc|firstline}\n'
-  o  9 [default] a1__
+  o  10 [default] a1__
   |
-  | o  8 [mybranch] a3
+  | o  9 [mybranch] a3
   | |
-  | @  7 [mybranch] a2
+  | @  8 [mybranch] a2
   | |
-  | x  6 [default] a1_
+  | x  7 [default] a1_
   |/
   o  0 [default] a0
   
@@ -980,22 +984,22 @@
   .hg/bookmarks
   .hg/bookmarks.* (glob)
   $ hg evolve
-  move:[7] a2
-  atop:[9] a1__
+  move:[8] a2
+  atop:[10] a1__
   (leaving bookmark testbookmark)
   working directory is now at d952e93add6f
   $ ls .hg/bookmarks*
   .hg/bookmarks
   $ glog
-  @  10:d952e93add6f@mybranch(draft) a2
+  @  11:d952e93add6f@mybranch(draft) a2
   |
-  o  9:9f8b83c2e7f3@default(draft) a1__
+  o  10:9f8b83c2e7f3@default(draft) a1__
   |
-  | o  8:777c26ca5e78@mybranch(draft) a3
+  | o  9:777c26ca5e78@mybranch(draft) a3
   | |
-  | x  7:eb07e22a0e63@mybranch(draft) a2
+  | x  8:eb07e22a0e63@mybranch(draft) a2
   | |
-  | x  6:faafc6cea0ba@default(draft) a1_
+  | x  7:faafc6cea0ba@default(draft) a1_
   |/
   o  0:07c1c36d9ef0@default(draft) a0
   
@@ -1007,35 +1011,35 @@
   $ hg revert -r d952e93add6f --all
   reverting a
   $ hg log -G --template '{rev} [{branch}] {desc|firstline}\n'
-  o  10 [mybranch] a2
+  o  11 [mybranch] a2
   |
-  @  9 [default] a1__
+  @  10 [default] a1__
   |
-  | o  8 [mybranch] a3
+  | o  9 [mybranch] a3
   | |
-  | x  7 [mybranch] a2
+  | x  8 [mybranch] a2
   | |
-  | x  6 [default] a1_
+  | x  7 [default] a1_
   |/
   o  0 [default] a0
   
   $ echo "hello world" > newfile
   $ hg add newfile
-  $ hg commit -m "add new file bumped" -o 10
+  $ hg commit -m "add new file bumped" -o 11
   $ hg phase --public --hidden d952e93add6f
-  1 new phase-divergent changesets
+  1 new bumped changesets
   $ hg log -G
-  @  11	: add new file bumped - test
+  @  12	: add new file bumped - test
   |
-  | o  10	: a2 - test
+  | o  11	: a2 - test
   |/
-  o  9	testbookmark: a1__ - test
+  o  10	testbookmark: a1__ - test
   |
-  | o  8	: a3 - test
+  | o  9	: a3 - test
   | |
-  | x  7	: a2 - test
+  | x  8	: a2 - test
   | |
-  | x  6	: a1_ - test
+  | x  7	: a1_ - test
   |/
   o  0	: a0 - test
   
@@ -1044,42 +1048,30 @@
 normally the unstable changeset would be solve first
 
   $ hg log -G
-  @  11	: add new file bumped - test
+  @  12	: add new file bumped - test
   |
-  | o  10	: a2 - test
+  | o  11	: a2 - test
   |/
-  o  9	testbookmark: a1__ - test
+  o  10	testbookmark: a1__ - test
   |
-  | o  8	: a3 - test
+  | o  9	: a3 - test
   | |
-  | x  7	: a2 - test
+  | x  8	: a2 - test
   | |
-  | x  6	: a1_ - test
+  | x  7	: a1_ - test
   |/
   o  0	: a0 - test
   
   $ hg evolve -r "desc('add new file bumped')" --phasedivergent
-  recreate:[11] add new file bumped
-  atop:[10] a2
+  recreate:[12] add new file bumped
+  atop:[11] a2
   computing new diff
   committed as f15d32934071
   working directory is now at f15d32934071
   $ hg evolve --any
-  move:[8] a3
-  atop:[12] bumped update to d952e93add6f:
+  move:[9] a3
+  atop:[13] bumped update to d952e93add6f:
   working directory is now at cce26b684bfe
-  $ glog
-  @  13:cce26b684bfe@default(draft) a3
-  |
-  o  12:f15d32934071@default(draft) bumped update to d952e93add6f:
-  |
-  o  10:d952e93add6f@mybranch(public) a2
-  |
-  o  9:9f8b83c2e7f3@default(public) a1__
-  |
-  o  0:07c1c36d9ef0@default(public) a0
-  
-
 Check that we can resolve troubles in a revset with more than one commit
   $ hg up cce26b684bfe -C
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
@@ -1092,38 +1084,38 @@
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ printf "newline\nnewline\n" >> a
   $ hg log -G
-  o  15	: add gh - test
+  o  16	: add gh - test
   |
-  | o  14	: add gg - test
+  | o  15	: add gg - test
   |/
-  @  13	: a3 - test
+  @  14	: a3 - test
   |
-  o  12	: bumped update to d952e93add6f: - test
+  o  13	: bumped update to d952e93add6f: - test
   |
-  o  10	: a2 - test
+  o  11	: a2 - test
   |
-  o  9	testbookmark: a1__ - test
+  o  10	testbookmark: a1__ - test
   |
   o  0	: a0 - test
   
   $ hg amend
-  2 new orphan changesets
-  $ glog
-  @  16:edc3c9de504e@default(draft) a3
+  2 new unstable changesets
+  $ hg log -G
+  @  18	: a3 - test
   |
-  | o  15:beb41503aa3e@default(draft) add gh
+  | o  16	: add gh - test
   | |
-  | | o  14:27247fcb2df6@default(draft) add gg
+  | | o  15	: add gg - test
   | |/
-  | x  13:cce26b684bfe@default(draft) a3
+  | x  14	: a3 - test
   |/
-  o  12:f15d32934071@default(draft) bumped update to d952e93add6f:
+  o  13	: bumped update to d952e93add6f: - test
   |
-  o  10:d952e93add6f@mybranch(public) a2
+  o  11	: a2 - test
   |
-  o  9:9f8b83c2e7f3@default(public) a1__
+  o  10	testbookmark: a1__ - test
   |
-  o  0:07c1c36d9ef0@default(public) a0
+  o  0	: a0 - test
   
 
 Evolving an empty revset should do nothing
@@ -1136,25 +1128,25 @@
   (do you want to use --orphan)
   [2]
   $ hg evolve --rev "cce26b684bfe::" --orphan
-  move:[14] add gg
-  atop:[16] a3
-  move:[15] add gh
-  atop:[16] a3
+  move:[15] add gg
+  atop:[18] a3
+  move:[16] add gh
+  atop:[18] a3
   working directory is now at e02107f98737
-  $ glog
-  @  18:e02107f98737@default(draft) add gh
+  $ hg log -G
+  @  20	: add gh - test
   |
-  | o  17:24e63b319adf@default(draft) add gg
+  | o  19	: add gg - test
   |/
-  o  16:edc3c9de504e@default(draft) a3
+  o  18	: a3 - test
   |
-  o  12:f15d32934071@default(draft) bumped update to d952e93add6f:
+  o  13	: bumped update to d952e93add6f: - test
   |
-  o  10:d952e93add6f@mybranch(public) a2
+  o  11	: a2 - test
   |
-  o  9:9f8b83c2e7f3@default(public) a1__
+  o  10	testbookmark: a1__ - test
   |
-  o  0:07c1c36d9ef0@default(public) a0
+  o  0	: a0 - test
   
 Enabling commands selectively, no command enabled, next and fold and unknown
   $ cat >> $HGRCPATH <<EOF
@@ -1268,21 +1260,21 @@
   $ echo "hello" > j4
   $ hg add j4
   $ hg amend
-  2 new orphan changesets
+  2 new unstable changesets
   $ glog -r "edc3c9de504e::"
-  @  22:8dc373be86d9@default(draft) add j1
+  @  25:8dc373be86d9@default(draft) add j1
   |
-  | o  21:d7eadcf6eccd@default(draft) add j3
+  | o  23:d7eadcf6eccd@default(draft) add j3
   | |
-  | o  20:2223ea564144@default(draft) add j2
+  | o  22:2223ea564144@default(draft) add j2
   | |
-  | x  19:48490698b269@default(draft) add j1
+  | x  21:48490698b269@default(draft) add j1
   |/
-  | o  18:e02107f98737@default(draft) add gh
+  | o  20:e02107f98737@default(draft) add gh
   | |
-  o |  17:24e63b319adf@default(draft) add gg
+  o |  19:24e63b319adf@default(draft) add gg
   |/
-  o  16:edc3c9de504e@default(draft) a3
+  o  18:edc3c9de504e@default(draft) a3
   |
   ~
 
@@ -1310,19 +1302,19 @@
   new changeset is empty
   (use 'hg prune .' to remove it)
   $ glog -r "edc3c9de504e::"
-  @  23:044804d0c10d@default(draft) add j1
+  @  26:044804d0c10d@default(draft) add j1
   |
-  | o  21:d7eadcf6eccd@default(draft) add j3
+  | o  23:d7eadcf6eccd@default(draft) add j3
   | |
-  | o  20:2223ea564144@default(draft) add j2
+  | o  22:2223ea564144@default(draft) add j2
   | |
-  | x  19:48490698b269@default(draft) add j1
+  | x  21:48490698b269@default(draft) add j1
   |/
-  | o  18:e02107f98737@default(draft) add gh
+  | o  20:e02107f98737@default(draft) add gh
   | |
-  o |  17:24e63b319adf@default(draft) add gg
+  o |  19:24e63b319adf@default(draft) add gg
   |/
-  o  16:edc3c9de504e@default(draft) a3
+  o  18:edc3c9de504e@default(draft) a3
   |
   ~
 
@@ -1336,26 +1328,26 @@
   (2 other orphan in the repository, do you want --any or --rev)
   [2]
   $ hg evolve --all --any
-  move:[20] add j2
-  atop:[23] add j1
-  move:[21] add j3
-  atop:[24] add j2
+  move:[22] add j2
+  atop:[26] add j1
+  move:[23] add j3
+  atop:[27] add j2
   working directory is now at c9a20e2d74aa
   $ glog -r "edc3c9de504e::"
-  @  25:c9a20e2d74aa@default(draft) add j3
+  @  28:c9a20e2d74aa@default(draft) add j3
   |
-  o  24:b0e3066231e2@default(draft) add j2
+  o  27:b0e3066231e2@default(draft) add j2
   |
-  o  23:044804d0c10d@default(draft) add j1
+  o  26:044804d0c10d@default(draft) add j1
   |
-  | o  18:e02107f98737@default(draft) add gh
+  | o  20:e02107f98737@default(draft) add gh
   | |
-  o |  17:24e63b319adf@default(draft) add gg
+  o |  19:24e63b319adf@default(draft) add gg
   |/
-  o  16:edc3c9de504e@default(draft) a3
+  o  18:edc3c9de504e@default(draft) a3
   |
   ~
-  $ hg up 24e63b319adf
+  $ hg up 19
   0 files updated, 0 files merged, 2 files removed, 0 files unresolved
   $ mkcommit c5_
   created new head
@@ -1370,13 +1362,13 @@
   $ hg prune '044804d0c10d::'
   3 changesets pruned
   $ glog -r "edc3c9de504e::"
-  @  26:2251801b6c91@default(draft) add c5_
+  @  29:2251801b6c91@default(draft) add c5_
   |
-  | o  18:e02107f98737@default(draft) add gh
+  | o  20:e02107f98737@default(draft) add gh
   | |
-  o |  17:24e63b319adf@default(draft) add gg
+  o |  19:24e63b319adf@default(draft) add gg
   |/
-  o  16:edc3c9de504e@default(draft) a3
+  o  18:edc3c9de504e@default(draft) a3
   |
   ~
 
@@ -1389,15 +1381,15 @@
   $ mkcommit unstableifparentisfolded
   created new head
   $ glog -r "edc3c9de504e::"
-  @  27:68330ac625b8@default(draft) add unstableifparentisfolded
+  @  30:68330ac625b8@default(draft) add unstableifparentisfolded
   |
-  | o  26:2251801b6c91@default(draft) add c5_
+  | o  29:2251801b6c91@default(draft) add c5_
   | |
-  +---o  18:e02107f98737@default(draft) add gh
+  +---o  20:e02107f98737@default(draft) add gh
   | |
-  | o  17:24e63b319adf@default(draft) add gg
+  | o  19:24e63b319adf@default(draft) add gg
   |/
-  o  16:edc3c9de504e@default(draft) a3
+  o  18:edc3c9de504e@default(draft) a3
   |
   ~
 
@@ -1413,13 +1405,13 @@
   > EOF
 
   $ glog -r "edc3c9de504e::"
-  o  28:580886d07058@default(draft) add gg
+  o  31:580886d07058@default(draft) add gg
   |
-  | @  27:68330ac625b8@default(draft) add unstableifparentisfolded
+  | @  30:68330ac625b8@default(draft) add unstableifparentisfolded
   |/
-  | o  18:e02107f98737@default(draft) add gh
+  | o  20:e02107f98737@default(draft) add gh
   |/
-  o  16:edc3c9de504e@default(draft) a3
+  o  18:edc3c9de504e@default(draft) a3
   |
   ~
 
@@ -1440,28 +1432,28 @@
   $ hg commit -m "_pp"
   $ hg prune --succ "desc(_oo) + desc(_pp)" -r "desc('oo+pp')" --split
   1 changesets pruned
-  1 new orphan changesets
+  1 new unstable changesets
   $ glog -r "edc3c9de504e::"
-  @  32:7a555adf2b4a@default(draft) _pp
+  @  35:7a555adf2b4a@default(draft) _pp
   |
-  o  31:2be4d2d5bf34@default(draft) _oo
+  o  34:2be4d2d5bf34@default(draft) _oo
   |
-  | o  30:53f0c003e03e@default(draft) add uu
+  | o  33:53f0c003e03e@default(draft) add uu
   | |
-  | x  29:1bf2152f4f82@default(draft) oo+pp
+  | x  32:1bf2152f4f82@default(draft) oo+pp
   |/
-  | o  28:580886d07058@default(draft) add gg
+  | o  31:580886d07058@default(draft) add gg
   | |
-  o |  27:68330ac625b8@default(draft) add unstableifparentisfolded
+  o |  30:68330ac625b8@default(draft) add unstableifparentisfolded
   |/
-  | o  18:e02107f98737@default(draft) add gh
+  | o  20:e02107f98737@default(draft) add gh
   |/
-  o  16:edc3c9de504e@default(draft) a3
+  o  18:edc3c9de504e@default(draft) a3
   |
   ~
   $ hg evolve --rev "edc3c9de504e::"
-  move:[30] add uu
-  atop:[32] _pp
+  move:[33] add uu
+  atop:[35] _pp
   working directory is now at 43c3f5ef149f
 
 
@@ -1471,7 +1463,7 @@
   $ echo "will be amended" > newfile
   $ hg commit -m "will be amended"
   $ hg parents
-  34	: will be amended - test
+  37	: will be amended - test
 
   $ echo "will be evolved safely" >> a
   $ hg commit -m "will be evolved safely"
@@ -1481,39 +1473,16 @@
   $ hg add newlyadded
   $ hg commit -m "will cause conflict at evolve"
 
-  $ glog -r "edc3c9de504e::"
-  @  36:02e943732647@default(draft) will cause conflict at evolve
-  |
-  o  35:f8e30e9317aa@default(draft) will be evolved safely
-  |
-  o  34:36030b147271@default(draft) will be amended
-  |
-  o  33:43c3f5ef149f@default(draft) add uu
-  |
-  o  32:7a555adf2b4a@default(draft) _pp
-  |
-  o  31:2be4d2d5bf34@default(draft) _oo
-  |
-  | o  28:580886d07058@default(draft) add gg
-  | |
-  o |  27:68330ac625b8@default(draft) add unstableifparentisfolded
-  |/
-  | o  18:e02107f98737@default(draft) add gh
-  |/
-  o  16:edc3c9de504e@default(draft) a3
-  |
-  ~
-
   $ hg update -q 36030b147271
   $ echo "amended" > newfile
   $ hg amend -m "amended"
-  2 new orphan changesets
+  2 new unstable changesets
 
   $ hg evolve --rev "36030b147271::"
-  move:[35] will be evolved safely
-  atop:[37] amended
-  move:[36] will cause conflict at evolve
-  atop:[38] will be evolved safely
+  move:[38] will be evolved safely
+  atop:[41] amended
+  move:[39] will cause conflict at evolve
+  atop:[42] will be evolved safely
   merging newfile
   warning: conflicts while merging newfile! (edit, then use 'hg resolve --mark')
   evolve failed!
@@ -1522,17 +1491,19 @@
   [255]
 
   $ glog -r "43c3f5ef149f::" --hidden
-  @  38:c904da5245b0@default(draft) will be evolved safely
+  @  42:c904da5245b0@default(draft) will be evolved safely
   |
-  o  37:34ae045ec400@default(draft) amended
+  o  41:34ae045ec400@default(draft) amended
   |
-  | o  36:02e943732647@default(draft) will cause conflict at evolve
+  | x  40:e88bee38ffc2@default(draft) temporary amend commit for 36030b147271
   | |
-  | x  35:f8e30e9317aa@default(draft) will be evolved safely
-  | |
-  | x  34:36030b147271@default(draft) will be amended
+  | | o  39:02e943732647@default(draft) will cause conflict at evolve
+  | | |
+  | | x  38:f8e30e9317aa@default(draft) will be evolved safely
+  | |/
+  | x  37:36030b147271@default(draft) will be amended
   |/
-  o  33:43c3f5ef149f@default(draft) add uu
+  o  36:43c3f5ef149f@default(draft) add uu
   |
   ~
 
--- a/tests/test-exchange-obsmarkers-case-A1.t
+++ b/tests/test-exchange-obsmarkers-case-A1.t
@@ -113,7 +113,6 @@
   adding file changes
   added 1 changesets with 1 changes to 1 files
   1 new obsolescence markers
-  new changesets f5bc6836db60
   (run 'hg update' to get a working copy)
   ## post pull state
   # obstore: main
@@ -155,7 +154,6 @@
   adding file changes
   added 1 changesets with 1 changes to 1 files
   1 new obsolescence markers
-  new changesets f5bc6836db60
   (run 'hg update' to get a working copy)
   ## post pull state
   # obstore: main
@@ -269,7 +267,6 @@
   adding file changes
   added 2 changesets with 2 changes to 2 files
   1 new obsolescence markers
-  new changesets f5bc6836db60:f6fbb35d8ac9
   (run 'hg update' to get a working copy)
   ## post pull state
   # obstore: main
@@ -311,7 +308,6 @@
   adding file changes
   added 2 changesets with 2 changes to 2 files
   1 new obsolescence markers
-  new changesets f5bc6836db60:f6fbb35d8ac9
   (run 'hg update' to get a working copy)
   ## post pull state
   # obstore: main
--- a/tests/test-exchange-obsmarkers-case-A2.t
+++ b/tests/test-exchange-obsmarkers-case-A2.t
@@ -124,7 +124,6 @@
   adding file changes
   added 1 changesets with 1 changes to 1 files
   1 new obsolescence markers
-  new changesets f5bc6836db60
   (run 'hg update' to get a working copy)
   ## post pull state
   # obstore: main
--- a/tests/test-exchange-obsmarkers-case-A3.t
+++ b/tests/test-exchange-obsmarkers-case-A3.t
@@ -145,7 +145,6 @@
   adding file changes
   added 1 changesets with 1 changes to 1 files
   1 new obsolescence markers
-  new changesets e5ea8f9c7314
   (run 'hg update' to get a working copy)
   ## post pull state
   # obstore: main
@@ -264,9 +263,8 @@
   added 1 changesets with 1 changes to 1 files (+1 heads)
   1 new obsolescence markers
   obsoleted 1 changesets
-  new changesets e5ea8f9c7314
   (run 'hg heads' to see heads, 'hg merge' to merge)
-  1 new orphan changesets
+  1 new unstable changesets
   ## post pull state
   # obstore: main
   28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
--- a/tests/test-exchange-obsmarkers-case-A4.t
+++ b/tests/test-exchange-obsmarkers-case-A4.t
@@ -133,7 +133,6 @@
   adding file changes
   added 2 changesets with 2 changes to 2 files
   1 new obsolescence markers
-  new changesets 28b51eb45704:06055a7959d4
   (run 'hg update' to get a working copy)
   ## post pull state
   # obstore: main
--- a/tests/test-exchange-obsmarkers-case-A5.t
+++ b/tests/test-exchange-obsmarkers-case-A5.t
@@ -141,7 +141,6 @@
   adding file changes
   added 1 changesets with 1 changes to 1 files
   1 new obsolescence markers
-  new changesets f6298a8ac3a4
   (run 'hg update' to get a working copy)
   ## post pull state
   # obstore: main
--- a/tests/test-exchange-obsmarkers-case-B3.t
+++ b/tests/test-exchange-obsmarkers-case-B3.t
@@ -120,7 +120,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  new changesets f5bc6836db60
   (run 'hg update' to get a working copy)
   ## post pull state
   # obstore: main
--- a/tests/test-exchange-obsmarkers-case-B5.t
+++ b/tests/test-exchange-obsmarkers-case-B5.t
@@ -157,7 +157,6 @@
   adding file changes
   added 3 changesets with 3 changes to 3 files
   1 new obsolescence markers
-  new changesets 28b51eb45704:1d0f3cd25300
   (run 'hg update' to get a working copy)
   ## post pull state
   # obstore: main
--- a/tests/test-exchange-obsmarkers-case-C1.t
+++ b/tests/test-exchange-obsmarkers-case-C1.t
@@ -58,7 +58,7 @@
   $ mkcommit A
   $ mkcommit B
   $ hg prune -qd '0 0' '.~1'
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg prune -qd '0 0' .
   $ hg log -G --hidden
   x  f6fbb35d8ac9 (draft): B
--- a/tests/test-exchange-obsmarkers-case-C2.t
+++ b/tests/test-exchange-obsmarkers-case-C2.t
@@ -131,7 +131,6 @@
   adding file changes
   added 1 changesets with 1 changes to 1 files
   2 new obsolescence markers
-  new changesets e5ea8f9c7314
   (run 'hg update' to get a working copy)
   ## post pull state
   # obstore: main
@@ -179,7 +178,6 @@
   adding file changes
   added 1 changesets with 1 changes to 1 files
   2 new obsolescence markers
-  new changesets e5ea8f9c7314
   (run 'hg update' to get a working copy)
   ## post pull state
   # obstore: main
--- a/tests/test-exchange-obsmarkers-case-D1.t
+++ b/tests/test-exchange-obsmarkers-case-D1.t
@@ -127,7 +127,6 @@
   adding file changes
   added 1 changesets with 1 changes to 1 files
   2 new obsolescence markers
-  new changesets e5ea8f9c7314
   (run 'hg update' to get a working copy)
   ## post pull state
   # obstore: main
@@ -175,7 +174,6 @@
   adding file changes
   added 1 changesets with 1 changes to 1 files
   2 new obsolescence markers
-  new changesets e5ea8f9c7314
   (run 'hg update' to get a working copy)
   ## post pull state
   # obstore: main
--- a/tests/test-exchange-obsmarkers-case-D4.t
+++ b/tests/test-exchange-obsmarkers-case-D4.t
@@ -140,7 +140,6 @@
   adding file changes
   added 1 changesets with 1 changes to 1 files
   2 new obsolescence markers
-  new changesets e5ea8f9c7314
   (run 'hg update' to get a working copy)
   ## post pull state
   # obstore: main
--- a/tests/test-inhibit.t
+++ b/tests/test-inhibit.t
@@ -100,7 +100,7 @@
   $ echo babar > cJ
   $ hg commit --amend
   $ hg log -G
-  @  8:55c73a90e4b4 add cJ
+  @  9:55c73a90e4b4 add cJ
   |
   o  6:cf5c4f4554ce add cH
   |
@@ -112,7 +112,7 @@
   
   $ hg debugobsinhibit --hidden 18214586bf78
   $ hg log -G
-  @  8:55c73a90e4b4 add cJ
+  @  9:55c73a90e4b4 add cJ
   |
   | o  7:18214586bf78 add cJ
   |/
@@ -128,7 +128,7 @@
 and no divergence
 
   $ hg summary
-  parent: 8:55c73a90e4b4 tip
+  parent: 9:55c73a90e4b4 tip
    add cJ
   branch: default
   commit: (clean)
@@ -146,7 +146,7 @@
   $ wc -m .hg/store/obsinhibit | sed -e 's/^[ \t]*//'
   20 .hg/store/obsinhibit
   $ hg log -G
-  @  8:55c73a90e4b4 add cJ
+  @  9:55c73a90e4b4 add cJ
   |
   | o  7:18214586bf78 add cJ
   |/
@@ -159,8 +159,8 @@
   o  0:54ccbc537fc2 add cA
   
   $ hg phase --public 7
-  1 new phase-divergent changesets
-  $ hg strip 8
+  1 new bumped changesets
+  $ hg strip 9
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   working directory now at cf5c4f4554ce
   1 changesets pruned
@@ -179,7 +179,7 @@
   $ wc -m .hg/store/obsinhibit | sed -e 's/^[ \t]*//'
   20 .hg/store/obsinhibit
   $ hg log -G
-  o  8:55c73a90e4b4 add cJ
+  o  9:55c73a90e4b4 add cJ
   |
   | o  7:18214586bf78 add cJ
   |/
@@ -196,7 +196,7 @@
   $ hg update 2 --hidden
   2 files updated, 0 files merged, 3 files removed, 0 files unresolved
   $ hg log -G
-  o  8:55c73a90e4b4 add cJ
+  o  9:55c73a90e4b4 add cJ
   |
   | o  7:18214586bf78 add cJ
   |/
@@ -213,10 +213,10 @@
   o  0:54ccbc537fc2 add cA
   
 
-  $ hg update 8
+  $ hg update 9
   4 files updated, 0 files merged, 2 files removed, 0 files unresolved
   $ hg log -G
-  @  8:55c73a90e4b4 add cJ
+  @  9:55c73a90e4b4 add cJ
   |
   | o  7:18214586bf78 add cJ
   |/
@@ -235,7 +235,7 @@
   $ hg strip --hidden 1::
   3 changesets pruned
   $ hg log -G
-  @  8:55c73a90e4b4 add cJ
+  @  9:55c73a90e4b4 add cJ
   |
   | o  7:18214586bf78 add cJ
   |/
@@ -251,7 +251,7 @@
 Bookmark should inhibit all related unstable commits
   $ hg bookmark -r 2 book1  --hidden
   $ hg log -G
-  @  8:55c73a90e4b4 add cJ
+  @  9:55c73a90e4b4 add cJ
   |
   | o  7:18214586bf78 add cJ
   |/
@@ -276,7 +276,7 @@
   bookmark 'book1' deleted
   1 changesets pruned
   $ hg log -G
-  @  8:55c73a90e4b4 add cJ
+  @  9:55c73a90e4b4 add cJ
   |
   | o  7:18214586bf78 add cJ
   |/
@@ -294,7 +294,7 @@
   bookmark 'book2' deleted
   1 changesets pruned
   $ hg log -G
-  @  8:55c73a90e4b4 add cJ
+  @  9:55c73a90e4b4 add cJ
   |
   | o  7:18214586bf78 add cJ
   |/
@@ -397,14 +397,14 @@
   $ mkcommit cK
   created new head
   $ mkcommit cL
-  $ hg update -C 8
+  $ hg update -C 9
   4 files updated, 0 files merged, 2 files removed, 0 files unresolved
   $ hg log -G
-  o  10:53a94305e133 add cL
+  o  11:53a94305e133 add cL
   |
-  o  9:ad78ff7d621f add cK
+  o  10:ad78ff7d621f add cK
   |
-  | @  8:55c73a90e4b4 add cJ
+  | @  9:55c73a90e4b4 add cJ
   | |
   | | o  7:18214586bf78 add cJ
   | |/
@@ -416,10 +416,10 @@
   |/
   o  0:54ccbc537fc2 add cA
   
-  $ hg strip --hidden 9:
+  $ hg strip --hidden 10:
   2 changesets pruned
   $ hg log -G
-  @  8:55c73a90e4b4 add cJ
+  @  9:55c73a90e4b4 add cJ
   |
   | o  7:18214586bf78 add cJ
   |/
@@ -431,21 +431,21 @@
   |
   o  0:54ccbc537fc2 add cA
   
-  $ hg rebase -s 9 -d 3 
-  abort: hidden revision '9'!
+  $ hg rebase -s 10 -d 3 
+  abort: hidden revision '3'!
   (use --hidden to access hidden revisions; pruned)
   [255]
   $ hg rebase -r ad78ff7d621f -r 53a94305e133 -d  2db36d8066ff --config experimental.rebaseskipobsolete=0
+  Warning: accessing hidden changesets 2db36d8066ff for write operation
   Warning: accessing hidden changesets ad78ff7d621f,53a94305e133 for write operation
-  Warning: accessing hidden changesets 2db36d8066ff for write operation
-  rebasing 9:ad78ff7d621f "add cK"
-  rebasing 10:53a94305e133 "add cL" (tip)
+  rebasing 10:ad78ff7d621f "add cK"
+  rebasing 11:53a94305e133 "add cL"
   $ hg log -G
-  o  12:2f7b7704d714 add cL
+  o  13:2f7b7704d714 add cL
   |
-  o  11:fe1634cbe235 add cK
+  o  12:fe1634cbe235 add cK
   |
-  | @  8:55c73a90e4b4 add cJ
+  | @  9:55c73a90e4b4 add cJ
   | |
   | | o  7:18214586bf78 add cJ
   | |/
@@ -476,7 +476,7 @@
   $ hg strip --hidden 1::
   5 changesets pruned
   $ hg log -G
-  @  8:55c73a90e4b4 add cJ
+  @  9:55c73a90e4b4 add cJ
   |
   | o  7:18214586bf78 add cJ
   |/
@@ -494,13 +494,13 @@
   $ mkcommit cM
   $ mkcommit cN
   $ hg log -G
-  @  15:a438c045eb37 add cN
+  @  16:a438c045eb37 add cN
   |
-  o  14:2d66e189f5b5 add cM
+  o  15:2d66e189f5b5 add cM
   |
-  o  13:d66ccb8c5871 add cL
+  o  14:d66ccb8c5871 add cL
   |
-  | o  8:55c73a90e4b4 add cJ
+  | o  9:55c73a90e4b4 add cJ
   | |
   o |  7:18214586bf78 add cJ
   |/
@@ -512,20 +512,20 @@
   |
   o  0:54ccbc537fc2 add cA
   
-  $ hg up 14
+  $ hg up 15
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ echo "mmm" >> cM
   $ hg amend
   $ hg log -G
-  @  16:210589181b14 add cM
+  @  18:210589181b14 add cM
   |
-  | o  15:a438c045eb37 add cN
+  | o  16:a438c045eb37 add cN
   | |
-  | o  14:2d66e189f5b5 add cM
+  | o  15:2d66e189f5b5 add cM
   |/
-  o  13:d66ccb8c5871 add cL
+  o  14:d66ccb8c5871 add cL
   |
-  | o  8:55c73a90e4b4 add cJ
+  | o  9:55c73a90e4b4 add cJ
   | |
   o |  7:18214586bf78 add cJ
   |/
@@ -539,18 +539,18 @@
   
 Check that rebasing a commit twice makes the commit visible again
 
-  $ hg rebase -d 16 -r 15 --keep
-  rebasing 15:a438c045eb37 "add cN"
-  $ hg log -r 13:: -G
-  o  17:104eed5354c7 add cN
+  $ hg rebase -d 18 -r 16 --keep
+  rebasing 16:a438c045eb37 "add cN"
+  $ hg log -r 14:: -G
+  o  19:104eed5354c7 add cN
   |
-  @  16:210589181b14 add cM
+  @  18:210589181b14 add cM
   |
-  | o  15:a438c045eb37 add cN
+  | o  16:a438c045eb37 add cN
   | |
-  | o  14:2d66e189f5b5 add cM
+  | o  15:2d66e189f5b5 add cM
   |/
-  o  13:d66ccb8c5871 add cL
+  o  14:d66ccb8c5871 add cL
   |
   ~
   $ hg strip -r 210589181b14
@@ -561,18 +561,18 @@
 Using a hash prefix solely made of digits should work
   $ hg update 210589181
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-  $ hg rebase -d 16 -r 15 --keep
-  rebasing 15:a438c045eb37 "add cN"
-  $ hg log -r 13:: -G
-  o  17:104eed5354c7 add cN
+  $ hg rebase -d 18 -r 16 --keep
+  rebasing 16:a438c045eb37 "add cN"
+  $ hg log -r 14:: -G
+  o  19:104eed5354c7 add cN
   |
-  @  16:210589181b14 add cM
+  @  18:210589181b14 add cM
   |
-  | o  15:a438c045eb37 add cN
+  | o  16:a438c045eb37 add cN
   | |
-  | o  14:2d66e189f5b5 add cM
+  | o  15:2d66e189f5b5 add cM
   |/
-  o  13:d66ccb8c5871 add cL
+  o  14:d66ccb8c5871 add cL
   |
   ~
 
@@ -583,25 +583,25 @@
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   working directory now at d66ccb8c5871
   2 changesets pruned
-  $ hg log -r 13:: -G -T '{rev}:{node|short} {desc|firstline} {bookmarks}\n'
-  o  15:a438c045eb37 add cN
+  $ hg log -r 14:: -G -T '{rev}:{node|short} {desc|firstline} {bookmarks}\n'
+  o  16:a438c045eb37 add cN
   |
-  o  14:2d66e189f5b5 add cM
+  o  15:2d66e189f5b5 add cM
   |
-  @  13:d66ccb8c5871 add cL foo
+  @  14:d66ccb8c5871 add cL foo
   |
   ~
 
 Check that --hidden used with inhibit does not hide every obsolete commit
 We show the log before and after a log -G --hidden, they should be the same
   $ hg log -G
-  o  15:a438c045eb37 add cN
+  o  16:a438c045eb37 add cN
   |
-  o  14:2d66e189f5b5 add cM
+  o  15:2d66e189f5b5 add cM
   |
-  @  13:d66ccb8c5871 add cL
+  @  14:d66ccb8c5871 add cL
   |
-  | o  8:55c73a90e4b4 add cJ
+  | o  9:55c73a90e4b4 add cJ
   | |
   o |  7:18214586bf78 add cJ
   |/
@@ -614,25 +614,29 @@
   o  0:54ccbc537fc2 add cA
   
   $ hg log -G --hidden
-  x  17:104eed5354c7 add cN
+  x  19:104eed5354c7 add cN
   |
-  x  16:210589181b14 add cM
+  x  18:210589181b14 add cM
   |
-  | o  15:a438c045eb37 add cN
+  | x  17:b3c3274523f9 temporary amend commit for 2d66e189f5b5
   | |
-  | o  14:2d66e189f5b5 add cM
+  | | o  16:a438c045eb37 add cN
+  | |/
+  | o  15:2d66e189f5b5 add cM
   |/
-  @  13:d66ccb8c5871 add cL
+  @  14:d66ccb8c5871 add cL
   |
-  | x  12:2f7b7704d714 add cL
+  | x  13:2f7b7704d714 add cL
   | |
-  | x  11:fe1634cbe235 add cK
+  | x  12:fe1634cbe235 add cK
   | |
-  | | x  10:53a94305e133 add cL
+  | | x  11:53a94305e133 add cL
+  | | |
+  | | x  10:ad78ff7d621f add cK
   | | |
-  | | x  9:ad78ff7d621f add cK
-  | | |
-  | | | o  8:55c73a90e4b4 add cJ
+  | | | o  9:55c73a90e4b4 add cJ
+  | | | |
+  +-------x  8:e84f73d9ad36 temporary amend commit for 18214586bf78
   | | | |
   o-----+  7:18214586bf78 add cJ
    / / /
@@ -652,13 +656,13 @@
   
 
   $ hg log -G
-  o  15:a438c045eb37 add cN
+  o  16:a438c045eb37 add cN
   |
-  o  14:2d66e189f5b5 add cM
+  o  15:2d66e189f5b5 add cM
   |
-  @  13:d66ccb8c5871 add cL
+  @  14:d66ccb8c5871 add cL
   |
-  | o  8:55c73a90e4b4 add cJ
+  | o  9:55c73a90e4b4 add cJ
   | |
   o |  7:18214586bf78 add cJ
   |/
@@ -685,7 +689,6 @@
   added 2 changesets with 1 changes to 2 files (+1 heads)
   3 new obsolescence markers
   obsoleted 1 changesets
-  new changesets 210589181b14
   (run 'hg heads .' to see heads, 'hg merge' to merge)
 
  Only allow direct access and check that evolve works like before
@@ -697,7 +700,7 @@
   > evolution=createmarkers
   > EOF
 
-  $ hg up 14
+  $ hg up 15
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   working directory parent is obsolete! (2d66e189f5b5)
   $ cat >> $HGRCPATH <<EOF
@@ -707,13 +710,13 @@
   $ echo "CM" > cM
   $ hg amend
   $ hg log -G
-  @  18:721c3c279519 add cM
+  @  21:721c3c279519 add cM
   |
-  | o  15:a438c045eb37 add cN
+  | o  16:a438c045eb37 add cN
   | |
-  | x  14:2d66e189f5b5 add cM
+  | x  15:2d66e189f5b5 add cM
   |/
-  o  13:d66ccb8c5871 add cL
+  o  14:d66ccb8c5871 add cL
   |
   o  7:18214586bf78 add cJ
   |
@@ -740,11 +743,11 @@
 
   $ hg up a438c045eb37
   2 files updated, 0 files merged, 0 files removed, 0 files unresolved
-  $ hg rebase -r 14:: -d 18 --config experimental.rebaseskipobsolete=True
-  note: not rebasing 14:2d66e189f5b5 "add cM", already in destination as 18:721c3c279519 "add cM" (tip)
-  rebasing 15:a438c045eb37 "add cN"
+  $ hg rebase -r 15:: -d 21 --config experimental.rebaseskipobsolete=True
+  note: not rebasing 15:2d66e189f5b5 "add cM", already in destination as 21:721c3c279519 "add cM"
+  rebasing 16:a438c045eb37 "add cN"
   $ hg up -q 2d66e189f5b5 # To inhibit it as the rest of test depends on it
-  $ hg up -q 18
+  $ hg up -q 21
 
 Directaccess should load after some extensions precised in the conf
 With no extension specified:
@@ -814,112 +817,87 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files (+1 heads)
-  1 new obsolescence markers
+  2 new obsolescence markers
 
 Create a stack (obsolete with successor in dest) -> (not obsolete) and rebase
 it. We expect to not see the stack at the end of the rebase.
-  $ hg log -G  -r "003a4735afde::"
-  x  20:003a4735afde add pk
+  $ hg log -G  -r "25::"
+  @  25:71eb4f100663 add pk
   |
   ~
-  $ hg log -G
-  @  21:71eb4f100663 add pk
-  |
-  | o  19:46cb6daad392 add cN
-  |/
-  o  18:721c3c279519 add cM
-  |
-  | o  16:210589181b14 add cM
-  |/
-  | o  14:2d66e189f5b5 add cM
-  |/
-  o  13:d66ccb8c5871 add cL
-  |
-  | o  8:55c73a90e4b4 add cJ
-  | |
-  o |  7:18214586bf78 add cJ
-  |/
-  o  6:cf5c4f4554ce add cH
-  |
-  o  5:5419eb264a33 add cG
-  |
-  o  4:98065434e5c6 add cE
-  |
-  o  0:54ccbc537fc2 add cA
-  
-  $ hg up -C 46cb6daad392
+  $ hg up -C 22
   1 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ mkcommit Dk
-  $ hg prune 46cb6daad392 -s 71eb4f100663
+  $ hg prune 22 -s 25
   1 changesets pruned
-  $ hg rebase -s 46cb6daad392 -d 71eb4f100663 --config experimental.rebaseskipobsolete=True
-  note: not rebasing 19:46cb6daad392 "add cN", already in destination as 21:71eb4f100663 "add pk"
-  rebasing 22:7ad60e760c7b "add Dk" (tip)
-  $ hg log -G  -r "71eb4f100663::"
-  @  23:1192fa9fbc68 add Dk
+  $ hg rebase -s 22 -d 25 --config experimental.rebaseskipobsolete=True
+  note: not rebasing 22:46cb6daad392 "add cN", already in destination as 25:71eb4f100663 "add pk"
+  rebasing 26:7ad60e760c7b "add Dk" (tip)
+  $ hg log -G  -r "25::"
+  @  27:1192fa9fbc68 add Dk
   |
-  o  21:71eb4f100663 add pk
+  o  25:71eb4f100663 add pk
   |
   ~
 
 Create a stack (obsolete with succ in dest) -> (not obsolete) -> (not obsolete).
 Rebase the first two revs of the stack onto dest, we expect to see one new
 revision on the destination and everything visible.
-  $ hg up 71eb4f100663
+  $ hg up 25
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ mkcommit Dl
   created new head
   $ mkcommit Dp
   $ mkcommit Do
-  $ hg log -G -r "71eb4f100663::"
-  @  26:b517facce1ef add Do
+  $ hg log -G -r "25::"
+  @  30:b517facce1ef add Do
   |
-  o  25:c5a47ab27c2e add Dp
+  o  29:c5a47ab27c2e add Dp
   |
-  o  24:8c1c2edbaf1b add Dl
+  o  28:8c1c2edbaf1b add Dl
   |
-  | o  23:1192fa9fbc68 add Dk
+  | o  27:1192fa9fbc68 add Dk
   |/
-  o  21:71eb4f100663 add pk
+  o  25:71eb4f100663 add pk
   |
   ~
-  $ hg prune 8c1c2edbaf1b -s 1192fa9fbc68
+  $ hg prune 28 -s 27
   1 changesets pruned
-  $ hg up 71eb4f100663
+  $ hg up 25
   0 files updated, 0 files merged, 3 files removed, 0 files unresolved
-  $ hg rebase -r "8c1c2edbaf1b + c5a47ab27c2e" --keep -d 1192fa9fbc68 --config experimental.rebaseskipobsolete=True
-  note: not rebasing 24:8c1c2edbaf1b "add Dl", already in destination as 23:1192fa9fbc68 "add Dk"
-  rebasing 25:c5a47ab27c2e "add Dp"
-  $ hg log -G  -r "71eb4f100663::"
-  o  27:7d8affb1f604 add Dp
+  $ hg rebase -r "28 + 29" --keep -d 27 --config experimental.rebaseskipobsolete=True
+  note: not rebasing 28:8c1c2edbaf1b "add Dl", already in destination as 27:1192fa9fbc68 "add Dk"
+  rebasing 29:c5a47ab27c2e "add Dp"
+  $ hg log -G  -r "25::"
+  o  31:7d8affb1f604 add Dp
   |
-  | o  26:b517facce1ef add Do
+  | o  30:b517facce1ef add Do
   | |
-  | o  25:c5a47ab27c2e add Dp
+  | o  29:c5a47ab27c2e add Dp
   | |
-  | o  24:8c1c2edbaf1b add Dl
+  | o  28:8c1c2edbaf1b add Dl
   | |
-  o |  23:1192fa9fbc68 add Dk
+  o |  27:1192fa9fbc68 add Dk
   |/
-  @  21:71eb4f100663 add pk
+  @  25:71eb4f100663 add pk
   |
   ~
 
 Rebase the same stack in full on the destination, we expect it to disappear
 and only see the top revision added to destination. We don\'t expect 29 to be
 skipped as we used --keep before.
-  $ hg rebase -s 8c1c2edbaf1b -d 1192fa9fbc68 --config experimental.rebaseskipobsolete=True
-  note: not rebasing 24:8c1c2edbaf1b "add Dl", already in destination as 23:1192fa9fbc68 "add Dk"
-  rebasing 25:c5a47ab27c2e "add Dp"
-  rebasing 26:b517facce1ef "add Do"
-  $ hg log -G  -r "71eb4f100663::"
-  o  28:1d43fff9e26f add Do
+  $ hg rebase -s 28 -d 27 --config experimental.rebaseskipobsolete=True
+  note: not rebasing 28:8c1c2edbaf1b "add Dl", already in destination as 27:1192fa9fbc68 "add Dk"
+  rebasing 29:c5a47ab27c2e "add Dp"
+  rebasing 30:b517facce1ef "add Do"
+  $ hg log -G  -r "25::"
+  o  32:1d43fff9e26f add Do
   |
-  o  27:7d8affb1f604 add Dp
+  o  31:7d8affb1f604 add Dp
   |
-  o  23:1192fa9fbc68 add Dk
+  o  27:1192fa9fbc68 add Dk
   |
-  @  21:71eb4f100663 add pk
+  @  25:71eb4f100663 add pk
   |
   ~
 
--- a/tests/test-metaedit.t
+++ b/tests/test-metaedit.t
@@ -80,11 +80,11 @@
 ----
 
   $ hg log -G
-  @  7	: F - test
+  @  8	: F - test
   |
-  o  6	: E - test
+  o  7	: E - test
   |
-  | o  5	: D2 - test
+  | o  6	: D2 - test
   |/
   o  3	: C - test
   |
@@ -124,10 +124,13 @@
   $ hg metaedit --user foobar
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg log --template '{rev}: {author}\n' -r 'desc(F):' --hidden
+  5: test
+  6: test
   7: test
-  8: foobar
+  8: test
+  9: foobar
   $ hg log --template '{rev}: {author}\n' -r .
-  8: foobar
+  9: foobar
 
 TODO: support this
   $ hg metaedit '.^::.'
@@ -136,11 +139,11 @@
 
   $ HGEDITOR=cat hg metaedit '.^::.' --fold
   HG: This is a fold of 2 changesets.
-  HG: Commit message of changeset 6.
+  HG: Commit message of changeset 7.
   
   E
   
-  HG: Commit message of changeset 8.
+  HG: Commit message of changeset 9.
   
   F
   
@@ -157,7 +160,7 @@
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
 
   $ glog -r .
-  @  9:a08d35fd7d9d@default(draft) E
+  @  10:a08d35fd7d9d@default(draft) E
   |
   ~
 
@@ -179,7 +182,7 @@
   nothing changed
 
   $ glog -r '.^::.'
-  @  9:a08d35fd7d9d@default(draft) E
+  @  10:a08d35fd7d9d@default(draft) E
   |
   o  3:3260958f1169@default(draft) C
   |
@@ -193,20 +196,20 @@
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg log -r '.^::.' --template '{rev}: {desc|firstline}\n'
   3: C
-  10: E
+  11: E
 
   $ hg up .^
   0 files updated, 0 files merged, 2 files removed, 0 files unresolved
   $ hg metaedit --user foobar2 tip
   $ hg log --template '{rev}: {author}\n' -r "user(foobar):" --hidden
-  8: foobar
-  9: test
+  9: foobar
   10: test
-  11: foobar2
+  11: test
+  12: foobar2
   $ hg diff -r "10" -r "11" --hidden
 
 'fold' one commit
   $ HGUSER=foobar3 hg metaedit "desc(D2)" --fold -U --config
   1 changesets folded
   $ hg log -r "tip" --template '{rev}: {author}\n'
-  12: foobar3
+  13: foobar3
--- a/tests/test-obsconvert.t
+++ b/tests/test-obsconvert.t
@@ -16,33 +16,49 @@
 Test conversion between obsolete marker formats
   $ hg debugobsolete
   e63c23eaa88ae77967edcf4ea194d31167c478b0 b81ac6b9d2a55f9a7a6b90a006b1aab0568d6d34 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  a5b276878fa564da042b4b9efef3713ceea20350 0 {e63c23eaa88ae77967edcf4ea194d31167c478b0} (*) {'ef1': '*', 'user': 'test'} (glob)
   b81ac6b9d2a55f9a7a6b90a006b1aab0568d6d34 384fc811182687231962e486f23ea8c5bab7a2d3 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  2291082406feb57d0f83b9b0a6777b6074f3fde6 0 {b81ac6b9d2a55f9a7a6b90a006b1aab0568d6d34} (*) {'ef1': '*', 'user': 'test'} (glob)
   384fc811182687231962e486f23ea8c5bab7a2d3 949d379b3c3bf051906bc3528c049cb536e2ec86 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  1616bdbe82d3fd1fb7c4e068aee277835672ffdc 0 {384fc811182687231962e486f23ea8c5bab7a2d3} (*) {'ef1': '*', 'user': 'test'} (glob)
   949d379b3c3bf051906bc3528c049cb536e2ec86 f2e4c45b2a4a58ccf7ef6825b8fa5685873cd2f7 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  8668d55aac650158bb510be6d47d21e3db9e5c75 0 {949d379b3c3bf051906bc3528c049cb536e2ec86} (*) {'ef1': '*', 'user': 'test'} (glob)
   $ hg debugobsconvert --new-format 0
   Old store is version 1, will rewrite in version 0
   Done!
   $ hg debugobsolete
   e63c23eaa88ae77967edcf4ea194d31167c478b0 b81ac6b9d2a55f9a7a6b90a006b1aab0568d6d34 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  a5b276878fa564da042b4b9efef3713ceea20350 0 {e63c23eaa88ae77967edcf4ea194d31167c478b0} (*) {'ef1': '*', 'user': 'test'} (glob)
   b81ac6b9d2a55f9a7a6b90a006b1aab0568d6d34 384fc811182687231962e486f23ea8c5bab7a2d3 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  2291082406feb57d0f83b9b0a6777b6074f3fde6 0 {b81ac6b9d2a55f9a7a6b90a006b1aab0568d6d34} (*) {'ef1': '*', 'user': 'test'} (glob)
   384fc811182687231962e486f23ea8c5bab7a2d3 949d379b3c3bf051906bc3528c049cb536e2ec86 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  1616bdbe82d3fd1fb7c4e068aee277835672ffdc 0 {384fc811182687231962e486f23ea8c5bab7a2d3} (*) {'ef1': '*', 'user': 'test'} (glob)
   949d379b3c3bf051906bc3528c049cb536e2ec86 f2e4c45b2a4a58ccf7ef6825b8fa5685873cd2f7 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  8668d55aac650158bb510be6d47d21e3db9e5c75 0 {949d379b3c3bf051906bc3528c049cb536e2ec86} (*) {'ef1': '*', 'user': 'test'} (glob)
   $ hg debugobsconvert --new-format 0
   abort: New format is the same as the old format, not upgrading!
   [255]
   $ hg debugobsolete
   e63c23eaa88ae77967edcf4ea194d31167c478b0 b81ac6b9d2a55f9a7a6b90a006b1aab0568d6d34 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  a5b276878fa564da042b4b9efef3713ceea20350 0 {e63c23eaa88ae77967edcf4ea194d31167c478b0} (*) {'ef1': '*', 'user': 'test'} (glob)
   b81ac6b9d2a55f9a7a6b90a006b1aab0568d6d34 384fc811182687231962e486f23ea8c5bab7a2d3 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  2291082406feb57d0f83b9b0a6777b6074f3fde6 0 {b81ac6b9d2a55f9a7a6b90a006b1aab0568d6d34} (*) {'ef1': '*', 'user': 'test'} (glob)
   384fc811182687231962e486f23ea8c5bab7a2d3 949d379b3c3bf051906bc3528c049cb536e2ec86 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  1616bdbe82d3fd1fb7c4e068aee277835672ffdc 0 {384fc811182687231962e486f23ea8c5bab7a2d3} (*) {'ef1': '*', 'user': 'test'} (glob)
   949d379b3c3bf051906bc3528c049cb536e2ec86 f2e4c45b2a4a58ccf7ef6825b8fa5685873cd2f7 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  8668d55aac650158bb510be6d47d21e3db9e5c75 0 {949d379b3c3bf051906bc3528c049cb536e2ec86} (*) {'ef1': '*', 'user': 'test'} (glob)
   $ hg debugobsconvert --new-format 1
   Old store is version 0, will rewrite in version 1
   Done!
   $ hg debugobsolete
   e63c23eaa88ae77967edcf4ea194d31167c478b0 b81ac6b9d2a55f9a7a6b90a006b1aab0568d6d34 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  a5b276878fa564da042b4b9efef3713ceea20350 0 {e63c23eaa88ae77967edcf4ea194d31167c478b0} (*) {'ef1': '*', 'user': 'test'} (glob)
   b81ac6b9d2a55f9a7a6b90a006b1aab0568d6d34 384fc811182687231962e486f23ea8c5bab7a2d3 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  2291082406feb57d0f83b9b0a6777b6074f3fde6 0 {b81ac6b9d2a55f9a7a6b90a006b1aab0568d6d34} (*) {'ef1': '*', 'user': 'test'} (glob)
   384fc811182687231962e486f23ea8c5bab7a2d3 949d379b3c3bf051906bc3528c049cb536e2ec86 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  1616bdbe82d3fd1fb7c4e068aee277835672ffdc 0 {384fc811182687231962e486f23ea8c5bab7a2d3} (*) {'ef1': '*', 'user': 'test'} (glob)
   949d379b3c3bf051906bc3528c049cb536e2ec86 f2e4c45b2a4a58ccf7ef6825b8fa5685873cd2f7 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  8668d55aac650158bb510be6d47d21e3db9e5c75 0 {949d379b3c3bf051906bc3528c049cb536e2ec86} (*) {'ef1': '*', 'user': 'test'} (glob)
 
 Test that the default is some reasonably modern format (first downgrade)
   $ hg debugobsconvert --new-format 0
@@ -53,6 +69,10 @@
   Done!
   $ hg debugobsolete
   e63c23eaa88ae77967edcf4ea194d31167c478b0 b81ac6b9d2a55f9a7a6b90a006b1aab0568d6d34 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  a5b276878fa564da042b4b9efef3713ceea20350 0 {e63c23eaa88ae77967edcf4ea194d31167c478b0} (*) {'ef1': '*', 'user': 'test'} (glob)
   b81ac6b9d2a55f9a7a6b90a006b1aab0568d6d34 384fc811182687231962e486f23ea8c5bab7a2d3 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  2291082406feb57d0f83b9b0a6777b6074f3fde6 0 {b81ac6b9d2a55f9a7a6b90a006b1aab0568d6d34} (*) {'ef1': '*', 'user': 'test'} (glob)
   384fc811182687231962e486f23ea8c5bab7a2d3 949d379b3c3bf051906bc3528c049cb536e2ec86 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  1616bdbe82d3fd1fb7c4e068aee277835672ffdc 0 {384fc811182687231962e486f23ea8c5bab7a2d3} (*) {'ef1': '*', 'user': 'test'} (glob)
   949d379b3c3bf051906bc3528c049cb536e2ec86 f2e4c45b2a4a58ccf7ef6825b8fa5685873cd2f7 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  8668d55aac650158bb510be6d47d21e3db9e5c75 0 {949d379b3c3bf051906bc3528c049cb536e2ec86} (*) {'ef1': '*', 'user': 'test'} (glob)
--- a/tests/test-obsolete-push.t
+++ b/tests/test-obsolete-push.t
@@ -26,7 +26,7 @@
   $ hg phase --secret --force .
   $ hg prune 0 1
   2 changesets pruned
-  1 new orphan changesets
+  1 new unstable changesets
   $ glog --hidden
   @  2:244232c2222a@default(secret) C
   |
@@ -56,7 +56,6 @@
   adding file changes
   added 1 changesets with 1 changes to 1 files
   2 new obsolescence markers
-  new changesets 1994f17a630e
   updating to branch default
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ cd strict-publish-client
--- a/tests/test-obsolete.t
+++ b/tests/test-obsolete.t
@@ -128,13 +128,13 @@
   parent:      1:7c3bad9141dc
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
-  obsolete:    rewritten as 4:725c380fe99b
+  obsolete:    rewritten as 725c380fe99b
   summary:     add obsol_c
   
   working directory parent is obsolete! (0d3f46688ccc)
   (use 'hg evolve' to update to its successor: 725c380fe99b)
   $ mkcommit d # 5 (on 3)
-  1 new orphan changesets
+  1 new unstable changesets
   $ qlog -r 'obsolete()'
   3
   - 0d3f46688ccc
@@ -175,7 +175,7 @@
   $ hg push ../other-new
   pushing to ../other-new
   searching for changes
-  abort: push includes orphan changeset: a7a6f2b5d8a5!
+  abort: push includes unstable changeset: a7a6f2b5d8a5!
   (use 'hg evolve' to get a stable history or --force to ignore warnings)
   [255]
   $ hg push -f ../other-new
@@ -210,7 +210,7 @@
   working directory parent is obsolete! (0d3f46688ccc)
   $ mkcommit obsol_d # 6
   created new head
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg debugobsolete `getid 5` `getid 6`
   obsoleted 1 changesets
   $ qlog
@@ -230,7 +230,7 @@
   $ hg push ../other-new
   pushing to ../other-new
   searching for changes
-  abort: push includes orphan changeset: 95de7fc6918d!
+  abort: push includes unstable changeset: 95de7fc6918d!
   (use 'hg evolve' to get a stable history or --force to ignore warnings)
   [255]
   $ hg push ../other-new -f # use f because there is unstability
@@ -269,7 +269,7 @@
   working directory parent is obsolete! (0d3f46688ccc)
   $ mkcommit "obsol_d'" # 7
   created new head
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg debugobsolete `getid 6` `getid 7`
   obsoleted 1 changesets
   $ hg pull -R ../other-new .
@@ -281,7 +281,6 @@
   added 1 changesets with 1 changes to [12] files \(\+1 heads\) (re)
   1 new obsolescence markers
   obsoleted 1 changesets
-  new changesets 909a0fb57e5d
   (run 'hg heads' to see heads, 'hg merge' to merge)
   $ qlog -R ../other-new
   6
@@ -360,7 +359,7 @@
   working directory parent is obsolete! (0d3f46688ccc)
   $ mkcommit "obsol_d''"
   created new head
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg debugobsolete `getid 7` `getid 8`
   obsoleted 1 changesets
   $ cd ../other-new
@@ -374,7 +373,6 @@
   added 1 changesets with 1 changes to [12] files \(\+1 heads\) (re)
   1 new obsolescence markers
   obsoleted 1 changesets
-  new changesets 159dfc9fa5d3
   (run 'hg heads' to see heads, 'hg merge' to merge)
 
   $ hg up -q 7 # to check rollback update behavior
@@ -399,7 +397,7 @@
   commit: 1 deleted, 2 unknown (clean)
   update: 2 new changesets, 2 branch heads (merge)
   phases: 4 draft
-  orphan: 1 changesets
+  unstable: 1 changesets
   $ qlog
   6
   - 909a0fb57e5d
@@ -522,8 +520,8 @@
 #excluded 'whole rebase set is extinct and ignored.' message not in core
   $ hg rebase -b '3' -d 4 --traceback --config experimental.rebaseskipobsolete=0
   rebasing 3:0d3f46688ccc "add obsol_c"
-  rebasing 8:159dfc9fa5d3 "add obsol_d''"
-  2 new content-divergent changesets
+  rebasing 8:159dfc9fa5d3 "add obsol_d''" (tip)
+  2 new divergent changesets
   $ hg --hidden log -q -r 'successors(3)'
   4:725c380fe99b
   10:2033b4e49474
@@ -574,7 +572,7 @@
 
   $ cd local
   $ hg phase --hidden --public 11
-  1 new phase-divergent changesets
+  1 new bumped changesets
   $ hg log -G --template='{rev} - ({phase}) {node|short} {desc}\n'
   @  12 - (draft) 6db5e282cb91 add obsol_d'''
   |
@@ -594,13 +592,13 @@
   parent:      10:2033b4e49474
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
-  instability: phase-divergent
+  trouble:     bumped
   summary:     add obsol_d'''
   
   $ hg push ../other-new/
   pushing to ../other-new/
   searching for changes
-  abort: push includes phase-divergent changeset: 6db5e282cb91!
+  abort: push includes bumped changeset: 6db5e282cb91!
   (use 'hg evolve' to get a stable history or --force to ignore warnings)
   [255]
 
@@ -613,7 +611,7 @@
   $ echo 42 >> f
   $ hg commit --amend --traceback --quiet
   $ hg log -G
-  @  changeset:   14:705ab2a6b72e
+  @  changeset:   15:705ab2a6b72e
   |  tag:         tip
   |  parent:      10:2033b4e49474
   |  user:        test
@@ -624,7 +622,7 @@
   |/   parent:      10:2033b4e49474
   |    user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    instability: phase-divergent
+  |    trouble:     bumped
   |    summary:     add obsol_d'''
   |
   | o  changeset:   11:9468a5f5d8b2
@@ -675,28 +673,28 @@
   1 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ mkcommit "obsolet_conflicting_d"
   $ hg summary
-  parent: 15:50f11e5e3a63 tip
+  parent: 1[46]:50f11e5e3a63 tip (re)
    add obsolet_conflicting_d
   branch: default
   commit: (clean)
   update: (2|9|11) new changesets, (3|9|10) branch heads \(merge\) (re)
   phases: 3 draft
-  phase-divergent: 1 changesets
+  bumped: 1 changesets
   $ hg debugobsolete `getid a7a6f2b5d8a5` `getid 50f11e5e3a63`
   $ hg log -r 'contentdivergent()'
   changeset:   12:6db5e282cb91
   parent:      10:2033b4e49474
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
-  instability: phase-divergent, content-divergent
+  trouble:     bumped, divergent
   summary:     add obsol_d'''
   
-  changeset:   15:50f11e5e3a63
+  changeset:   16:50f11e5e3a63
   tag:         tip
   parent:      11:9468a5f5d8b2
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
-  instability: content-divergent
+  trouble:     divergent
   summary:     add obsolet_conflicting_d
   
 
@@ -724,46 +722,52 @@
   (4538525df7e2 has diverged, use 'hg evolve --list --contentdivergent' to resolve the issue)
   $ hg export 9468a5f5d8b2 | hg import -
   applying patch from stdin
-  1 new orphan changesets
+  1 new unstable changesets
 
 
 Relevant marker computation
 ==============================
 
   $ hg log -G --hidden
-  @  changeset:   16:a5f7a21fe7bc
+  @  changeset:   17:a5f7a21fe7bc
   |  tag:         tip
   |  parent:      2:4538525df7e2
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
-  |  instability: orphan
+  |  trouble:     unstable
   |  summary:     add obsol_d''
   |
-  | o  changeset:   15:50f11e5e3a63
+  | o  changeset:   16:50f11e5e3a63
   | |  parent:      11:9468a5f5d8b2
   | |  user:        test
   | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  instability: content-divergent
+  | |  trouble:     divergent
   | |  summary:     add obsolet_conflicting_d
   | |
-  | | o  changeset:   14:705ab2a6b72e
+  | | o  changeset:   15:705ab2a6b72e
   | | |  parent:      10:2033b4e49474
   | | |  user:        test
   | | |  date:        Thu Jan 01 00:00:00 1970 +0000
   | | |  summary:     add f
   | | |
+  | | | x  changeset:   14:33d458d86621
+  | | | |  user:        test
+  | | | |  date:        Thu Jan 01 00:00:00 1970 +0000
+  | | | |  obsolete:    pruned
+  | | | |  summary:     temporary amend commit for 0b1b6dd009c0
+  | | | |
   | | | x  changeset:   13:0b1b6dd009c0
   | | |/   parent:      10:2033b4e49474
   | | |    user:        test
   | | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | | |    obsolete:    amended using amend as 14:705ab2a6b72e
+  | | |    obsolete:    amended as 705ab2a6b72e
   | | |    summary:     add f
   | | |
   | | | o  changeset:   12:6db5e282cb91
   | | |/   parent:      10:2033b4e49474
   | | |    user:        test
   | | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | | |    instability: phase-divergent, content-divergent
+  | | |    trouble:     bumped, divergent
   | | |    summary:     add obsol_d'''
   | | |
   | o |  changeset:   11:9468a5f5d8b2
@@ -788,29 +792,29 @@
   | | |  parent:      3:0d3f46688ccc
   | | |  user:        test
   | | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | | |  obsolete:    rebased using rebase as 11:9468a5f5d8b2
+  | | |  obsolete:    rebased as 9468a5f5d8b2
   | | |  summary:     add obsol_d''
   | | |
   | | | x  changeset:   7:909a0fb57e5d
   | | |/   parent:      3:0d3f46688ccc
   | | |    user:        test
   | | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | | |    obsolete:    rewritten as 8:159dfc9fa5d3
+  | | |    obsolete:    rewritten as 159dfc9fa5d3
   | | |    summary:     add obsol_d'
   | | |
   | | | x  changeset:   6:95de7fc6918d
   | | |/   parent:      3:0d3f46688ccc
   | | |    user:        test
   | | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | | |    obsolete:    rewritten as 7:909a0fb57e5d
+  | | |    obsolete:    rewritten as 909a0fb57e5d
   | | |    summary:     add obsol_d
   | | |
   | | | x  changeset:   5:a7a6f2b5d8a5
   | | |/   parent:      3:0d3f46688ccc
   | | |    user:        test
   | | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | | |    obsolete:    rewritten as 6:95de7fc6918d
-  | | |    obsolete:    rewritten as 15:50f11e5e3a63
+  | | |    obsolete:    rewritten as 95de7fc6918d
+  | | |    obsolete:    rewritten as 50f11e5e3a63
   | | |    summary:     add d
   | | |
   | o |  changeset:   4:725c380fe99b
@@ -823,14 +827,14 @@
   | |/   parent:      1:7c3bad9141dc
   | |    user:        test
   | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | |    obsolete:    rewritten as 4:725c380fe99b
-  | |    obsolete:    rebased using rebase as 10:2033b4e49474
+  | |    obsolete:    rewritten as 725c380fe99b
+  | |    obsolete:    rebased as 2033b4e49474
   | |    summary:     add obsol_c
   | |
   x |  changeset:   2:4538525df7e2
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    rewritten as 3:0d3f46688ccc
+  |    obsolete:    rewritten as 0d3f46688ccc
   |    summary:     add c
   |
   o  changeset:   1:7c3bad9141dc
@@ -852,7 +856,8 @@
 simple rewrite with a prune attached to it
 
   $ hg debugobsolete --rev 15
-  a7a6f2b5d8a54b81bc7aa2fba2934ad6d700a79e 50f11e5e3a63806e678c734e525502f522d37e38 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
+  0b1b6dd009c037985363e2290a0b579819f659db 705ab2a6b72e2cd86edb799ebe15f2695f86143e 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  33d458d86621f3186c40bfccd77652f4a122743e 0 {0b1b6dd009c037985363e2290a0b579819f659db} (*) {'ef1': '*', 'user': 'test'} (glob)
 
 Transitive rewrite
 
--- a/tests/test-prev-next.t
+++ b/tests/test-prev-next.t
@@ -169,7 +169,7 @@
 some aspiring children
 
   $ hg amend -m 'added b (2)'
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg next
   no children
   (1 unstable changesets to be evolved here, do you want --evolve?)
@@ -209,7 +209,7 @@
 next with ambiguity in aspiring children
 
   $ hg am -m 'added b (3)'
-  2 new orphan changesets
+  2 new unstable changesets
   $ hg next
   no children
   (2 unstable changesets to be evolved here, do you want --evolve?)
@@ -251,7 +251,7 @@
   $ sleep 1
   $ hg next --evolve
   waiting for lock on working directory of $TESTTMP/repo held by process '*' on host '*' (glob)
-  1 new orphan changesets
+  1 new unstable changesets
   got lock after [4-6] seconds (re)
   move:[2] two
   atop:[3] one
--- a/tests/test-prune.t
+++ b/tests/test-prune.t
@@ -63,7 +63,7 @@
 
   $ hg prune 1
   1 changesets pruned
-  2 new orphan changesets
+  2 new unstable changesets
   $ hg book -i BABAR
   $ hg debugobsolete
   9d206ffc875e1bc304590549be293be36821e66c 0 {47d2a3944de8b013de3be9578e8e344ea2e6c097} (Sat Dec 15 00:00:00 1979 +0000) {'ef1': '*', 'user': 'blah'} (glob)
--- a/tests/test-push-checkheads-partial-C1.t
+++ b/tests/test-push-checkheads-partial-C1.t
@@ -51,7 +51,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  new changesets d73caddc5533
   (run 'hg update' to get a working copy)
   $ hg up 0
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
--- a/tests/test-push-checkheads-partial-C2.t
+++ b/tests/test-push-checkheads-partial-C2.t
@@ -53,7 +53,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  new changesets d73caddc5533
   (run 'hg update' to get a working copy)
   $ hg up 0
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
--- a/tests/test-push-checkheads-partial-C3.t
+++ b/tests/test-push-checkheads-partial-C3.t
@@ -53,7 +53,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  new changesets d73caddc5533
   (run 'hg update' to get a working copy)
   $ hg up 0
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
--- a/tests/test-push-checkheads-partial-C4.t
+++ b/tests/test-push-checkheads-partial-C4.t
@@ -53,7 +53,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  new changesets d73caddc5533
   (run 'hg update' to get a working copy)
   $ hg up 0
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
--- a/tests/test-push-checkheads-pruned-B2.t
+++ b/tests/test-push-checkheads-pruned-B2.t
@@ -53,7 +53,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  new changesets d73caddc5533
   (run 'hg update' to get a working copy)
   $ hg up 0
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
--- a/tests/test-push-checkheads-pruned-B3.t
+++ b/tests/test-push-checkheads-pruned-B3.t
@@ -53,7 +53,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  new changesets d73caddc5533
   (run 'hg update' to get a working copy)
   $ hg up 0
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
--- a/tests/test-push-checkheads-pruned-B4.t
+++ b/tests/test-push-checkheads-pruned-B4.t
@@ -54,7 +54,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  new changesets d73caddc5533
   (run 'hg update' to get a working copy)
   $ hg up 0
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
--- a/tests/test-push-checkheads-pruned-B5.t
+++ b/tests/test-push-checkheads-pruned-B5.t
@@ -57,7 +57,6 @@
   adding manifests
   adding file changes
   added 2 changesets with 2 changes to 2 files
-  new changesets d73caddc5533:821fb21d0dd2
   (run 'hg update' to get a working copy)
   $ hg up 0
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
--- a/tests/test-push-checkheads-pruned-B8.t
+++ b/tests/test-push-checkheads-pruned-B8.t
@@ -55,7 +55,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  new changesets d73caddc5533
   (run 'hg update' to get a working copy)
   $ hg up 0
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
--- a/tests/test-push-checkheads-superceed-A2.t
+++ b/tests/test-push-checkheads-superceed-A2.t
@@ -52,7 +52,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  new changesets d73caddc5533
   (run 'hg update' to get a working copy)
   $ hg up 0
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
--- a/tests/test-push-checkheads-superceed-A3.t
+++ b/tests/test-push-checkheads-superceed-A3.t
@@ -55,7 +55,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  new changesets d73caddc5533
   (run 'hg update' to get a working copy)
   $ hg up 0
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
--- a/tests/test-push-checkheads-superceed-A6.t
+++ b/tests/test-push-checkheads-superceed-A6.t
@@ -59,7 +59,6 @@
   adding manifests
   adding file changes
   added 2 changesets with 2 changes to 2 files (+1 heads)
-  new changesets d73caddc5533:0f88766e02d6
   (run 'hg heads' to see heads, 'hg merge' to merge)
   $ hg up 0
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
--- a/tests/test-push-checkheads-superceed-A7.t
+++ b/tests/test-push-checkheads-superceed-A7.t
@@ -59,7 +59,6 @@
   adding manifests
   adding file changes
   added 2 changesets with 2 changes to 2 files (+1 heads)
-  new changesets d73caddc5533:0f88766e02d6
   (run 'hg heads' to see heads, 'hg merge' to merge)
   $ hg up 'desc(C0)'
   1 files updated, 0 files merged, 1 files removed, 0 files unresolved
--- a/tests/test-push-checkheads-unpushed-D2.t
+++ b/tests/test-push-checkheads-unpushed-D2.t
@@ -57,7 +57,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  new changesets d73caddc5533
   (run 'hg update' to get a working copy)
   $ hg up 0
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
--- a/tests/test-push-checkheads-unpushed-D3.t
+++ b/tests/test-push-checkheads-unpushed-D3.t
@@ -56,7 +56,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  new changesets d73caddc5533
   (run 'hg update' to get a working copy)
   $ hg up 0
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
--- a/tests/test-push-checkheads-unpushed-D4.t
+++ b/tests/test-push-checkheads-unpushed-D4.t
@@ -73,7 +73,6 @@
   adding manifests
   adding file changes
   added 2 changesets with 2 changes to 2 files (+1 heads)
-  new changesets d73caddc5533:0f88766e02d6
   (run 'hg heads' to see heads, 'hg merge' to merge)
   $ hg up 0
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
--- a/tests/test-push-checkheads-unpushed-D5.t
+++ b/tests/test-push-checkheads-unpushed-D5.t
@@ -62,7 +62,6 @@
   adding manifests
   adding file changes
   added 2 changesets with 2 changes to 2 files (+1 heads)
-  new changesets d73caddc5533:0f88766e02d6
   (run 'hg heads' to see heads, 'hg merge' to merge)
   $ hg up 'desc(C0)'
   1 files updated, 0 files merged, 1 files removed, 0 files unresolved
--- a/tests/test-sharing.t
+++ b/tests/test-sharing.t
@@ -46,7 +46,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  new changesets 0dc9c9f6ab91
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 
 Let's commit a preliminary change and push it to ``test-repo`` for
@@ -70,8 +69,10 @@
 
 Figure SG02
   $ hg shortlog --hidden -G
-  @  2:60ffde5765c5  draft  fix bug 37
+  @  3:60ffde5765c5  draft  fix bug 37
   |
+  | x  2:2a039763c0f4  draft  temporary amend commit for f6490818a721
+  | |
   | x  1:f6490818a721  draft  prelim change
   |/
   o  0:0dc9c9f6ab91  public  create new project
@@ -86,9 +87,8 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files (+1 heads)
-  1 new obsolescence markers
+  2 new obsolescence markers
   obsoleted 1 changesets
-  new changesets 60ffde5765c5
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   updated to "60ffde5765c5: fix bug 37"
   1 other heads for branch "default"
@@ -108,8 +108,10 @@
 
 Figure SG04 (dev-repo)
   $ hg shortlog --hidden -G
-  @  3:de6151c48e1c  draft  fix bug 37
+  @  4:de6151c48e1c  draft  fix bug 37
   |
+  | x  3:ad19d3570adb  draft  temporary amend commit for 60ffde5765c5
+  | |
   | x  2:60ffde5765c5  draft  fix bug 37
   |/
   | x  1:f6490818a721  draft  prelim change
@@ -123,10 +125,12 @@
   updated to "de6151c48e1c: fix bug 37"
   1 other heads for branch "default"
   $ hg shortlog --hidden -G
-  @  3:de6151c48e1c  draft  fix bug 37
+  @  4:de6151c48e1c  draft  fix bug 37
   |
-  | x  2:60ffde5765c5  draft  fix bug 37
+  | x  3:60ffde5765c5  draft  fix bug 37
   |/
+  | x  2:2a039763c0f4  draft  temporary amend commit for f6490818a721
+  | |
   | x  1:f6490818a721  draft  prelim change
   |/
   o  0:0dc9c9f6ab91  public  create new project
@@ -139,7 +143,7 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  2 new obsolescence markers
+  4 new obsolescence markers
 
 Now that the fix is public, we cannot amend it any more.
   $ hg amend -m 'fix bug 37'
@@ -155,7 +159,7 @@
   
 Oops, still have draft changesets in dev-repo: push the phase change there.
   $ hg -R ../dev-repo shortlog -r 'draft()'
-  3:de6151c48e1c  draft  fix bug 37
+  4:de6151c48e1c  draft  fix bug 37
   $ hg push ../dev-repo
   pushing to ../dev-repo
   searching for changes
@@ -208,7 +212,7 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files (+1 heads)
-  1 new obsolescence markers
+  2 new obsolescence markers
   obsoleted 1 changesets
   updating bookmark bug15
   $ hg -R ../review bookmarks
@@ -253,7 +257,7 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files (+1 heads)
-  1 new obsolescence markers
+  2 new obsolescence markers
   obsoleted 1 changesets
   updating bookmark featureX
 
@@ -268,7 +272,7 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  2 new obsolescence markers
+  4 new obsolescence markers
   $ hg -R ../public bookmarks
   no bookmarks set
   $ hg push ../review
@@ -279,7 +283,7 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files (+1 heads)
-  1 new obsolescence markers
+  2 new obsolescence markers
   obsoleted 1 changesets
   updating bookmark featureX
   $ hg -R ../review bookmarks
@@ -329,15 +333,17 @@
 her change, so now she can publish it.
   $ cd ../alice
   $ hg --hidden shortlog -G -r 1::
-  @  3:cbdfbd5a5db2  draft  fix bug 15 (v2)
+  @  4:cbdfbd5a5db2  draft  fix bug 15 (v2)
   |
+  | x  3:55dd95168a35  draft  temporary amend commit for f91e97234c2b
+  | |
   | x  2:f91e97234c2b  draft  fix bug 15 (v1)
   |/
   o  1:de6151c48e1c  public  fix bug 37
   |
   ~
   $ hg outgoing -q ../public
-  3:cbdfbd5a5db2
+  4:cbdfbd5a5db2
   $ hg push ../public
   pushing to ../public
   searching for changes
@@ -352,21 +358,22 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files (+1 heads)
-  2 new obsolescence markers
-  new changesets 540ba8f317e6
+  4 new obsolescence markers
   (run 'hg heads' to see heads, 'hg merge' to merge)
   $ hg log -G -q -r 'head()'
-  o  4:540ba8f317e6
+  o  5:540ba8f317e6
   |
   ~
-  @  3:cbdfbd5a5db2
+  @  4:cbdfbd5a5db2
   |
   ~
   $ hg --hidden shortlog -G -r 1::
-  o  4:540ba8f317e6  public  implement feature X (v3)
+  o  5:540ba8f317e6  public  implement feature X (v3)
   |
-  | @  3:cbdfbd5a5db2  draft  fix bug 15 (v2)
+  | @  4:cbdfbd5a5db2  draft  fix bug 15 (v2)
   |/
+  | x  3:55dd95168a35  draft  temporary amend commit for f91e97234c2b
+  | |
   | x  2:f91e97234c2b  draft  fix bug 15 (v1)
   |/
   o  1:de6151c48e1c  public  fix bug 37
@@ -376,7 +383,7 @@
 Alice rebases her draft changeset on top of Bob's public changeset and
 publishes the result.
   $ hg rebase -d 5
-  rebasing 3:cbdfbd5a5db2 "fix bug 15 (v2)" (bug15)
+  rebasing 4:cbdfbd5a5db2 "fix bug 15 (v2)" (bug15)
   $ hg push ../public
   pushing to ../public
   searching for changes
@@ -384,7 +391,7 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  2 new obsolescence markers
+  3 new obsolescence markers
   $ hg push ../review
   pushing to ../review
   searching for changes
@@ -457,7 +464,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  new changesets 2fe6c4bd32d0
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ echo 'better fix (alice)' >> file1
   $ hg amend -u alice -m 'fix bug 24 (v2 by alice)'
@@ -468,8 +474,10 @@
   $ echo 'better fix (bob)' >> file1
   $ hg amend -u bob -m 'fix bug 24 (v2 by bob)'
   $ hg --hidden shortlog -G -r 3::
-  @  5:a360947f6faf  draft  fix bug 24 (v2 by bob)
+  @  6:a360947f6faf  draft  fix bug 24 (v2 by bob)
   |
+  | x  5:3466c7f5a149  draft  temporary amend commit for 2fe6c4bd32d0
+  | |
   | x  4:2fe6c4bd32d0  draft  fix bug 24 (v1)
   |/
   o  3:a06ec1bf97bd  public  fix bug 15 (v2)
@@ -484,30 +492,31 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files (+1 heads)
-  1 new obsolescence markers
-  new changesets e3f99ce9d9cd
+  2 new obsolescence markers
   (run 'hg heads' to see heads, 'hg merge' to merge)
-  2 new content-divergent changesets
+  2 new divergent changesets
 
 Figure SG09: multiple heads! divergence! oh my!
   $ hg --hidden shortlog -G -r 3::
-  o  6:e3f99ce9d9cd  draft  fix bug 24 (v2 by alice)
+  o  7:e3f99ce9d9cd  draft  fix bug 24 (v2 by alice)
   |
-  | @  5:a360947f6faf  draft  fix bug 24 (v2 by bob)
+  | @  6:a360947f6faf  draft  fix bug 24 (v2 by bob)
   |/
+  | x  5:3466c7f5a149  draft  temporary amend commit for 2fe6c4bd32d0
+  | |
   | x  4:2fe6c4bd32d0  draft  fix bug 24 (v1)
   |/
   o  3:a06ec1bf97bd  public  fix bug 15 (v2)
   |
   ~
   $ hg --hidden shortlog -r 'successors(2fe6)'
-  5:a360947f6faf  draft  fix bug 24 (v2 by bob)
-  6:e3f99ce9d9cd  draft  fix bug 24 (v2 by alice)
+  6:a360947f6faf  draft  fix bug 24 (v2 by bob)
+  7:e3f99ce9d9cd  draft  fix bug 24 (v2 by alice)
 
 Use evolve to fix the divergence.
   $ HGMERGE=internal:other hg evolve --contentdivergent
-  merge:[5] fix bug 24 (v2 by bob)
-  with: [6] fix bug 24 (v2 by alice)
+  merge:[6] fix bug 24 (v2 by bob)
+  with: [7] fix bug 24 (v2 by alice)
   base: [4] fix bug 24 (v1)
   0 files updated, 1 files merged, 0 files removed, 0 files unresolved
   working directory is now at 5ad6037c046c
@@ -515,20 +524,24 @@
 
 Figure SG10: Bob's repository after fixing divergence.
   $ hg --hidden shortlog -G -r 3::
-  @  7:5ad6037c046c  draft  fix bug 24 (v2 by bob)
+  @  9:5ad6037c046c  draft  fix bug 24 (v2 by bob)
   |
-  | x  6:e3f99ce9d9cd  draft  fix bug 24 (v2 by alice)
+  | x  8:bcfc9a755ac3  draft  temporary amend commit for a360947f6faf
+  | |
+  +---x  7:e3f99ce9d9cd  draft  fix bug 24 (v2 by alice)
+  | |
+  | x  6:a360947f6faf  draft  fix bug 24 (v2 by bob)
   |/
-  | x  5:a360947f6faf  draft  fix bug 24 (v2 by bob)
-  |/
+  | x  5:3466c7f5a149  draft  temporary amend commit for 2fe6c4bd32d0
+  | |
   | x  4:2fe6c4bd32d0  draft  fix bug 24 (v1)
   |/
   o  3:a06ec1bf97bd  public  fix bug 15 (v2)
   |
   ~
-  $ hg --hidden shortlog -r 'precursors(5ad6037c046c)'
-  5:a360947f6faf  draft  fix bug 24 (v2 by bob)
-  6:e3f99ce9d9cd  draft  fix bug 24 (v2 by alice)
+  $ hg --hidden shortlog -r 'precursors(9)'
+  6:a360947f6faf  draft  fix bug 24 (v2 by bob)
+  7:e3f99ce9d9cd  draft  fix bug 24 (v2 by alice)
   $ cat file1
   Do stuff.
   pretty good fix
--- a/tests/test-split.t
+++ b/tests/test-split.t
@@ -39,7 +39,8 @@
   $ echo "change to a" >> _a
   $ hg amend
   $ hg debugobsolete
-  1334a80b33c3f9873edab728fbbcf500eab61d2e d2fe56e71366c2c5376c89960c281395062c0619 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
+  1334a80b33c3f9873edab728fbbcf500eab61d2e d2fe56e71366c2c5376c89960c281395062c0619 0 (*) {'ef1': '8', 'user': 'test'} (glob)
+  06be89dfe2ae447383f30a2984933352757b6fb4 0 {1334a80b33c3f9873edab728fbbcf500eab61d2e} (*) {'ef1': '0', 'user': 'test'} (glob)
 
 To create commits with the number of split
   $ echo 0 > num
@@ -91,16 +92,17 @@
   no more change to split
 
   $ hg debugobsolete
-  1334a80b33c3f9873edab728fbbcf500eab61d2e d2fe56e71366c2c5376c89960c281395062c0619 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
+  1334a80b33c3f9873edab728fbbcf500eab61d2e d2fe56e71366c2c5376c89960c281395062c0619 0 (*) {'ef1': '8', 'user': 'test'} (glob)
+  06be89dfe2ae447383f30a2984933352757b6fb4 0 {1334a80b33c3f9873edab728fbbcf500eab61d2e} (*) {'ef1': '0', 'user': 'test'} (glob)
   d2fe56e71366c2c5376c89960c281395062c0619 2d8abdb827cdf71ca477ef6985d7ceb257c53c1b 033b3f5ae73db67c10de938fb6f26b949aaef172 0 (*) {'ef1': '13', 'user': 'test'} (glob)
   $ hg log -G
-  @  changeset:   6:033b3f5ae73d
+  @  changeset:   7:033b3f5ae73d
   |  tag:         tip
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
   |  summary:     split2
   |
-  o  changeset:   5:2d8abdb827cd
+  o  changeset:   6:2d8abdb827cd
   |  parent:      2:52149352b372
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
@@ -146,15 +148,15 @@
 Split a revision specified with -r
   $ echo "change to b" >> _b
   $ hg amend -m "_cprim"
-  2 new orphan changesets
+  2 new unstable changesets
   $ hg evolve --all
-  move:[5] split1
-  atop:[7] _cprim
-  move:[6] split2
-  atop:[8] split1
+  move:[6] split1
+  atop:[9] _cprim
+  move:[7] split2
+  atop:[10] split1
   working directory is now at * (glob)
   $ hg log -r "desc(_cprim)" -v -p
-  changeset:   7:b434287e665c
+  changeset:   9:b434287e665c
   parent:      1:37445b16603b
   user:        other-test-user
   date:        Thu Jan 01 00:00:00 1970 +0000
@@ -208,36 +210,38 @@
 remaining changes
 
   $ hg debugobsolete
-  1334a80b33c3f9873edab728fbbcf500eab61d2e d2fe56e71366c2c5376c89960c281395062c0619 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
+  1334a80b33c3f9873edab728fbbcf500eab61d2e d2fe56e71366c2c5376c89960c281395062c0619 0 (*) {'ef1': '8', 'user': 'test'} (glob)
+  06be89dfe2ae447383f30a2984933352757b6fb4 0 {1334a80b33c3f9873edab728fbbcf500eab61d2e} (*) {'ef1': '0', 'user': 'test'} (glob)
   d2fe56e71366c2c5376c89960c281395062c0619 2d8abdb827cdf71ca477ef6985d7ceb257c53c1b 033b3f5ae73db67c10de938fb6f26b949aaef172 0 (*) {'ef1': '13', 'user': 'test'} (glob)
-  52149352b372d39b19127d5bd2d488b1b63f9f85 b434287e665ce757ee5463a965cb3d119ca9e893 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '9', 'operation': 'amend', 'user': 'test'}
+  52149352b372d39b19127d5bd2d488b1b63f9f85 b434287e665ce757ee5463a965cb3d119ca9e893 0 (*) {'ef1': '9', 'user': 'test'} (glob)
+  7a4fc25a48a5797bb069563854455aecf738d8f2 0 {52149352b372d39b19127d5bd2d488b1b63f9f85} (*) {'ef1': '0', 'user': 'test'} (glob)
   2d8abdb827cdf71ca477ef6985d7ceb257c53c1b e2b4afde39803bd42bb1374b230fca1b1e8cc868 0 (*) {'ef1': '4', 'user': 'test'} (glob)
   033b3f5ae73db67c10de938fb6f26b949aaef172 bb5e4f6020c74e7961a51fda635ea9df9b04dda8 0 (*) {'ef1': '4', 'user': 'test'} (glob)
   b434287e665ce757ee5463a965cb3d119ca9e893 ead2066d1dbf14833fe1069df1b735e4e9468c40 1188c4216eba37f18a1de6558564601d00ff2143 0 (*) {'ef1': '13', 'user': 'test'} (glob)
   $ hg evolve --all
-  move:[8] split1
-  atop:[11] split4
-  move:[9] split2
-  atop:[12] split1
+  move:[10] split1
+  atop:[13] split4
+  move:[11] split2
+  atop:[14] split1
   working directory is now at d74c6715e706
   $ hg log -G
-  @  changeset:   13:d74c6715e706
+  @  changeset:   15:d74c6715e706
   |  tag:         tip
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
   |  summary:     split2
   |
-  o  changeset:   12:3f134f739075
+  o  changeset:   14:3f134f739075
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
   |  summary:     split1
   |
-  o  changeset:   11:1188c4216eba
+  o  changeset:   13:1188c4216eba
   |  user:        other-test-user
   |  date:        Thu Jan 01 00:00:00 1970 +0000
   |  summary:     split4
   |
-  o  changeset:   10:ead2066d1dbf
+  o  changeset:   12:ead2066d1dbf
   |  parent:      1:37445b16603b
   |  user:        other-test-user
   |  date:        Thu Jan 01 00:00:00 1970 +0000
@@ -261,19 +265,19 @@
   $ echo "changetofilea" > _a
   $ hg amend
   $ hg book
-     bookA                     14:7a6b35779b85
-   * bookB                     14:7a6b35779b85
-  $ hg log -G -r "3f134f739075::"
-  @  changeset:   14:7a6b35779b85
+     bookA                     17:7a6b35779b85
+   * bookB                     17:7a6b35779b85
+  $ hg log -G -r "14::"
+  @  changeset:   17:7a6b35779b85
   |  bookmark:    bookA
   |  bookmark:    bookB
   |  tag:         tip
-  |  parent:      12:3f134f739075
+  |  parent:      14:3f134f739075
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
   |  summary:     split2
   |
-  o  changeset:   12:3f134f739075
+  o  changeset:   14:3f134f739075
   |  user:        test
   ~  date:        Thu Jan 01 00:00:00 1970 +0000
      summary:     split1
@@ -304,8 +308,8 @@
   
   created new head
   Done splitting? [yN] y
-  $ hg log -G -r "3f134f739075::"
-  @  changeset:   16:452a26648478
+  $ hg log -G -r "14::"
+  @  changeset:   19:452a26648478
   |  bookmark:    bookA
   |  bookmark:    bookB
   |  tag:         tip
@@ -313,20 +317,20 @@
   |  date:        Thu Jan 01 00:00:00 1970 +0000
   |  summary:     split6
   |
-  o  changeset:   15:1315679b77dc
-  |  parent:      12:3f134f739075
+  o  changeset:   18:1315679b77dc
+  |  parent:      14:3f134f739075
   |  user:        victor
   |  date:        Thu Jan 01 00:00:00 1970 +0000
   |  summary:     split5
   |
-  o  changeset:   12:3f134f739075
+  o  changeset:   14:3f134f739075
   |  user:        test
   ~  date:        Thu Jan 01 00:00:00 1970 +0000
      summary:     split1
   
   $ hg book
-     bookA                     16:452a26648478
-   * bookB                     16:452a26648478
+     bookA                     19:452a26648478
+   * bookB                     19:452a26648478
  
 Lastest revision is selected if multiple are given to -r
   $ hg split -r "desc(_a)::"
@@ -412,7 +416,7 @@
   $ hg commit -m "Works on mytopic" babar celeste --user victor
   active topic 'mytopic' grew its first changeset
   $ hg log -r . 
-  changeset:   18:26f72cfaf036
+  changeset:   21:26f72cfaf036
   branch:      new-branch
   tag:         tip
   topic:       mytopic
@@ -421,7 +425,7 @@
   summary:     Works on mytopic
   
   $ hg summary
-  parent: 18:26f72cfaf036 tip
+  parent: 21:26f72cfaf036 tip
    Works on mytopic
   branch: new-branch
   commit: 2 unknown (clean)
@@ -468,15 +472,15 @@
 Check that the topic is still here
 
   $ hg log -r "tip~1::"
-  changeset:   19:addcf498f19e
+  changeset:   22:addcf498f19e
   branch:      new-branch
   topic:       mytopic
-  parent:      17:fdb403258632
+  parent:      20:fdb403258632
   user:        test
   date:        Thu Jan 01 00:00:00 1970 +0000
   summary:     split7
   
-  changeset:   20:2532b288af61
+  changeset:   23:2532b288af61
   branch:      new-branch
   tag:         tip
   topic:       mytopic
--- a/tests/test-stabilize-conflict.t
+++ b/tests/test-stabilize-conflict.t
@@ -76,21 +76,21 @@
    neuf
    dix
   $ hg amend
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg evolve
   move:[2] babar count up to fifteen
-  atop:[3] babar count up to ten
+  atop:[4] babar count up to ten
   merging babar
   working directory is now at 71c18f70c34f
   $ hg resolve -l
   $ hg log -G
-  @  changeset:   4:71c18f70c34f
+  @  changeset:   5:71c18f70c34f
   |  tag:         tip
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
   |  summary:     babar count up to fifteen
   |
-  o  changeset:   3:5977072d13c5
+  o  changeset:   4:5977072d13c5
   |  parent:      0:29ec1554cfaf
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
@@ -109,12 +109,12 @@
   $ hg gdown
   gdown have been deprecated in favor of previous
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-  [3] babar count up to ten
+  [4] babar count up to ten
   $ safesed 's/dix/ten/' babar
   $ hg diff
   diff -r 5977072d13c5 babar
   --- a/babar	Thu Jan 01 00:00:00 1970 +0000
-  +++ b/babar	Thu Jan 01 00:00:00 1970 +0000
+  +++ b/babar	* (glob)
   @@ -7,4 +7,4 @@
    sept
    eight
@@ -122,10 +122,10 @@
   -dix
   +ten
   $ hg amend
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg evolve
-  move:[4] babar count up to fifteen
-  atop:[5] babar count up to ten
+  move:[5] babar count up to fifteen
+  atop:[7] babar count up to ten
   merging babar
   warning: conflicts while merging babar! (edit, then use 'hg resolve --mark')
   evolve failed!
@@ -135,24 +135,24 @@
   $ hg resolve -l
   U babar
   $ hg log -G
-  @  changeset:   5:e04690b09bc6
+  @  changeset:   7:e04690b09bc6
   |  tag:         tip
   |  parent:      0:29ec1554cfaf
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
   |  summary:     babar count up to ten
   |
-  | o  changeset:   4:71c18f70c34f
+  | o  changeset:   5:71c18f70c34f
   | |  user:        test
   | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  instability: orphan
+  | |  trouble:     unstable
   | |  summary:     babar count up to fifteen
   | |
-  | x  changeset:   3:5977072d13c5
+  | x  changeset:   4:5977072d13c5
   |/   parent:      0:29ec1554cfaf
   |    user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    amended using amend as 5:e04690b09bc6
+  |    obsolete:    amended as e04690b09bc6
   |    summary:     babar count up to ten
   |
   o  changeset:   0:29ec1554cfaf
@@ -162,22 +162,22 @@
   
 (fix the conflict and continue)
 
-  $ hg revert -r 71c18f70c34f --all
+  $ hg revert -r 5 --all
   reverting babar
   $ safesed 's/dix/ten/' babar
   $ hg resolve --all -m
   (no more unresolved files)
   $ hg evolve --continue
-  grafting 4:71c18f70c34f "babar count up to fifteen"
+  grafting 5:71c18f70c34f "babar count up to fifteen"
   $ hg resolve -l
   $ hg log -G
-  @  changeset:   6:1836b91c6c1d
+  @  changeset:   8:1836b91c6c1d
   |  tag:         tip
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
   |  summary:     babar count up to fifteen
   |
-  o  changeset:   5:e04690b09bc6
+  o  changeset:   7:e04690b09bc6
   |  parent:      0:29ec1554cfaf
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
@@ -196,12 +196,12 @@
   $ hg gdown
   gdown have been deprecated in favor of previous
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-  [5] babar count up to ten
+  [7] babar count up to ten
   $ safesed 's/ten/zehn/' babar
   $ hg diff
   diff -r e04690b09bc6 babar
   --- a/babar	Thu Jan 01 00:00:00 1970 +0000
-  +++ b/babar	Thu Jan 01 00:00:00 1970 +0000
+  +++ b/babar	* (glob)
   @@ -7,4 +7,4 @@
    sept
    eight
@@ -209,13 +209,13 @@
   -ten
   +zehn
   $ hg amend
-  1 new orphan changesets
+  1 new unstable changesets
   $ safesed 's/interactive=.*/interactive=true/' $HGRCPATH
   $ hg evolve --tool touch <<EOF
   > n
   > EOF
-  move:[6] babar count up to fifteen
-  atop:[7] babar count up to ten
+  move:[8] babar count up to fifteen
+  atop:[10] babar count up to ten
   merging babar
    output file babar appears unchanged
   was merge successful (yn)? n
@@ -227,24 +227,24 @@
   $ hg resolve -l
   U babar
   $ hg log -G
-  @  changeset:   7:b20d08eea373
+  @  changeset:   10:b20d08eea373
   |  tag:         tip
   |  parent:      0:29ec1554cfaf
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
   |  summary:     babar count up to ten
   |
-  | o  changeset:   6:1836b91c6c1d
+  | o  changeset:   8:1836b91c6c1d
   | |  user:        test
   | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  instability: orphan
+  | |  trouble:     unstable
   | |  summary:     babar count up to fifteen
   | |
-  | x  changeset:   5:e04690b09bc6
+  | x  changeset:   7:e04690b09bc6
   |/   parent:      0:29ec1554cfaf
   |    user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    amended using amend as 7:b20d08eea373
+  |    obsolete:    amended as b20d08eea373
   |    summary:     babar count up to ten
   |
   o  changeset:   0:29ec1554cfaf
--- a/tests/test-stabilize-order.t
+++ b/tests/test-stabilize-order.t
@@ -38,18 +38,18 @@
   [2] addb
   $ echo b >> b
   $ hg amend
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg gdown
   gdown have been deprecated in favor of previous
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   [1] adda
   $ echo a >> a
   $ hg amend
-  1 new orphan changesets
+  1 new unstable changesets
   $ glog
-  @  5:005fe5914f78@default(draft) adda
+  @  7:005fe5914f78@default(draft) adda
   |
-  | o  4:22619daeed78@default(draft) addb
+  | o  5:22619daeed78@default(draft) addb
   | |
   | | o  3:7a7552255fb5@default(draft) addc
   | | |
@@ -63,8 +63,8 @@
 Test stabilizing a predecessor child
 
   $ hg evolve -v
-  move:[4] addb
-  atop:[5] adda
+  move:[5] addb
+  atop:[7] adda
   hg rebase -r 22619daeed78 -d 005fe5914f78
   resolving manifests
   getting b
@@ -74,9 +74,9 @@
   committing changelog
   working directory is now at 81b8bbcd5892
   $ glog
-  @  6:81b8bbcd5892@default(draft) addb
+  @  8:81b8bbcd5892@default(draft) addb
   |
-  o  5:005fe5914f78@default(draft) adda
+  o  7:005fe5914f78@default(draft) adda
   |
   | o  3:7a7552255fb5@default(draft) addc
   | |
@@ -89,12 +89,12 @@
 
 Test stabilizing a descendant predecessor's child
 
-  $ hg up -r 005fe5914f78
+  $ hg up 7
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ hg debugobsolete > successors.old
   $ hg evolve -v
   move:[3] addc
-  atop:[6] addb
+  atop:[8] addb
   hg rebase -r 7a7552255fb5 -d 81b8bbcd5892
   resolving manifests
   getting b
@@ -109,21 +109,21 @@
   $ diff -u successors.old successors.new
   --- successors.old* (glob)
   +++ successors.new* (glob)
-  @@ -1,3 +1,4 @@
-   ef23d6ef94d68dea65d20587dfecc8b33d165617 22619daeed78036f80fbd326b6852519c4f0c25e 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
-   93418d2c0979643ad446f621195e78720edb05b4 005fe5914f78e8bc64c7eba28117b0b1fa210d0d 0 (Thu Jan 01 00:00:00 1970 +0000) {'ef1': '8', 'operation': 'amend', 'user': 'test'}
-   22619daeed78036f80fbd326b6852519c4f0c25e 81b8bbcd5892841efed41433d7a5e9df922396cb 0 (*) {'ef1': '4', 'user': 'test'} (glob)
-  +7a7552255fb5f8bd745e46fba6f0ca633a4dd716 0f691739f91762462bf8ba21f35fdf71fe64310e 0 (*) {'ef1': '4', 'user': 'test'} (glob)
+  @@ -3,3 +3,4 @@
+   93418d2c0979643ad446f621195e78720edb05b4 005fe5914f78e8bc64c7eba28117b0b1fa210d0d 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+   7a7d76dc97c57751de9e80f61ed2a639bd03cd24 0 {93418d2c0979643ad446f621195e78720edb05b4} (*) {'ef1': '*', 'user': 'test'} (glob)
+   22619daeed78036f80fbd326b6852519c4f0c25e 81b8bbcd5892841efed41433d7a5e9df922396cb 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  +7a7552255fb5f8bd745e46fba6f0ca633a4dd716 0f691739f91762462bf8ba21f35fdf71fe64310e 0 (*) {'ef1': '*', 'user': 'test'} (glob)
   [1]
 
 
 
   $ glog
-  @  7:0f691739f917@default(draft) addc
+  @  9:0f691739f917@default(draft) addc
   |
-  o  6:81b8bbcd5892@default(draft) addb
+  o  8:81b8bbcd5892@default(draft) addb
   |
-  o  5:005fe5914f78@default(draft) adda
+  o  7:005fe5914f78@default(draft) adda
   |
   o  0:c471ef929e6a@default(draft) addroot
   
@@ -133,31 +133,31 @@
 
 Test behavior with --any
 
-  $ hg up 81b8bbcd5892
+  $ hg up 8
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ echo b >> b
   $ hg amend
-  1 new orphan changesets
+  1 new unstable changesets
   $ glog
-  @  8:7a68bc4596ea@default(draft) addb
+  @  11:7a68bc4596ea@default(draft) addb
   |
-  | o  7:0f691739f917@default(draft) addc
+  | o  9:0f691739f917@default(draft) addc
   | |
-  | x  6:81b8bbcd5892@default(draft) addb
+  | x  8:81b8bbcd5892@default(draft) addb
   |/
-  o  5:005fe5914f78@default(draft) adda
+  o  7:005fe5914f78@default(draft) adda
   |
   o  0:c471ef929e6a@default(draft) addroot
   
-  $ hg up 0f691739f917
+  $ hg up 9
   2 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg evolve -v
   nothing to evolve on current working copy parent
   (1 other orphan in the repository, do you want --any or --rev)
   [2]
   $ hg evolve --any -v
-  move:[7] addc
-  atop:[8] addb
+  move:[9] addc
+  atop:[11] addb
   hg rebase -r 0f691739f917 -d 7a68bc4596ea
   resolving manifests
   removing c
@@ -170,11 +170,11 @@
   committing changelog
   working directory is now at 2256dae6521f
   $ glog
-  @  9:2256dae6521f@default(draft) addc
+  @  12:2256dae6521f@default(draft) addc
   |
-  o  8:7a68bc4596ea@default(draft) addb
+  o  11:7a68bc4596ea@default(draft) addb
   |
-  o  5:005fe5914f78@default(draft) adda
+  o  7:005fe5914f78@default(draft) adda
   |
   o  0:c471ef929e6a@default(draft) addroot
   
@@ -195,41 +195,41 @@
   $ hg up .^
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ hg commit --amend -m "newmessage"
-  2 new orphan changesets
+  2 new unstable changesets
   $ hg log -G
-  @  changeset:   12:f83a0bce03e4
+  @  changeset:   15:f83a0bce03e4
   |  tag:         tip
-  |  parent:      8:7a68bc4596ea
+  |  parent:      11:7a68bc4596ea
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
   |  summary:     newmessage
   |
-  | o  changeset:   11:fa68011f392e
-  | |  parent:      9:2256dae6521f
+  | o  changeset:   14:fa68011f392e
+  | |  parent:      12:2256dae6521f
   | |  user:        test
   | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  instability: orphan
+  | |  trouble:     unstable
   | |  summary:     secondambiguous
   | |
-  | | o  changeset:   10:bdc003b6eec2
+  | | o  changeset:   13:bdc003b6eec2
   | |/   user:        test
   | |    date:        Thu Jan 01 00:00:00 1970 +0000
-  | |    instability: orphan
+  | |    trouble:     unstable
   | |    summary:     firstambiguous
   | |
-  | x  changeset:   9:2256dae6521f
+  | x  changeset:   12:2256dae6521f
   |/   user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    reworded using amend as 12:f83a0bce03e4
+  |    obsolete:    reworded as f83a0bce03e4
   |    summary:     addc
   |
-  o  changeset:   8:7a68bc4596ea
-  |  parent:      5:005fe5914f78
+  o  changeset:   11:7a68bc4596ea
+  |  parent:      7:005fe5914f78
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
   |  summary:     addb
   |
-  o  changeset:   5:005fe5914f78
+  o  changeset:   7:005fe5914f78
   |  parent:      0:c471ef929e6a
   |  user:        test
   |  date:        Thu Jan 01 00:00:00 1970 +0000
--- a/tests/test-stabilize-result.t
+++ b/tests/test-stabilize-result.t
@@ -27,30 +27,33 @@
   (leaving bookmark changea)
   $ echo a >> a
   $ hg amend -m changea
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg evolve -v --confirm
   move:[2] changea
-  atop:[3] changea
+  atop:[4] changea
   perform evolve? [Ny] n
   abort: evolve aborted by user
   [255]
   $ echo y | hg evolve -v --confirm --config ui.interactive=True
   move:[2] changea
-  atop:[3] changea
+  atop:[4] changea
   perform evolve? [Ny] y
   hg rebase -r cce2c55b8965 -d fb9d051ec0a4
   resolving manifests
   $ glog --hidden
-  @  3:fb9d051ec0a4@default(draft) bk:[changea] changea
+  @  4:fb9d051ec0a4@default(draft) bk:[changea] changea
   |
-  | x  2:cce2c55b8965@default(draft) bk:[] changea
+  | x  3:c5727dbded3c@default(draft) bk:[] temporary amend commit for 102a90ea7b4a
   | |
+  | | x  2:cce2c55b8965@default(draft) bk:[] changea
+  | |/
   | x  1:102a90ea7b4a@default(draft) bk:[] addb
   |/
   o  0:07f494440405@default(draft) bk:[] adda
   
   $ hg debugobsolete
   102a90ea7b4a3361e4082ed620918c261189a36a fb9d051ec0a450a4aa2ffc8c324979832ef88065 0 (*) {'ef1': '*', 'user': 'test'} (glob)
+  c5727dbded3c3a6877cf60d6bb552a76812cb844 0 {102a90ea7b4a3361e4082ed620918c261189a36a} (*) {'ef1': '*', 'user': 'test'} (glob)
   cce2c55b896511e0b6e04173c9450ba822ebc740 0 {102a90ea7b4a3361e4082ed620918c261189a36a} (*) {'ef1': '*', 'user': 'test'} (glob)
 
 Test evolve with conflict
@@ -70,13 +73,13 @@
   $ hg gdown
   gdown have been deprecated in favor of previous
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-  [3] changea
+  [4] changea
   $ echo 'a' > a
   $ hg amend
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg evolve
-  move:[4] newer a
-  atop:[5] changea
+  move:[5] newer a
+  atop:[7] changea
   merging a
   warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
   evolve failed!
@@ -93,13 +96,13 @@
   +a
   +newer a
   $ hg evolve --continue
-  grafting 4:3655f0f50885 "newer a"
+  grafting 5:3655f0f50885 "newer a"
   abort: unresolved merge conflicts (see 'hg help resolve')
   [255]
   $ hg resolve -m a
   (no more unresolved files)
   $ hg evolve --continue
-  grafting 4:3655f0f50885 "newer a"
+  grafting 5:3655f0f50885 "newer a"
 
 Stabilize latecomer with different parent
 =========================================
@@ -107,9 +110,9 @@
 (the same-parent case is handled in test-evolve.t)
 
   $ glog
-  @  6:1cf0aacfd363@default(draft) bk:[] newer a
+  @  8:1cf0aacfd363@default(draft) bk:[] newer a
   |
-  o  5:66719795a494@default(draft) bk:[changea] changea
+  o  7:66719795a494@default(draft) bk:[changea] changea
   |
   o  0:07f494440405@default(draft) bk:[] adda
   
@@ -118,7 +121,7 @@
   $ hg gdown
   gdown have been deprecated in favor of previous
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
-  [5] changea
+  [7] changea
   $ echo 'c' > c
   $ hg add c
   $ hg commit -m 'add c'
@@ -127,7 +130,7 @@
 Get a successors of 8 on it
 
   $ hg grab 1cf0aacfd363
-  rebasing 6:1cf0aacfd363 "newer a"
+  rebasing 8:1cf0aacfd363 "newer a"
   ? files updated, 0 files merged, 0 files removed, 0 files unresolved (glob)
 
 Add real change to the successors
@@ -138,15 +141,15 @@
 Make precursors public
 
   $ hg phase --hidden --public 1cf0aacfd363
-  1 new phase-divergent changesets
+  1 new bumped changesets
   $ glog
-  @  9:(73b15c7566e9|d5c7ef82d003)@default\(draft\) bk:\[\] newer a (re)
+  @  12:(73b15c7566e9|d5c7ef82d003)@default\(draft\) bk:\[\] newer a (re)
   |
-  o  7:7bc2f5967f5e@default(draft) bk:[] add c
+  o  9:7bc2f5967f5e@default(draft) bk:[] add c
   |
-  | o  6:1cf0aacfd363@default(public) bk:[] newer a
+  | o  8:1cf0aacfd363@default(public) bk:[] newer a
   |/
-  o  5:66719795a494@default(public) bk:[changea] changea
+  o  7:66719795a494@default(public) bk:[changea] changea
   |
   o  0:07f494440405@default(public) bk:[] adda
   
@@ -154,34 +157,34 @@
 Stabilize!
 
   $ hg evolve --any --dry-run --phasedivergent
-  recreate:[9] newer a
-  atop:[6] newer a
-  hg rebase --rev d5c7ef82d003 --dest 66719795a494;
+  recreate:[12] newer a
+  atop:[8] newer a
+  hg rebase --rev (73b15c7566e9|d5c7ef82d003) --dest 66719795a494; (re)
   hg update 1cf0aacfd363;
-  hg revert --all --rev d5c7ef82d003;
+  hg revert --all --rev (73b15c7566e9|d5c7ef82d003); (re)
   hg commit --msg "bumped update to %s" (no-eol)
   $ hg evolve --any --confirm --phasedivergent
-  recreate:[9] newer a
-  atop:[6] newer a
+  recreate:[12] newer a
+  atop:[8] newer a
   perform evolve? [Ny] n
   abort: evolve aborted by user
   [255]
   $ echo y | hg evolve --any --confirm --config ui.interactive=True --phasedivergent
-  recreate:[9] newer a
-  atop:[6] newer a
+  recreate:[12] newer a
+  atop:[8] newer a
   perform evolve? [Ny] y
   rebasing to destination parent: 66719795a494
   computing new diff
   committed as c2c1151aa854
   working directory is now at c2c1151aa854
   $ glog
-  @  11:c2c1151aa854@default(draft) bk:[] bumped update to 1cf0aacfd363:
+  @  14:c2c1151aa854@default(draft) bk:[] bumped update to 1cf0aacfd363:
   |
-  | o  7:7bc2f5967f5e@default(draft) bk:[] add c
+  | o  9:7bc2f5967f5e@default(draft) bk:[] add c
   | |
-  o |  6:1cf0aacfd363@default(public) bk:[] newer a
+  o |  8:1cf0aacfd363@default(public) bk:[] newer a
   |/
-  o  5:66719795a494@default(public) bk:[changea] changea
+  o  7:66719795a494@default(public) bk:[changea] changea
   |
   o  0:07f494440405@default(public) bk:[] adda
   
@@ -202,15 +205,15 @@
   > EOF
   $ hg ci -m 'More addition'
   $ glog
-  @  12:3932c176bbaa@default(draft) bk:[] More addition
+  @  15:3932c176bbaa@default(draft) bk:[] More addition
   |
-  | o  11:c2c1151aa854@default(draft) bk:[] bumped update to 1cf0aacfd363:
+  | o  14:(a7cabd7bd9c2|671b9d7eeaec)@default\(draft\) bk:\[\] bumped update to 1cf0aacfd363: (re)
   | |
-  o |  7:7bc2f5967f5e@default(draft) bk:[] add c
+  o |  9:7bc2f5967f5e@default(draft) bk:[] add c
   | |
-  | o  6:1cf0aacfd363@default(public) bk:[] newer a
+  | o  8:1cf0aacfd363@default(public) bk:[] newer a
   |/
-  o  5:66719795a494@default(public) bk:[changea] changea
+  o  7:66719795a494@default(public) bk:[changea] changea
   |
   o  0:07f494440405@default(public) bk:[] adda
   
@@ -225,19 +228,19 @@
   $ cat a.old >> a
   $ rm a.old
   $ hg amend
-  2 new content-divergent changesets
+  2 new divergent changesets
   $ glog
-  @  14:eacc9c8240fe@default(draft) bk:[] More addition
+  @  19:eacc9c8240fe@default(draft) bk:[] More addition
   |
-  | o  13:d2f173e25686@default(draft) bk:[] More addition
+  | o  17:d2f173e25686@default(draft) bk:[] More addition
   |/
-  | o  11:c2c1151aa854@default(draft) bk:[] bumped update to 1cf0aacfd363:
+  | o  14:(a7cabd7bd9c2|671b9d7eeaec)@default\(draft\) bk:\[\] bumped update to 1cf0aacfd363: (re)
   | |
-  o |  7:7bc2f5967f5e@default(draft) bk:[] add c
+  o |  9:7bc2f5967f5e@default(draft) bk:[] add c
   | |
-  | o  6:1cf0aacfd363@default(public) bk:[] newer a
+  | o  8:1cf0aacfd363@default(public) bk:[] newer a
   |/
-  o  5:66719795a494@default(public) bk:[changea] changea
+  o  7:66719795a494@default(public) bk:[changea] changea
   |
   o  0:07f494440405@default(public) bk:[] adda
   
@@ -245,16 +248,16 @@
 Stabilize it
 
   $ hg evolve -qn --confirm --contentdivergent
-  merge:[14] More addition
-  with: [13] More addition
-  base: [12] More addition
+  merge:[19] More addition
+  with: [17] More addition
+  base: [15] More addition
   perform evolve? [Ny] n
   abort: evolve aborted by user
   [255]
   $ echo y | hg evolve -qn --confirm --config ui.interactive=True --contentdivergent
-  merge:[14] More addition
-  with: [13] More addition
-  base: [12] More addition
+  merge:[19] More addition
+  with: [17] More addition
+  base: [15] More addition
   perform evolve? [Ny] y
   hg update -c eacc9c8240fe &&
   hg merge d2f173e25686 &&
@@ -263,9 +266,9 @@
   hg revert --all --rev tip &&
   hg commit -m "`hg log -r eacc9c8240fe --template={desc}`";
   $ hg evolve -v --contentdivergent
-  merge:[14] More addition
-  with: [13] More addition
-  base: [12] More addition
+  merge:[19] More addition
+  with: [17] More addition
+  base: [15] More addition
   merging divergent changeset
   resolving manifests
   merging a
@@ -275,24 +278,29 @@
   a
   committing manifest
   committing changelog
-  committed changeset 15:f344982e63c4
+  copying changeset 283ccd10e2b8 to 7bc2f5967f5e
+  committing files:
+  a
+  committing manifest
+  committing changelog
+  committed changeset 21:f344982e63c4
   working directory is now at f344982e63c4
   $ hg st
   $ glog
-  @  15:f344982e63c4@default(draft) bk:[] More addition
+  @  21:f344982e63c4@default(draft) bk:[] More addition
   |
-  | o  11:c2c1151aa854@default(draft) bk:[] bumped update to 1cf0aacfd363:
+  | o  14:(a7cabd7bd9c2|671b9d7eeaec)@default\(draft\) bk:\[\] bumped update to 1cf0aacfd363: (re)
   | |
-  o |  7:7bc2f5967f5e@default(draft) bk:[] add c
+  o |  9:7bc2f5967f5e@default(draft) bk:[] add c
   | |
-  | o  6:1cf0aacfd363@default(public) bk:[] newer a
+  | o  8:1cf0aacfd363@default(public) bk:[] newer a
   |/
-  o  5:66719795a494@default(public) bk:[changea] changea
+  o  7:66719795a494@default(public) bk:[changea] changea
   |
   o  0:07f494440405@default(public) bk:[] adda
   
   $ hg summary
-  parent: 15:f344982e63c4 tip
+  parent: 21:f344982e63c4 tip
    More addition
   branch: default
   commit: (clean)
@@ -330,12 +338,12 @@
   (use 'hg evolve' to update to its successor: f344982e63c4)
   $ echo 'gotta break' >> a
   $ hg amend
-  2 new content-divergent changesets
+  2 new divergent changesets
 # reamend so that the case is not the first precursor.
   $ hg amend -m "More addition (2)"
   $ hg phase 'contentdivergent()'
-  15: draft
-  17: draft
+  21: draft
+  24: draft
   $ hg evolve -qn --contentdivergent
   hg update -c 0b336205a5d0 &&
   hg merge f344982e63c4 &&
@@ -344,9 +352,9 @@
   hg revert --all --rev tip &&
   hg commit -m "`hg log -r 0b336205a5d0 --template={desc}`";
   $ hg evolve --contentdivergent
-  merge:[17] More addition (2)
-  with: [15] More addition
-  base: [12] More addition
+  merge:[24] More addition (2)
+  with: [21] More addition
+  base: [15] More addition
   merging a
   warning: conflicts while merging a! (edit, then use 'hg resolve --mark')
   0 files updated, 0 files merged, 0 files removed, 1 files unresolved
--- a/tests/test-stablesort-criss-cross.t
+++ b/tests/test-stablesort-criss-cross.t
@@ -608,7 +608,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 0 changes to 0 files
-  new changesets 1ea73414a91b
   updating to branch default
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ cd crisscross_random
--- a/tests/test-stablesort.t
+++ b/tests/test-stablesort.t
@@ -145,7 +145,6 @@
   adding manifests
   adding file changes
   added 4 changesets with 0 changes to 0 files
-  new changesets 1ea73414a91b:f0f3ef9a6cd5
   updating to branch default
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg -R repo_B pull --rev 13
@@ -155,7 +154,6 @@
   adding manifests
   adding file changes
   added 4 changesets with 0 changes to 0 files (+1 heads)
-  new changesets 66f7d451a68b:b4594d867745
   (run 'hg heads' to see heads, 'hg merge' to merge)
   $ hg -R repo_B pull --rev 14
   pulling from $TESTTMP/repo_A (glob)
@@ -164,7 +162,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 0 changes to 0 files (+1 heads)
-  new changesets 43227190fef8
   (run 'hg heads .' to see heads, 'hg merge' to merge)
   $ hg -R repo_B pull
   pulling from $TESTTMP/repo_A (glob)
@@ -173,7 +170,6 @@
   adding manifests
   adding file changes
   added 7 changesets with 0 changes to 0 files (+3 heads)
-  new changesets 2702dd0c91e7:1d8d22637c2d
   (run 'hg heads .' to see heads, 'hg merge' to merge)
   $ hg -R repo_B log -G
   o    15 1d8d22637c2d r15 tip
@@ -215,7 +211,6 @@
   adding manifests
   adding file changes
   added 7 changesets with 0 changes to 0 files
-  new changesets 1ea73414a91b:ff43616e5d0f
   updating to branch default
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg -R repo_C pull --rev 12
@@ -225,7 +220,6 @@
   adding manifests
   adding file changes
   added 2 changesets with 0 changes to 0 files (+1 heads)
-  new changesets bab5d5bf48bd:e46a4836065c
   (run 'hg heads' to see heads, 'hg merge' to merge)
   $ hg -R repo_C pull --rev 15
   pulling from $TESTTMP/repo_A (glob)
@@ -234,7 +228,6 @@
   adding manifests
   adding file changes
   added 4 changesets with 0 changes to 0 files (+1 heads)
-  new changesets 4c748ffd1a46:1d8d22637c2d
   (run 'hg heads .' to see heads, 'hg merge' to merge)
   $ hg -R repo_C pull
   pulling from $TESTTMP/repo_A (glob)
@@ -243,7 +236,6 @@
   adding manifests
   adding file changes
   added 3 changesets with 0 changes to 0 files (+3 heads)
-  new changesets 2702dd0c91e7:b4594d867745
   (run 'hg heads .' to see heads, 'hg merge' to merge)
   $ hg -R repo_C log -G
   o  15 b4594d867745 r13 tip
@@ -285,7 +277,6 @@
   adding manifests
   adding file changes
   added 2 changesets with 0 changes to 0 files
-  new changesets 1ea73414a91b:fa942426a6fd
   updating to branch default
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg -R repo_D pull --rev 10
@@ -295,7 +286,6 @@
   adding manifests
   adding file changes
   added 5 changesets with 0 changes to 0 files
-  new changesets 66f7d451a68b:ff43616e5d0f
   (run 'hg update' to get a working copy)
   $ hg -R repo_D pull --rev 15
   pulling from $TESTTMP/repo_A (glob)
@@ -304,7 +294,6 @@
   adding manifests
   adding file changes
   added 4 changesets with 0 changes to 0 files (+1 heads)
-  new changesets 4c748ffd1a46:1d8d22637c2d
   (run 'hg heads' to see heads, 'hg merge' to merge)
   $ hg -R repo_D pull
   pulling from $TESTTMP/repo_A (glob)
@@ -313,7 +302,6 @@
   adding manifests
   adding file changes
   added 5 changesets with 0 changes to 0 files (+4 heads)
-  new changesets 2702dd0c91e7:b4594d867745
   (run 'hg heads .' to see heads, 'hg merge' to merge)
   $ hg -R repo_D log -G
   o  15 b4594d867745 r13 tip
@@ -423,7 +411,6 @@
   adding manifests
   adding file changes
   added 5 changesets with 0 changes to 0 files
-  new changesets 1ea73414a91b:43227190fef8
   updating to branch default
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg -R repo_E pull --rev e7d9710d9fc6
@@ -433,7 +420,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 0 changes to 0 files (+1 heads)
-  new changesets e7d9710d9fc6
   (run 'hg heads' to see heads, 'hg merge' to merge)
 
   $ hg clone repo_A repo_F --rev "1d8d22637c2d"
@@ -441,7 +427,6 @@
   adding manifests
   adding file changes
   added 8 changesets with 0 changes to 0 files
-  new changesets 1ea73414a91b:1d8d22637c2d
   updating to branch default
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg -R repo_F pull --rev d62d843c9a01
@@ -451,7 +436,6 @@
   adding manifests
   adding file changes
   added 2 changesets with 0 changes to 0 files (+1 heads)
-  new changesets e7d9710d9fc6:d62d843c9a01
   (run 'hg heads' to see heads, 'hg merge' to merge)
 
   $ hg clone repo_A repo_G --rev "e7d9710d9fc6"
@@ -459,7 +443,6 @@
   adding manifests
   adding file changes
   added 5 changesets with 0 changes to 0 files
-  new changesets 1ea73414a91b:e7d9710d9fc6
   updating to branch default
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg -R repo_G pull --rev 43227190fef8
@@ -469,7 +452,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 0 changes to 0 files (+1 heads)
-  new changesets 43227190fef8
   (run 'hg heads' to see heads, 'hg merge' to merge)
   $ hg -R repo_G pull --rev 2702dd0c91e7
   pulling from $TESTTMP/repo_A (glob)
@@ -478,7 +460,6 @@
   adding manifests
   adding file changes
   added 3 changesets with 0 changes to 0 files (+1 heads)
-  new changesets 4c748ffd1a46:2702dd0c91e7
   (run 'hg heads .' to see heads, 'hg merge' to merge)
 
   $ for x in E F G; do
@@ -607,7 +588,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 0 changes to 0 files
-  new changesets 1ea73414a91b
   updating to branch default
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ cd recursion_random
--- a/tests/test-stack-branch.t
+++ b/tests/test-stack-branch.t
@@ -110,7 +110,7 @@
   $ echo bbb > ddd
   $ hg commit --amend
   $ hg log -G
-  @  6 foo {} draft c_d
+  @  7 foo {} draft c_d
   |
   | o  5 foo {} draft c_f
   | |
@@ -147,7 +147,7 @@
 
   $ hg log -r 'stack()'
   2 foo {} draft c_c
-  6 foo {} draft c_d
+  7 foo {} draft c_d
   4 foo {} draft c_e
   5 foo {} draft c_f
 
@@ -160,11 +160,11 @@
   rebasing 4:4f2a69f6d380 "c_e"
   rebasing 5:913c298d8b0a "c_f"
   $ hg log -G
-  o  8 foo {} draft c_f
+  o  9 foo {} draft c_f
   |
-  o  7 foo {} draft c_e
+  o  8 foo {} draft c_e
   |
-  @  6 foo {} draft c_d
+  @  7 foo {} draft c_d
   |
   o  2 foo {} draft c_c
   |
@@ -185,15 +185,15 @@
   $ hg add hhh
   $ hg commit -m c_h
   $ hg log -G
-  @  10 foo {} draft c_h
+  @  11 foo {} draft c_h
   |
-  o  9 foo {} draft c_g
+  o  10 foo {} draft c_g
   |
-  | o  8 foo {} draft c_f
+  | o  9 foo {} draft c_f
   | |
-  | o  7 foo {} draft c_e
+  | o  8 foo {} draft c_e
   |/
-  o  6 foo {} draft c_d
+  o  7 foo {} draft c_d
   |
   o  2 foo {} draft c_c
   |
@@ -206,11 +206,11 @@
 
   $ hg stack
   ### target: foo (branch) (2 heads)
-  b6@ c_h (current)
-  b5: c_g
+  b6: c_f
+  b5: c_e
   b2^ c_d (base)
-  b4: c_f
-  b3: c_e
+  b4@ c_h (current)
+  b3: c_g
   b2: c_d
   b1: c_c
   b0^ c_b (base)
@@ -225,20 +225,20 @@
   $ echo ccc > ddd
   $ hg commit --amend -m 'c_D' 
   $ hg rebase -d . -s 'desc(c_g)'
-  rebasing 9:2ebb6e48ab8a "c_g"
-  rebasing 10:634f38e27a1d "c_h"
+  rebasing 10:2ebb6e48ab8a "c_g"
+  rebasing 11:634f38e27a1d "c_h"
   $ hg log -G
-  o  13 foo {} draft c_h
+  o  15 foo {} draft c_h
   |
-  o  12 foo {} draft c_g
+  o  14 foo {} draft c_g
   |
-  @  11 foo {} draft c_D
+  @  13 foo {} draft c_D
   |
-  | o  8 foo {} draft c_f
+  | o  9 foo {} draft c_f
   | |
-  | o  7 foo {} draft c_e
+  | o  8 foo {} draft c_e
   | |
-  | x  6 foo {} draft c_d
+  | x  7 foo {} draft c_d
   |/
   o  2 foo {} draft c_c
   |
@@ -249,11 +249,11 @@
 
   $ hg stack
   ### target: foo (branch) (2 heads)
-  b6: c_h
-  b5: c_g
+  b6$ c_f (unstable)
+  b5$ c_e (unstable)
   b2^ c_D (base current)
-  b4$ c_f (unstable)
-  b3$ c_e (unstable)
+  b4: c_h
+  b3: c_g
   b2@ c_D (current)
   b1: c_c
   b0^ c_b (base)
@@ -262,17 +262,17 @@
 ----------------------------------------------------------
 
   $ hg log --graph
-  o  13 foo {} draft c_h
+  o  15 foo {} draft c_h
   |
-  o  12 foo {} draft c_g
+  o  14 foo {} draft c_g
   |
-  @  11 foo {} draft c_D
+  @  13 foo {} draft c_D
   |
-  | o  8 foo {} draft c_f
+  | o  9 foo {} draft c_f
   | |
-  | o  7 foo {} draft c_e
+  | o  8 foo {} draft c_e
   | |
-  | x  6 foo {} draft c_d
+  | x  7 foo {} draft c_d
   |/
   o  2 foo {} draft c_c
   |
@@ -283,22 +283,22 @@
 
   $ hg stack
   ### target: foo (branch) (2 heads)
-  b6: c_h
-  b5: c_g
+  b6$ c_f (unstable)
+  b5$ c_e (unstable)
   b2^ c_D (base current)
-  b4$ c_f (unstable)
-  b3$ c_e (unstable)
+  b4: c_h
+  b3: c_g
   b2@ c_D (current)
   b1: c_c
   b0^ c_b (base)
   $ hg phase --public b1
   $ hg stack
   ### target: foo (branch) (2 heads)
-  b5: c_h
-  b4: c_g
+  b5$ c_f (unstable)
+  b4$ c_e (unstable)
   b1^ c_D (base current)
-  b3$ c_f (unstable)
-  b2$ c_e (unstable)
+  b3: c_h
+  b2: c_g
   b1@ c_D (current)
   b0^ c_c (base)
 
@@ -309,7 +309,7 @@
   changed topic on 2 changes
   $ hg stack
   ### target: foo (branch)
-  b3$ c_f (unstable)
-  b2$ c_e (unstable)
+  b3: c_h
+  b2: c_g
   b1@ c_D (current)
   b0^ c_c (base)
--- a/tests/test-topic-change.t
+++ b/tests/test-topic-change.t
@@ -180,13 +180,13 @@
      Added a  ()
   
   $ hg rebase -s 11 -d 22
-  rebasing 11:1315a3808ed0 "Added d" (foo)
+  rebasing 11:1315a3808ed0 "Added d"
   switching to topic foo
-  rebasing 16:edc4a6b9ea60 "Added e" (bar)
+  rebasing 16:edc4a6b9ea60 "Added e"
   switching to topic bar
-  rebasing 17:82e0b14f4d9e "Added f" (bar)
-  rebasing 18:e7b418d79a05 "Added g" (bar)
-  rebasing 20:c2d6b7df5dcf "Added h" (foobar)
+  rebasing 17:82e0b14f4d9e "Added f"
+  rebasing 18:e7b418d79a05 "Added g"
+  rebasing 20:c2d6b7df5dcf "Added h"
   switching to topic foobar
 
   $ hg glog
@@ -223,7 +223,7 @@
   $ hg ci --amend
   active topic 'wat' grew its first changeset
   $ hg glog -r .
-  @  28:61470c956807 {wat}
+  @  29:61470c956807 {wat}
   |  Added h  ()
   |
 
@@ -232,7 +232,7 @@
   $ hg topic --clear
   $ hg ci --amend
   $ hg glog -r .
-  @  29:b584fa49f42e {}
+  @  31:b584fa49f42e {}
   |  Added h  ()
   |
 
@@ -243,7 +243,7 @@
   $ hg ci --amend
   active topic 'watwat' grew its first changeset
   $ hg glog -r .
-  @  30:a24c31c35013 {watwat}
+  @  33:a24c31c35013 {watwat}
   |  Added h  ()
   |
 
@@ -269,7 +269,7 @@
 
   $ hg bookmark book
   $ hg glog
-  @  30:a24c31c35013 {watwat}
+  @  33:a24c31c35013 {watwat}
   |  Added h  (book)
   |
   o  26:7c76c271395f {bar}
@@ -301,7 +301,7 @@
   changed topic on 1 changes
 
   $ hg glog
-  @  31:c48d6d71b2d9 {}
+  @  34:c48d6d71b2d9 {}
   |  Added h  (book)
   |
   o  26:7c76c271395f {bar}
@@ -333,7 +333,7 @@
   switching to topic movebook
   changed topic on 1 changes
   $ hg glog
-  @  32:1b83d11095b9 {movebook}
+  @  35:1b83d11095b9 {movebook}
   |  Added h  (book bookboo)
   |
   o  26:7c76c271395f {bar}
@@ -374,10 +374,10 @@
   changed topic on 1 changes
 
   $ hg glog
-  @  33:894983f69e69 {watwat}
+  @  36:894983f69e69 {watwat}
   |  Added g  ()
   |
-  | o  32:1b83d11095b9 {movebook}
+  | o  35:1b83d11095b9 {movebook}
   | |  Added h  (book bookboo)
   | |
   | x  26:7c76c271395f {bar}
@@ -402,4 +402,4 @@
      Added a  ()
   
   $ hg phase -r .
-  33: secret
+  36: secret
--- a/tests/test-topic-dest.t
+++ b/tests/test-topic-dest.t
@@ -109,7 +109,7 @@
   switching to topic elephant
   1 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ hg rebase
-  rebasing 4:cb7ae72f4a80 "babar" (elephant)
+  rebasing 4:cb7ae72f4a80 "babar"
   switching to topic elephant
   $ hg log -G
   @  7 (elephant) babar
@@ -130,7 +130,7 @@
   switching to topic monkey
   1 files updated, 0 files merged, 3 files removed, 0 files unresolved
   $ hg rebase
-  rebasing 5:d832ddc604ec "zephir" (monkey)
+  rebasing 5:d832ddc604ec "zephir"
   switching to topic monkey
   $ hg log -G
   @  8 (monkey) zephir
@@ -173,7 +173,7 @@
   o  0 () c_alpha
   
   $ hg rebase
-  rebasing 9:d79a104e2902 "Huc" (tip monkey)
+  rebasing 9:d79a104e2902 "Huc" (tip)
   $ hg log -G
   @  10 (monkey) Huc
   |
@@ -225,7 +225,7 @@
   switching to topic elephant
   1 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ hg rebase -d 'desc(c_zeta)' # make sure tip is elsewhere
-  rebasing 7:8d0b77140b05 "babar" (elephant)
+  rebasing 7:8d0b77140b05 "babar"
   switching to topic elephant
   $ hg up monkey
   switching to topic monkey
@@ -274,7 +274,6 @@
   adding manifests
   adding file changes
   added 3 changesets with 3 changes to 3 files
-  new changesets 13ec05df14e1:6482f08916a5
   updating to branch default
   3 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ cd other
@@ -288,7 +287,6 @@
   adding manifests
   adding file changes
   added 3 changesets with 3 changes to 3 files (+1 heads)
-  new changesets 6f5edd7450bb:c9c03b99196b
   rebasing 3:dbc48dd9e743 "c_other"
   $ hg log -G
   @  7 () c_other
--- a/tests/test-topic-push-concurrent-on.t
+++ b/tests/test-topic-push-concurrent-on.t
@@ -93,7 +93,7 @@
   $ hg outgoing -G
   comparing with $TESTTMP/main (glob)
   searching for changes
-  @  3 mountain  draft CC
+  @  4 mountain  draft CC
   
   $ hg push 
   pushing to $TESTTMP/main (glob)
@@ -108,7 +108,7 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files (+1 heads)
-  1 new obsolescence markers
+  2 new obsolescence markers
 
 Including on non-publishing
 
@@ -119,7 +119,7 @@
   adding manifests
   adding file changes
   added 3 changesets with 3 changes to 3 files (+1 heads)
-  1 new obsolescence markers
+  2 new obsolescence markers
 
 Testing topic behavior
 ======================
@@ -136,9 +136,9 @@
   $ hg commit -m 'CD'
   active topic 'babar' grew its first changeset
   $ hg log -G # keep track of phase because I saw some strange bug during developement
-  @  4 default babar draft CD
+  @  5 default babar draft CD
   |
-  | o  3 mountain  public CC
+  | o  4 mountain  public CC
   |/
   | o  1 default  public CB
   |/
@@ -155,9 +155,9 @@
   adding file changes
   added 1 changesets with 1 changes to 1 files (+1 heads)
   $ hg log -G
-  @  4 default babar draft CD
+  @  5 default babar draft CD
   |
-  | o  3 mountain  public CC
+  | o  4 mountain  public CC
   |/
   | o  1 default  public CB
   |/
@@ -173,9 +173,9 @@
   (merge or see 'hg help push' for details about pushing new heads)
   [255]
   $ hg log -G
-  @  4 default babar draft CD
+  @  5 default babar draft CD
   |
-  | o  3 mountain  public CC
+  | o  4 mountain  public CC
   |/
   | o  1 default  public CB
   |/
@@ -194,11 +194,11 @@
   $ hg commit -m 'CE'
   active topic 'celeste' grew its first changeset
   $ hg log -G # keep track of phase because I saw some strange bug during developement
-  @  5 default celeste draft CE
+  @  6 default celeste draft CE
   |
-  | o  4 default babar draft CD
+  | o  5 default babar draft CD
   |/
-  | o  3 mountain  public CC
+  | o  4 mountain  public CC
   |/
   | o  1 default  public CB
   |/
@@ -218,11 +218,11 @@
   (merge or see 'hg help push' for details about pushing new heads)
   [255]
   $ hg log -G
-  @  5 default celeste draft CE
+  @  6 default celeste draft CE
   |
-  | o  4 default babar draft CD
+  | o  5 default babar draft CD
   |/
-  | o  3 mountain  public CC
+  | o  4 mountain  public CC
   |/
   | o  1 default  public CB
   |/
@@ -241,11 +241,11 @@
   remote: adding file changes
   remote: added 1 changesets with 1 changes to 1 files (+1 heads)
   $ hg log -G
-  @  5 default celeste draft CE
+  @  6 default celeste draft CE
   |
-  | o  4 default babar draft CD
+  | o  5 default babar draft CD
   |/
-  | o  3 mountain  public CC
+  | o  4 mountain  public CC
   |/
   | o  1 default  public CB
   |/
@@ -261,11 +261,11 @@
   (merge or see 'hg help push' for details about pushing new heads)
   [255]
   $ hg log -G
-  @  5 default celeste draft CE
+  @  6 default celeste draft CE
   |
-  | o  4 default babar draft CD
+  | o  5 default babar draft CD
   |/
-  | o  3 mountain  public CC
+  | o  4 mountain  public CC
   |/
   | o  1 default  public CB
   |/
@@ -283,13 +283,13 @@
   $ hg add fff
   $ hg commit -m 'CF'
   $ hg log -G
-  @  6 default babar draft CF
+  @  7 default babar draft CF
   |
-  | o  5 default celeste draft CE
+  | o  6 default celeste draft CE
   | |
-  | | o  4 default babar draft CD
+  | | o  5 default babar draft CD
   | |/
-  | | o  3 mountain  public CC
+  | | o  4 mountain  public CC
   | |/
   o |  1 default  public CB
   |/
@@ -321,17 +321,17 @@
   (branch merge, don't forget to commit)
   $ hg commit -m 'CM'
   $ hg log -G
-  @    8 default babar draft CM
+  @    9 default babar draft CM
   |\
-  | o  7 default  draft CG
+  | o  8 default  draft CG
   | |
-  o |  6 default babar draft CF
+  o |  7 default babar draft CF
   | |
-  | | o  5 default celeste draft CE
+  | | o  6 default celeste draft CE
   | |/
-  | | o  4 default babar draft CD
+  | | o  5 default babar draft CD
   | |/
-  | | o  3 mountain  public CC
+  | | o  4 mountain  public CC
   | |/
   o |  1 default  public CB
   |/
--- a/tests/test-topic-push.t
+++ b/tests/test-topic-push.t
@@ -89,7 +89,7 @@
   $ hg outgoing -G
   comparing with $TESTTMP/main (glob)
   searching for changes
-  @  3 mountain  draft CC
+  @  4 mountain  draft CC
   
   $ hg push 
   pushing to $TESTTMP/main (glob)
@@ -104,7 +104,7 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files (+1 heads)
-  1 new obsolescence markers
+  2 new obsolescence markers
 
 Including on non-publishing
 
@@ -115,7 +115,7 @@
   adding manifests
   adding file changes
   added 3 changesets with 3 changes to 3 files (+1 heads)
-  1 new obsolescence markers
+  2 new obsolescence markers
 
 Testing topic behavior
 ======================
@@ -132,9 +132,9 @@
   $ hg commit -m 'CD'
   active topic 'babar' grew its first changeset
   $ hg log -G # keep track of phase because I saw some strange bug during developement
-  @  4 default babar draft CD
+  @  5 default babar draft CD
   |
-  | o  3 mountain  public CC
+  | o  4 mountain  public CC
   |/
   | o  1 default  public CB
   |/
@@ -151,9 +151,9 @@
   adding file changes
   added 1 changesets with 1 changes to 1 files (+1 heads)
   $ hg log -G
-  @  4 default babar draft CD
+  @  5 default babar draft CD
   |
-  | o  3 mountain  public CC
+  | o  4 mountain  public CC
   |/
   | o  1 default  public CB
   |/
@@ -178,13 +178,13 @@
   $ echo bbb >> bbb
   $ hg commit -m "C'B"
   $ hg log -G
-  @  6 default  draft C'B
+  @  7 default  draft C'B
   |
-  | o  5 default babar draft C'A
+  | o  6 default babar draft C'A
   | |
-  | o  4 default babar draft CD
+  | o  5 default babar draft CD
   | |
-  | | o  3 mountain  public CC
+  | | o  4 mountain  public CC
   | |/
   o |  1 default  public CB
   |/
@@ -193,7 +193,7 @@
   $ hg outgoing draft --topic babar
   comparing with $TESTTMP/draft
   searching for changes
-  5 default babar draft C'A
+  6 default babar draft C'A
   $ hg push draft --topic babar
   pushing to $TESTTMP/draft
   searching for changes
@@ -224,9 +224,9 @@
   (merge or see 'hg help push' for details about pushing new heads)
   [255]
   $ hg log -G
-  @  4 default babar draft CD
+  @  5 default babar draft CD
   |
-  | o  3 mountain  public CC
+  | o  4 mountain  public CC
   |/
   | o  1 default  public CB
   |/
@@ -245,11 +245,11 @@
   $ hg commit -m 'CE'
   active topic 'celeste' grew its first changeset
   $ hg log -G # keep track of phase because I saw some strange bug during developement
-  @  5 default celeste draft CE
+  @  6 default celeste draft CE
   |
-  | o  4 default babar draft CD
+  | o  5 default babar draft CD
   |/
-  | o  3 mountain  public CC
+  | o  4 mountain  public CC
   |/
   | o  1 default  public CB
   |/
@@ -269,11 +269,11 @@
   (merge or see 'hg help push' for details about pushing new heads)
   [255]
   $ hg log -G
-  @  5 default celeste draft CE
+  @  6 default celeste draft CE
   |
-  | o  4 default babar draft CD
+  | o  5 default babar draft CD
   |/
-  | o  3 mountain  public CC
+  | o  4 mountain  public CC
   |/
   | o  1 default  public CB
   |/
@@ -292,11 +292,11 @@
   remote: adding file changes
   remote: added 1 changesets with 1 changes to 1 files (+1 heads)
   $ hg log -G
-  @  5 default celeste draft CE
+  @  6 default celeste draft CE
   |
-  | o  4 default babar draft CD
+  | o  5 default babar draft CD
   |/
-  | o  3 mountain  public CC
+  | o  4 mountain  public CC
   |/
   | o  1 default  public CB
   |/
@@ -312,11 +312,11 @@
   (merge or see 'hg help push' for details about pushing new heads)
   [255]
   $ hg log -G
-  @  5 default celeste draft CE
+  @  6 default celeste draft CE
   |
-  | o  4 default babar draft CD
+  | o  5 default babar draft CD
   |/
-  | o  3 mountain  public CC
+  | o  4 mountain  public CC
   |/
   | o  1 default  public CB
   |/
@@ -334,13 +334,13 @@
   $ hg add fff
   $ hg commit -m 'CF'
   $ hg log -G
-  @  6 default babar draft CF
+  @  7 default babar draft CF
   |
-  | o  5 default celeste draft CE
+  | o  6 default celeste draft CE
   | |
-  | | o  4 default babar draft CD
+  | | o  5 default babar draft CD
   | |/
-  | | o  3 mountain  public CC
+  | | o  4 mountain  public CC
   | |/
   o |  1 default  public CB
   |/
@@ -372,17 +372,17 @@
   (branch merge, don't forget to commit)
   $ hg commit -m 'CM'
   $ hg log -G
-  @    8 default babar draft CM
+  @    9 default babar draft CM
   |\
-  | o  7 default  draft CG
+  | o  8 default  draft CG
   | |
-  o |  6 default babar draft CF
+  o |  7 default babar draft CF
   | |
-  | | o  5 default celeste draft CE
+  | | o  6 default celeste draft CE
   | |/
-  | | o  4 default babar draft CD
+  | | o  5 default babar draft CD
   | |/
-  | | o  3 mountain  public CC
+  | | o  4 mountain  public CC
   | |/
   o |  1 default  public CB
   |/
--- a/tests/test-topic-rebase.t
+++ b/tests/test-topic-rebase.t
@@ -71,7 +71,7 @@
   switching to topic myfeature
   1 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ hg rebase
-  rebasing 1:39e7a938055e "add feature1" (myfeature)
+  rebasing 1:39e7a938055e "add feature1"
   switching to topic myfeature
   $ hg stack
   ### topic: myfeature
@@ -120,7 +120,7 @@
   switching to topic myotherfeature
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg rebase
-  rebasing 5:81f854012ec5 "myotherfeature1" (myotherfeature)
+  rebasing 5:81f854012ec5 "myotherfeature1"
   merging file
   warning: conflicts while merging file! (edit, then use 'hg resolve --mark')
   switching to topic myotherfeature
@@ -134,7 +134,7 @@
   (no more unresolved files)
   continue: hg rebase --continue
   $ hg rebase --continue
-  rebasing 5:81f854012ec5 "myotherfeature1" (myotherfeature)
+  rebasing 5:81f854012ec5 "myotherfeature1"
 
 Check the the commit has the right topic
 
--- a/tests/test-topic-stack-data.t
+++ b/tests/test-topic-stack-data.t
@@ -111,7 +111,7 @@
   commit: (clean)
   update: 2 new changesets (update)
   phases: 22 draft
-  orphan: 3 changesets
+  unstable: 3 changesets
   topic:  foo
   $ hg log --graph -T '{desc} ({branch}) [{topic}]'
   @  add foo_b (lake) []
--- a/tests/test-topic-stack.t
+++ b/tests/test-topic-stack.t
@@ -263,7 +263,7 @@
   $ echo bbb > ddd
   $ hg commit --amend
   $ hg log -G
-  @  6 default {foo} draft c_d
+  @  7 default {foo} draft c_d
   |
   | o  5 default {foo} draft c_f
   | |
@@ -310,7 +310,7 @@
 
   $ hg log -r 'stack()'
   2 default {foo} draft c_c
-  6 default {foo} draft c_d
+  7 default {foo} draft c_d
   4 default {foo} draft c_e
   5 default {foo} draft c_f
 
@@ -328,14 +328,14 @@
 Make things linear again
 
   $ hg rebase -s 'desc(c_e)' -d 'desc(c_d) - obsolete()'
-  rebasing 4:0f9ac936c87d "c_e" (foo)
-  rebasing 5:6559e6d93aea "c_f" (foo)
+  rebasing 4:0f9ac936c87d "c_e"
+  rebasing 5:6559e6d93aea "c_f"
   $ hg log -G
-  o  8 default {foo} draft c_f
+  o  9 default {foo} draft c_f
   |
-  o  7 default {foo} draft c_e
+  o  8 default {foo} draft c_e
   |
-  @  6 default {foo} draft c_d
+  @  7 default {foo} draft c_d
   |
   o  2 default {foo} draft c_c
   |
@@ -356,15 +356,15 @@
   $ hg add hhh
   $ hg commit -m c_h
   $ hg log -G
-  @  10 default {foo} draft c_h
+  @  11 default {foo} draft c_h
   |
-  o  9 default {foo} draft c_g
+  o  10 default {foo} draft c_g
   |
-  | o  8 default {foo} draft c_f
+  | o  9 default {foo} draft c_f
   | |
-  | o  7 default {foo} draft c_e
+  | o  8 default {foo} draft c_e
   |/
-  o  6 default {foo} draft c_d
+  o  7 default {foo} draft c_d
   |
   o  2 default {foo} draft c_c
   |
@@ -378,11 +378,11 @@
   $ hg top -l
   ### topic: foo (2 heads)
   ### target: default (branch)
-  t6@ c_h (current)
-  t5: c_g
+  t6: c_f
+  t5: c_e
   t2^ c_d (base)
-  t4: c_f
-  t3: c_e
+  t4@ c_h (current)
+  t3: c_g
   t2: c_d
   t1: c_c
   t0^ c_b (base)
@@ -397,20 +397,20 @@
   $ echo ccc > ddd
   $ hg commit --amend -m 'c_D' 
   $ hg rebase -d . -s 'desc(c_g)'
-  rebasing 9:81264ae8a36a "c_g" (foo)
-  rebasing 10:fde5f5941642 "c_h" (foo)
+  rebasing 10:81264ae8a36a "c_g"
+  rebasing 11:fde5f5941642 "c_h"
   $ hg log -G
-  o  13 default {foo} draft c_h
+  o  15 default {foo} draft c_h
   |
-  o  12 default {foo} draft c_g
+  o  14 default {foo} draft c_g
   |
-  @  11 default {foo} draft c_D
+  @  13 default {foo} draft c_D
   |
-  | o  8 default {foo} draft c_f
+  | o  9 default {foo} draft c_f
   | |
-  | o  7 default {foo} draft c_e
+  | o  8 default {foo} draft c_e
   | |
-  | x  6 default {foo} draft c_d
+  | x  7 default {foo} draft c_d
   |/
   o  2 default {foo} draft c_c
   |
@@ -422,11 +422,11 @@
   $ hg topic --list
   ### topic: foo (2 heads)
   ### target: default (branch)
-  t6: c_h
-  t5: c_g
+  t6$ c_f (unstable)
+  t5$ c_e (unstable)
   t2^ c_D (base current)
-  t4$ c_f (unstable)
-  t3$ c_e (unstable)
+  t4: c_h
+  t3: c_g
   t2@ c_D (current)
   t1: c_c
   t0^ c_b (base)
@@ -443,17 +443,17 @@
 ==============================================================================
 
   $ hg log --graph
-  o  13 default {foo} draft c_h
+  o  15 default {foo} draft c_h
   |
-  o  12 default {foo} draft c_g
+  o  14 default {foo} draft c_g
   |
-  @  11 default {foo} draft c_D
+  @  13 default {foo} draft c_D
   |
-  | o  8 default {foo} draft c_f
+  | o  9 default {foo} draft c_f
   | |
-  | o  7 default {foo} draft c_e
+  | o  8 default {foo} draft c_e
   | |
-  | x  6 default {foo} draft c_d
+  | x  7 default {foo} draft c_d
   |/
   o  2 default {foo} draft c_c
   |
@@ -463,19 +463,19 @@
   
 Converting into a linear chain
   $ hg rebase -s 'desc("c_e") - obsolete()' -d 'desc("c_h") - obsolete()'
-  rebasing 7:215bc359096a "c_e" (foo)
-  rebasing 8:ec9267b3f33f "c_f" (foo)
+  rebasing 8:215bc359096a "c_e"
+  rebasing 9:ec9267b3f33f "c_f"
 
   $ hg log -G
-  o  15 default {foo} draft c_f
+  o  17 default {foo} draft c_f
   |
-  o  14 default {foo} draft c_e
+  o  16 default {foo} draft c_e
   |
-  o  13 default {foo} draft c_h
+  o  15 default {foo} draft c_h
   |
-  o  12 default {foo} draft c_g
+  o  14 default {foo} draft c_g
   |
-  @  11 default {foo} draft c_D
+  @  13 default {foo} draft c_D
   |
   o  2 default {foo} draft c_c
   |
@@ -488,19 +488,19 @@
   switching to topic foobar
   changed topic on 2 changes
   $ hg log -G
-  @  17 default {foobar} draft c_D
+  @  19 default {foobar} draft c_D
   |
-  | o  16 default {foobar} draft c_e
+  | o  18 default {foobar} draft c_e
   | |
-  | | o  15 default {foo} draft c_f
+  | | o  17 default {foo} draft c_f
   | | |
-  | | x  14 default {foo} draft c_e
+  | | x  16 default {foo} draft c_e
   | |/
-  | o  13 default {foo} draft c_h
+  | o  15 default {foo} draft c_h
   | |
-  | o  12 default {foo} draft c_g
+  | o  14 default {foo} draft c_g
   | |
-  | x  11 default {foo} draft c_D
+  | x  13 default {foo} draft c_D
   |/
   o  2 default {foo} draft c_c
   |
@@ -509,30 +509,30 @@
   o  0 default {} public c_a
   
   $ hg rebase -s 'desc("c_f") - obsolete()' -d 'desc("c_e") - obsolete()'
-  rebasing 15:77082e55de88 "c_f" (foo)
+  rebasing 17:77082e55de88 "c_f"
   switching to topic foo
   switching to topic foobar
   $ hg rebase -s 'desc("c_g") - obsolete()' -d 'desc("c_D") - obsolete()'
-  rebasing 12:0c3e8aed985d "c_g" (foo)
+  rebasing 14:0c3e8aed985d "c_g"
   switching to topic foo
-  rebasing 13:b9e4f3709bc5 "c_h" (foo)
-  rebasing 16:4bc813530301 "c_e" (foobar)
+  rebasing 15:b9e4f3709bc5 "c_h"
+  rebasing 18:4bc813530301 "c_e"
   switching to topic foobar
-  rebasing 18:4406ea4be852 "c_f" (tip foo)
+  rebasing 20:4406ea4be852 "c_f" (tip)
   switching to topic foo
   switching to topic foobar
   $ hg up
   3 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg log --graph
-  o  22 default {foo} draft c_f
+  o  24 default {foo} draft c_f
   |
-  @  21 default {foobar} draft c_e
+  @  23 default {foobar} draft c_e
   |
-  o  20 default {foo} draft c_h
+  o  22 default {foo} draft c_h
   |
-  o  19 default {foo} draft c_g
+  o  21 default {foo} draft c_g
   |
-  o  17 default {foobar} draft c_D
+  o  19 default {foobar} draft c_D
   |
   o  2 default {foo} draft c_c
   |
@@ -798,12 +798,12 @@
 get things linear again
 
   $ hg rebase -r t1 -d default
-  rebasing 16:1d84ec948370 "c_D" (tip blue)
+  rebasing 16:1d84ec948370 "c_D" (tip)
   switching to topic blue
   $ hg rebase -r t2 -d t1
-  rebasing 13:3ab2eedae500 "c_G" (blue)
+  rebasing 13:3ab2eedae500 "c_G"
   $ hg rebase -r t3 -d t2
-  rebasing 8:3bfe800e0486 "c_I" (blue)
+  rebasing 8:3bfe800e0486 "c_I"
   $ hg stack
   ### topic: blue
   ### target: default (branch)
@@ -856,11 +856,11 @@
   Done splitting? [yN] y
 
   $ hg --config extensions.evolve= obslog --all
-  o  dde94df880e9 (21) c_G
+  o  dde94df880e9 (22) c_G
   |
-  | @  e7ea874afbd5 (22) c_G
+  | @  e7ea874afbd5 (23) c_G
   |/
-  x  b24bab30ac12 (20) c_G
+  x  b24bab30ac12 (21) c_G
   |    rewritten(parent, content) as dde94df880e9, e7ea874afbd5 by test (Thu Jan 01 00:00:00 1970 +0000)
   |
   x  907f7d3c2333 (18) c_G
--- a/tests/test-topic-tutorial.t
+++ b/tests/test-topic-tutorial.t
@@ -380,7 +380,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files (+1 heads)
-  new changesets 6104862e8b84
   (run 'hg heads' to see heads)
 
   $ hg log -G
@@ -484,10 +483,10 @@
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 
   $ hg rebase
-  rebasing 1:13900241408b "adding condiments" (food)
+  rebasing 1:13900241408b "adding condiments"
   merging shopping
   switching to topic food
-  rebasing 2:287de11b401f "adding fruits" (food)
+  rebasing 2:287de11b401f "adding fruits"
   merging shopping
 
   $ hg log --graph
@@ -822,7 +821,6 @@
   adding manifests
   adding file changes
   added 2 changesets with 2 changes to 1 files (+1 heads)
-  new changesets f2d6cacc6115:fbff9bc37a43
   (run 'hg heads' to see heads)
 
 There are new changes! We can simply use ``hg rebase`` to update our
@@ -1036,12 +1034,12 @@
 #endif
 
   $ hg rebase
-  rebasing 6:183984ef46d1 "Adding hammer" (tools)
+  rebasing 6:183984ef46d1 "Adding hammer"
   merging shopping
   switching to topic tools
-  rebasing 7:cffff85af537 "Adding saw" (tools)
+  rebasing 7:cffff85af537 "Adding saw"
   merging shopping
-  rebasing 8:34255b455dac "Adding drill" (tools)
+  rebasing 8:34255b455dac "Adding drill"
   merging shopping
 
 But what about the other topic? You can use 'hg topics --verbose' to see
@@ -1068,10 +1066,10 @@
 multiple *public* heads it would create on that branch:
 
   $ hg rebase -b drinks
-  rebasing 9:8dfa45bd5e0c "Adding apple juice" (drinks)
+  rebasing 9:8dfa45bd5e0c "Adding apple juice"
   merging shopping
   switching to topic drinks
-  rebasing 10:70dfa201ed73 "Adding orange juice" (drinks)
+  rebasing 10:70dfa201ed73 "Adding orange juice"
   merging shopping
   switching to topic tools
 
@@ -1184,7 +1182,7 @@
   t0^ add a pair of shoes (base)
 
   $ hg amend -m "Adding hammer to the shopping list"
-  2 new orphan changesets
+  2 new unstable changesets
 
 Understanding the current situation with hg log is not so easy, because
 it shows too many things:
@@ -1213,21 +1211,21 @@
   | |  topic:       tools
   | |  user:        test
   | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  instability: orphan
+  | |  trouble:     unstable
   | |  summary:     Adding drill
   | |
   | o  changeset:   14:d4f97f32f8a1
   | |  topic:       tools
   | |  user:        test
   | |  date:        Thu Jan 01 00:00:00 1970 +0000
-  | |  instability: orphan
+  | |  trouble:     unstable
   | |  summary:     Adding saw
   | |
   | x  changeset:   13:a8ab3599d53d
   |/   topic:       tools
   |    user:        test
   |    date:        Thu Jan 01 00:00:00 1970 +0000
-  |    obsolete:    reworded using amend as 18:b7509bd417f8
+  |    obsolete:    reworded as b7509bd417f8
   |    summary:     Adding hammer
   |
   o  changeset:   12:fbff9bc37a43
@@ -1756,9 +1754,9 @@
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
 
   $ hg rebase
-  rebasing 19:d5c51ee5762a "Adding saw" (tools)
+  rebasing 19:d5c51ee5762a "Adding saw"
   merging shopping
-  rebasing 20:bae3758e46bf "Adding drill" (tools)
+  rebasing 20:bae3758e46bf "Adding drill"
   merging shopping
 
   $ hg stack
@@ -1826,7 +1824,6 @@
   adding file changes
   added 4 changesets with 4 changes to 1 files (+1 heads)
   8 new obsolescence markers
-  new changesets b7509bd417f8:2d084ac00115
   (run 'hg heads' to see heads)
 
   $ hg topics --verbose
@@ -1870,7 +1867,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  new changesets 0d409663a1fd
   (run 'hg update' to get a working copy)
 
   $ hg update
--- a/tests/test-topic.t
+++ b/tests/test-topic.t
@@ -466,7 +466,6 @@
   adding manifests
   adding file changes
   added 3 changesets with 3 changes to 1 files
-  new changesets 7c34953036d6:ae074045b7a7
   active topic 'query' is now empty
   (run 'hg update' to get a working copy)
   $ hg topics
@@ -481,7 +480,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files (+1 heads)
-  new changesets 0469d521db49
   (run 'hg heads' to see heads)
   $ hg topics
      fran  (1 changesets)
--- a/tests/test-touch.t
+++ b/tests/test-touch.t
@@ -18,7 +18,7 @@
 Basic usage
 
   $ hg log -G
-  @  0:[0-9a-f]{12} a (re)
+  @  0:e93df3427f45 a
   
   $ hg touch .
   $ hg log -G
@@ -36,7 +36,7 @@
   working directory parent is obsolete! (*) (glob)
   (use 'hg evolve' to update to its successor: *) (glob)
   $ hg log -G
-  o  2:[0-9a-f]{12} ab (re)
+  o  3:[0-9a-f]{12} ab (re)
   
   @  1:[0-9a-f]{12} a (re)
   
@@ -44,24 +44,22 @@
   [1] a
   reviving this changeset will create divergence unless you make a duplicate.
   (a)llow divergence or (d)uplicate the changeset?  a
-  2 new content-divergent changesets
+  2 new divergent changesets
   $ hg log -G
-  @  3:[0-9a-f]{12} a (re)
+  @  4:[0-9a-f]{12} a (re)
   
-  o  2:[0-9a-f]{12} ab (re)
+  o  3:[0-9a-f]{12} ab (re)
   
   $ hg prune 3
-  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
-  working directory now at 000000000000
   1 changesets pruned
 
 Duplicate
 
   $ hg touch --duplicate .
   $ hg log -G
-  @  4:[0-9a-f]{12} (re)
+  @  5:[0-9a-f]{12} a (re)
   
-  o  2:[0-9a-f]{12} ab (re)
+  o  4:[0-9a-f]{12} a (re)
   
 
 Multiple touch
@@ -73,23 +71,23 @@
   $ hg add d
   $ hg commit -m d
   $ hg log -G
-  @  6:[0-9a-f]{12} d (re)
+  @  7:[0-9a-f]{12} d (re)
   |
-  o  5:[0-9a-f]{12} c (re)
+  o  6:[0-9a-f]{12} c (re)
   |
-  o  4:[0-9a-f]{12} (re)
+  o  5:[0-9a-f]{12} a (re)
   
-  o  2:[0-9a-f]{12} ab (re)
+  o  4:[0-9a-f]{12} a (re)
   
-  $ hg touch .^:.
+  $ hg touch 6:7
   $ hg log -G
-  @  8:[0-9a-f]{12} d (re)
+  @  9:[0-9a-f]{12} d (re)
   |
-  o  7:[0-9a-f]{12} c (re)
+  o  8:[0-9a-f]{12} c (re)
   |
-  o  4:[0-9a-f]{12} (re)
+  o  5:[0-9a-f]{12} a (re)
   
-  o  2:[0-9a-f]{12} ab (re)
+  o  4:[0-9a-f]{12} a (re)
   
 
 check move data kept after rebase on touch:
@@ -107,36 +105,10 @@
   1 files updated, 0 files merged, 1 files removed, 0 files unresolved
 
   $ hg touch
-  1 new orphan changesets
+  1 new unstable changesets
 
-  $ hg log -G --hidden
-  @  11:[0-9a-f]{12} gna1 (re)
-  |
-  | o  10:[0-9a-f]{12} move (re)
-  | |
-  | x  9:[0-9a-f]{12} gna1 (re)
-  |/
-  o  8:[0-9a-f]{12} d (re)
-  |
-  o  7:[0-9a-f]{12} c (re)
-  |
-  | x  6:[0-9a-f]{12} d (re)
-  | |
-  | x  5:[0-9a-f]{12} c (re)
-  |/
-  o  4:[0-9a-f]{12} (re)
-  
-  x  3:[0-9a-f]{12} a (re)
-  
-  o  2:[0-9a-f]{12} ab (re)
-  
-  x  1:[0-9a-f]{12} a (re)
-  
-  x  0:[0-9a-f]{12} a (re)
-  
-
-  $ hg rebase -s 10 -d 11
-  rebasing 10:[0-9a-f]{12} "move" (re)
+  $ hg rebase -s 11 -d 12
+  rebasing 11:* "move" (glob)
   $ hg st -C --change=tip
   A gna2
     gna1
@@ -144,12 +116,12 @@
 
 check that the --duplicate option does not create divergence
 
-  $ hg touch --duplicate 10 --hidden
-  1 new orphan changesets
+  $ hg touch --duplicate 11 --hidden
+  1 new unstable changesets
 
 check that reviving a changeset with no successor does not show the prompt
 
-  $ hg prune 13
+  $ hg prune 14
   1 changesets pruned
-  $ hg touch 13 --hidden
-  1 new orphan changesets
+  $ hg touch 14 --hidden
+  1 new unstable changesets
--- a/tests/test-tutorial.t
+++ b/tests/test-tutorial.t
@@ -311,17 +311,17 @@
       		width=0.5];
       	0 -> 1	 [arrowhead=none,
       		penwidth=2.0];
-      	3	 [fillcolor="#9999FF",
+      	4	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
       		height=0.5,
-      		label=3,
+      		label=4,
       		pin=true,
-      		pos="1,3!",
+      		pos="1,4!",
       		shape=pentagon,
       		style=filled,
       		width=0.5];
-      	1 -> 3	 [arrowhead=none,
+      	1 -> 4	 [arrowhead=none,
       		penwidth=2.0];
       }
 #endif
@@ -366,7 +366,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files (+1 heads)
-  new changesets 9ca060c80d74
   (run 'hg heads' to see heads, 'hg merge' to merge)
 
 I now have a new head. Note that this remote head is immutable.
@@ -412,6 +411,18 @@
       		width=0.5];
       	0 -> 1	 [arrowhead=none,
       		penwidth=2.0];
+      	5	 [fillcolor="#9999FF",
+      		fixedsize=true,
+      		group=default,
+      		height=0.5,
+      		label=5,
+      		pin=true,
+      		pos="1,5!",
+      		shape=circle,
+      		style=filled,
+      		width=0.5];
+      	0 -> 5	 [arrowhead=none,
+      		penwidth=2.0];
       	4	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
@@ -419,22 +430,10 @@
       		label=4,
       		pin=true,
       		pos="1,4!",
-      		shape=circle,
-      		style=filled,
-      		width=0.5];
-      	0 -> 4	 [arrowhead=none,
-      		penwidth=2.0];
-      	3	 [fillcolor="#9999FF",
-      		fixedsize=true,
-      		group=default,
-      		height=0.5,
-      		label=3,
-      		pin=true,
-      		pos="1,3!",
       		shape=pentagon,
       		style=filled,
       		width=0.5];
-      	1 -> 3	 [arrowhead=none,
+      	1 -> 4	 [arrowhead=none,
       		penwidth=2.0];
       }
 #endif
@@ -445,7 +444,7 @@
   $ hg rebase --dest 9ca060c80d74 --source 4d5dc8187023
   rebasing 1:4d5dc8187023 "adding condiment"
   merging shopping
-  rebasing 3:9d0363b81950 "adding fruit"
+  rebasing 4:9d0363b81950 "adding fruit"
   merging shopping
 
 
@@ -479,18 +478,6 @@
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	4	 [fillcolor="#9999FF",
-      		fixedsize=true,
-      		group=default,
-      		height=0.5,
-      		label=4,
-      		pin=true,
-      		pos="1,4!",
-      		shape=circle,
-      		style=filled,
-      		width=0.5];
-      	0 -> 4	 [arrowhead=none,
-      		penwidth=2.0];
       	5	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
@@ -498,10 +485,10 @@
       		label=5,
       		pin=true,
       		pos="1,5!",
-      		shape=pentagon,
+      		shape=circle,
       		style=filled,
       		width=0.5];
-      	4 -> 5	 [arrowhead=none,
+      	0 -> 5	 [arrowhead=none,
       		penwidth=2.0];
       	6	 [fillcolor="#9999FF",
       		fixedsize=true,
@@ -515,6 +502,18 @@
       		width=0.5];
       	5 -> 6	 [arrowhead=none,
       		penwidth=2.0];
+      	7	 [fillcolor="#9999FF",
+      		fixedsize=true,
+      		group=default,
+      		height=0.5,
+      		label=7,
+      		pin=true,
+      		pos="1,7!",
+      		shape=pentagon,
+      		style=filled,
+      		width=0.5];
+      	6 -> 7	 [arrowhead=none,
+      		penwidth=2.0];
       }
 #endif
 
@@ -581,18 +580,6 @@
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	4	 [fillcolor="#9999FF",
-      		fixedsize=true,
-      		group=default,
-      		height=0.5,
-      		label=4,
-      		pin=true,
-      		pos="1,4!",
-      		shape=circle,
-      		style=filled,
-      		width=0.5];
-      	0 -> 4	 [arrowhead=none,
-      		penwidth=2.0];
       	5	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
@@ -600,10 +587,10 @@
       		label=5,
       		pin=true,
       		pos="1,5!",
-      		shape=pentagon,
+      		shape=circle,
       		style=filled,
       		width=0.5];
-      	4 -> 5	 [arrowhead=none,
+      	0 -> 5	 [arrowhead=none,
       		penwidth=2.0];
       	6	 [fillcolor="#9999FF",
       		fixedsize=true,
@@ -617,6 +604,18 @@
       		width=0.5];
       	5 -> 6	 [arrowhead=none,
       		penwidth=2.0];
+      	7	 [fillcolor="#9999FF",
+      		fixedsize=true,
+      		group=default,
+      		height=0.5,
+      		label=7,
+      		pin=true,
+      		pos="1,7!",
+      		shape=pentagon,
+      		style=filled,
+      		width=0.5];
+      	6 -> 7	 [arrowhead=none,
+      		penwidth=2.0];
       }
 #endif
 
@@ -665,7 +664,7 @@
   $ hg up 'p1(10b8aeaa8cc8)' # going on "bathroom stuff" parent
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg grab fac207dec9f5 # moving "SPAM SPAM" to the working directory parent
-  rebasing 9:fac207dec9f5 "SPAM SPAM" (tip)
+  rebasing 10:fac207dec9f5 "SPAM SPAM" (tip)
   merging shopping
   ? files updated, 0 files merged, 0 files removed, 0 files unresolved (glob)
   $ hg log -G
@@ -701,18 +700,6 @@
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	4	 [fillcolor="#9999FF",
-      		fixedsize=true,
-      		group=default,
-      		height=0.5,
-      		label=4,
-      		pin=true,
-      		pos="1,4!",
-      		shape=circle,
-      		style=filled,
-      		width=0.5];
-      	0 -> 4	 [arrowhead=none,
-      		penwidth=2.0];
       	5	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
@@ -720,10 +707,10 @@
       		label=5,
       		pin=true,
       		pos="1,5!",
-      		shape=pentagon,
+      		shape=circle,
       		style=filled,
       		width=0.5];
-      	4 -> 5	 [arrowhead=none,
+      	0 -> 5	 [arrowhead=none,
       		penwidth=2.0];
       	6	 [fillcolor="#9999FF",
       		fixedsize=true,
@@ -737,29 +724,41 @@
       		width=0.5];
       	5 -> 6	 [arrowhead=none,
       		penwidth=2.0];
-      	8	 [fillcolor="#9999FF",
+      	7	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
       		height=0.5,
-      		label=8,
+      		label=7,
       		pin=true,
-      		pos="1,8!",
+      		pos="1,7!",
       		shape=pentagon,
       		style=filled,
       		width=0.5];
-      	6 -> 8	 [arrowhead=none,
+      	6 -> 7	 [arrowhead=none,
       		penwidth=2.0];
-      	10	 [fillcolor="#9999FF",
+      	9	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
       		height=0.5,
-      		label=10,
+      		label=9,
       		pin=true,
-      		pos="1,10!",
+      		pos="1,9!",
       		shape=pentagon,
       		style=filled,
       		width=0.5];
-      	6 -> 10	 [arrowhead=none,
+      	7 -> 9	 [arrowhead=none,
+      		penwidth=2.0];
+      	11	 [fillcolor="#9999FF",
+      		fixedsize=true,
+      		group=default,
+      		height=0.5,
+      		label=11,
+      		pin=true,
+      		pos="1,11!",
+      		shape=pentagon,
+      		style=filled,
+      		width=0.5];
+      	7 -> 11	 [arrowhead=none,
       		penwidth=2.0];
       }
 #endif
@@ -803,12 +802,12 @@
   adding manifests
   adding file changes
   added 3 changesets with 3 changes to 1 files
-  5 new obsolescence markers
+  6 new obsolescence markers
 
 for simplicity sake we get the bathroom change in line again
 
   $ hg grab 10b8aeaa8cc8
-  rebasing 8:10b8aeaa8cc8 "bathroom stuff"
+  rebasing 9:10b8aeaa8cc8 "bathroom stuff"
   merging shopping
   ? files updated, 0 files merged, 0 files removed, 0 files unresolved (glob)
   $ hg phase --draft .
@@ -845,18 +844,6 @@
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	4	 [fillcolor="#9999FF",
-      		fixedsize=true,
-      		group=default,
-      		height=0.5,
-      		label=4,
-      		pin=true,
-      		pos="1,4!",
-      		shape=circle,
-      		style=filled,
-      		width=0.5];
-      	0 -> 4	 [arrowhead=none,
-      		penwidth=2.0];
       	5	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
@@ -867,7 +854,7 @@
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	4 -> 5	 [arrowhead=none,
+      	0 -> 5	 [arrowhead=none,
       		penwidth=2.0];
       	6	 [fillcolor="#9999FF",
       		fixedsize=true,
@@ -881,17 +868,17 @@
       		width=0.5];
       	5 -> 6	 [arrowhead=none,
       		penwidth=2.0];
-      	10	 [fillcolor="#9999FF",
+      	7	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
       		height=0.5,
-      		label=10,
+      		label=7,
       		pin=true,
-      		pos="1,10!",
+      		pos="1,7!",
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	6 -> 10	 [arrowhead=none,
+      	6 -> 7	 [arrowhead=none,
       		penwidth=2.0];
       	11	 [fillcolor="#9999FF",
       		fixedsize=true,
@@ -900,10 +887,22 @@
       		label=11,
       		pin=true,
       		pos="1,11!",
+      		shape=circle,
+      		style=filled,
+      		width=0.5];
+      	7 -> 11	 [arrowhead=none,
+      		penwidth=2.0];
+      	12	 [fillcolor="#9999FF",
+      		fixedsize=true,
+      		group=default,
+      		height=0.5,
+      		label=12,
+      		pin=true,
+      		pos="1,12!",
       		shape=pentagon,
       		style=filled,
       		width=0.5];
-      	10 -> 11	 [arrowhead=none,
+      	11 -> 12	 [arrowhead=none,
       		penwidth=2.0];
       }
 #endif
@@ -1013,7 +1012,6 @@
   adding file changes
   added 1 changesets with 1 changes to 1 files
   1 new obsolescence markers
-  new changesets 75954b8cd933
   (run 'hg update' to get a working copy)
   $ hg log -G
   o  75954b8cd933 (public): bathroom stuff
@@ -1069,7 +1067,6 @@
   adding file changes
   added 1 changesets with 1 changes to 1 files
   1 new obsolescence markers
-  new changesets 75954b8cd933
   (run 'hg update' to get a working copy)
   $ hg log -G
   o  75954b8cd933 (draft): bathroom stuff
@@ -1138,18 +1135,6 @@
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	4	 [fillcolor="#9999FF",
-      		fixedsize=true,
-      		group=default,
-      		height=0.5,
-      		label=4,
-      		pin=true,
-      		pos="1,4!",
-      		shape=circle,
-      		style=filled,
-      		width=0.5];
-      	0 -> 4	 [arrowhead=none,
-      		penwidth=2.0];
       	5	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
@@ -1160,7 +1145,7 @@
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	4 -> 5	 [arrowhead=none,
+      	0 -> 5	 [arrowhead=none,
       		penwidth=2.0];
       	6	 [fillcolor="#9999FF",
       		fixedsize=true,
@@ -1174,29 +1159,41 @@
       		width=0.5];
       	5 -> 6	 [arrowhead=none,
       		penwidth=2.0];
-      	10	 [fillcolor="#9999FF",
+      	7	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
       		height=0.5,
-      		label=10,
+      		label=7,
       		pin=true,
-      		pos="1,10!",
+      		pos="1,7!",
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	6 -> 10	 [arrowhead=none,
+      	6 -> 7	 [arrowhead=none,
       		penwidth=2.0];
-      	12	 [fillcolor="#9999FF",
+      	11	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
       		height=0.5,
-      		label=12,
+      		label=11,
       		pin=true,
-      		pos="1,12!",
+      		pos="1,11!",
+      		shape=circle,
+      		style=filled,
+      		width=0.5];
+      	7 -> 11	 [arrowhead=none,
+      		penwidth=2.0];
+      	14	 [fillcolor="#9999FF",
+      		fixedsize=true,
+      		group=default,
+      		height=0.5,
+      		label=14,
+      		pin=true,
+      		pos="1,14!",
       		shape=pentagon,
       		style=filled,
       		width=0.5];
-      	10 -> 12	 [arrowhead=none,
+      	11 -> 14	 [arrowhead=none,
       		penwidth=2.0];
       }
 #endif
@@ -1209,10 +1206,9 @@
   adding changesets
   adding manifests
   adding file changes
-  added 1 changesets with 1 changes to 1 files
-  new changesets bf1b0d202029
-  (run 'hg update' to get a working copy)
-  1 new orphan changesets
+  added 1 changesets with 1 changes to 1 files (+1 heads)
+  (run 'hg heads' to see heads, 'hg merge' to merge)
+  1 new unstable changesets
 
 
 The new changeset "animal" is based on an old changeset of "bathroom". You can
@@ -1255,18 +1251,6 @@
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	4	 [fillcolor="#9999FF",
-      		fixedsize=true,
-      		group=default,
-      		height=0.5,
-      		label=4,
-      		pin=true,
-      		pos="1,4!",
-      		shape=circle,
-      		style=filled,
-      		width=0.5];
-      	0 -> 4	 [arrowhead=none,
-      		penwidth=2.0];
       	5	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
@@ -1277,7 +1261,7 @@
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	4 -> 5	 [arrowhead=none,
+      	0 -> 5	 [arrowhead=none,
       		penwidth=2.0];
       	6	 [fillcolor="#9999FF",
       		fixedsize=true,
@@ -1291,57 +1275,69 @@
       		width=0.5];
       	5 -> 6	 [arrowhead=none,
       		penwidth=2.0];
-      	10	 [fillcolor="#9999FF",
+      	7	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
       		height=0.5,
-      		label=10,
+      		label=7,
       		pin=true,
-      		pos="1,10!",
+      		pos="1,7!",
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	6 -> 10	 [arrowhead=none,
+      	6 -> 7	 [arrowhead=none,
       		penwidth=2.0];
-      	11	 [fillcolor="#DFDFFF",
+      	11	 [fillcolor="#9999FF",
+      		fixedsize=true,
+      		group=default,
+      		height=0.5,
+      		label=11,
+      		pin=true,
+      		pos="1,11!",
+      		shape=circle,
+      		style=filled,
+      		width=0.5];
+      	7 -> 11	 [arrowhead=none,
+      		penwidth=2.0];
+      	12	 [fillcolor="#DFDFFF",
       		fixedsize=true,
       		group=default_alt,
       		height=0.5,
-      		label=11,
+      		label=12,
       		pin=true,
-      		pos="2,11!",
+      		pos="2,12!",
       		shape=pentagon,
       		style="dotted, filled",
       		width=0.5];
-      	10 -> 11	 [arrowhead=none,
+      	11 -> 12	 [arrowhead=none,
       		penwidth=2.0];
-      	12	 [fillcolor="#9999FF",
+      	14	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
       		height=0.5,
-      		label=12,
+      		label=14,
       		pin=true,
-      		pos="1,12!",
+      		pos="1,14!",
       		shape=pentagon,
       		style=filled,
       		width=0.5];
-      	10 -> 12	 [arrowhead=none,
+      	11 -> 14	 [arrowhead=none,
       		penwidth=2.0];
-      	11 -> 12	 [arrowhead=none,
+      	12 -> 14	 [arrowhead=none,
       		minlen=0,
       		penwidth=2.0,
       		style=dashed];
-      	13	 [fillcolor="#FF4F4F",
+      	15	 [fillcolor="#FF4F4F",
       		fixedsize=true,
       		group=default_alt,
       		height=0.5,
-      		label=13,
+      		label=15,
       		pin=true,
-      		pos="2,13!",
+      		pos="2,15!",
       		shape=pentagon,
       		style=filled,
       		width=0.5];
-      	11 -> 13	 [arrowhead=none,
+      	12 -> 15	 [arrowhead=none,
       		penwidth=2.0];
       }
 #endif
@@ -1357,7 +1353,7 @@
   $ hg push other
   pushing to $TESTTMP/other (glob)
   searching for changes
-  abort: push includes orphan changeset: bf1b0d202029!
+  abort: push includes unstable changeset: bf1b0d202029!
   (use 'hg evolve' to get a stable history or --force to ignore warnings)
   [255]
  
@@ -1368,15 +1364,15 @@
 It has a --dry-run option to only suggest the next move.
 
   $ hg evolve --dry-run
-  move:[13] animals
-  atop:[12] bathroom stuff
+  move:[15] animals
+  atop:[14] bathroom stuff
   hg rebase -r bf1b0d202029 -d a44c85f957d3
 
 Let's do it
 
   $ hg evolve
-  move:[13] animals
-  atop:[12] bathroom stuff
+  move:[15] animals
+  atop:[14] bathroom stuff
   merging shopping
   working directory is now at ee942144f952
 
@@ -1417,18 +1413,6 @@
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	4	 [fillcolor="#9999FF",
-      		fixedsize=true,
-      		group=default,
-      		height=0.5,
-      		label=4,
-      		pin=true,
-      		pos="1,4!",
-      		shape=circle,
-      		style=filled,
-      		width=0.5];
-      	0 -> 4	 [arrowhead=none,
-      		penwidth=2.0];
       	5	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
@@ -1439,7 +1423,7 @@
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	4 -> 5	 [arrowhead=none,
+      	0 -> 5	 [arrowhead=none,
       		penwidth=2.0];
       	6	 [fillcolor="#9999FF",
       		fixedsize=true,
@@ -1453,29 +1437,29 @@
       		width=0.5];
       	5 -> 6	 [arrowhead=none,
       		penwidth=2.0];
-      	10	 [fillcolor="#9999FF",
+      	7	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
       		height=0.5,
-      		label=10,
+      		label=7,
       		pin=true,
-      		pos="1,10!",
+      		pos="1,7!",
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	6 -> 10	 [arrowhead=none,
+      	6 -> 7	 [arrowhead=none,
       		penwidth=2.0];
-      	12	 [fillcolor="#9999FF",
+      	11	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
       		height=0.5,
-      		label=12,
+      		label=11,
       		pin=true,
-      		pos="1,12!",
-      		shape=pentagon,
+      		pos="1,11!",
+      		shape=circle,
       		style=filled,
       		width=0.5];
-      	10 -> 12	 [arrowhead=none,
+      	7 -> 11	 [arrowhead=none,
       		penwidth=2.0];
       	14	 [fillcolor="#9999FF",
       		fixedsize=true,
@@ -1487,7 +1471,19 @@
       		shape=pentagon,
       		style=filled,
       		width=0.5];
-      	12 -> 14	 [arrowhead=none,
+      	11 -> 14	 [arrowhead=none,
+      		penwidth=2.0];
+      	16	 [fillcolor="#9999FF",
+      		fixedsize=true,
+      		group=default,
+      		height=0.5,
+      		label=16,
+      		pin=true,
+      		pos="1,16!",
+      		shape=pentagon,
+      		style=filled,
+      		width=0.5];
+      	14 -> 16	 [arrowhead=none,
       		penwidth=2.0];
       }
 #endif
@@ -1501,7 +1497,7 @@
   adding manifests
   adding file changes
   added 2 changesets with 2 changes to 1 files (+1 heads)
-  2 new obsolescence markers
+  3 new obsolescence markers
   obsoleted 2 changesets
 
 Remote get a warning that current working directory is based on an obsolete
@@ -1544,7 +1540,6 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  new changesets 99f039c5ec9e
   (run 'hg update' to get a working copy)
   $ hg log -G
   o  99f039c5ec9e (draft): SPAM SPAM SPAM
@@ -1583,18 +1578,6 @@
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	4	 [fillcolor="#9999FF",
-      		fixedsize=true,
-      		group=default,
-      		height=0.5,
-      		label=4,
-      		pin=true,
-      		pos="1,4!",
-      		shape=circle,
-      		style=filled,
-      		width=0.5];
-      	0 -> 4	 [arrowhead=none,
-      		penwidth=2.0];
       	5	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
@@ -1605,7 +1588,7 @@
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	4 -> 5	 [arrowhead=none,
+      	0 -> 5	 [arrowhead=none,
       		penwidth=2.0];
       	6	 [fillcolor="#9999FF",
       		fixedsize=true,
@@ -1619,29 +1602,29 @@
       		width=0.5];
       	5 -> 6	 [arrowhead=none,
       		penwidth=2.0];
-      	10	 [fillcolor="#9999FF",
+      	7	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
       		height=0.5,
-      		label=10,
+      		label=7,
       		pin=true,
-      		pos="1,10!",
+      		pos="1,7!",
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	6 -> 10	 [arrowhead=none,
+      	6 -> 7	 [arrowhead=none,
       		penwidth=2.0];
-      	12	 [fillcolor="#9999FF",
+      	11	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
       		height=0.5,
-      		label=12,
+      		label=11,
       		pin=true,
-      		pos="1,12!",
-      		shape=pentagon,
+      		pos="1,11!",
+      		shape=circle,
       		style=filled,
       		width=0.5];
-      	10 -> 12	 [arrowhead=none,
+      	7 -> 11	 [arrowhead=none,
       		penwidth=2.0];
       	14	 [fillcolor="#9999FF",
       		fixedsize=true,
@@ -1653,19 +1636,31 @@
       		shape=pentagon,
       		style=filled,
       		width=0.5];
-      	12 -> 14	 [arrowhead=none,
+      	11 -> 14	 [arrowhead=none,
       		penwidth=2.0];
-      	15	 [fillcolor="#9999FF",
+      	16	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
       		height=0.5,
-      		label=15,
+      		label=16,
       		pin=true,
-      		pos="1,15!",
+      		pos="1,16!",
       		shape=pentagon,
       		style=filled,
       		width=0.5];
-      	14 -> 15	 [arrowhead=none,
+      	14 -> 16	 [arrowhead=none,
+      		penwidth=2.0];
+      	17	 [fillcolor="#9999FF",
+      		fixedsize=true,
+      		group=default,
+      		height=0.5,
+      		label=17,
+      		pin=true,
+      		pos="1,17!",
+      		shape=pentagon,
+      		style=filled,
+      		width=0.5];
+      	16 -> 17	 [arrowhead=none,
       		penwidth=2.0];
       }
 #endif
@@ -1676,7 +1671,7 @@
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   working directory now at a44c85f957d3
   1 changesets pruned
-  1 new orphan changesets
+  1 new unstable changesets
 
 
 The animals changeset is still displayed because the "SPAM SPAM SPAM" changeset
@@ -1719,18 +1714,6 @@
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	4	 [fillcolor="#9999FF",
-      		fixedsize=true,
-      		group=default,
-      		height=0.5,
-      		label=4,
-      		pin=true,
-      		pos="1,4!",
-      		shape=circle,
-      		style=filled,
-      		width=0.5];
-      	0 -> 4	 [arrowhead=none,
-      		penwidth=2.0];
       	5	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
@@ -1741,7 +1724,7 @@
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	4 -> 5	 [arrowhead=none,
+      	0 -> 5	 [arrowhead=none,
       		penwidth=2.0];
       	6	 [fillcolor="#9999FF",
       		fixedsize=true,
@@ -1755,53 +1738,65 @@
       		width=0.5];
       	5 -> 6	 [arrowhead=none,
       		penwidth=2.0];
-      	10	 [fillcolor="#9999FF",
+      	7	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
       		height=0.5,
-      		label=10,
+      		label=7,
       		pin=true,
-      		pos="1,10!",
+      		pos="1,7!",
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	6 -> 10	 [arrowhead=none,
+      	6 -> 7	 [arrowhead=none,
       		penwidth=2.0];
-      	12	 [fillcolor="#9999FF",
+      	11	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
       		height=0.5,
-      		label=12,
+      		label=11,
       		pin=true,
-      		pos="1,12!",
+      		pos="1,11!",
+      		shape=circle,
+      		style=filled,
+      		width=0.5];
+      	7 -> 11	 [arrowhead=none,
+      		penwidth=2.0];
+      	14	 [fillcolor="#9999FF",
+      		fixedsize=true,
+      		group=default,
+      		height=0.5,
+      		label=14,
+      		pin=true,
+      		pos="1,14!",
       		shape=pentagon,
       		style=filled,
       		width=0.5];
-      	10 -> 12	 [arrowhead=none,
+      	11 -> 14	 [arrowhead=none,
       		penwidth=2.0];
-      	14	 [fillcolor="#DFDFFF",
+      	16	 [fillcolor="#DFDFFF",
       		fixedsize=true,
       		group=default_alt,
       		height=0.5,
-      		label=14,
+      		label=16,
       		pin=true,
-      		pos="2,14!",
+      		pos="2,16!",
       		shape=pentagon,
       		style="dotted, filled",
       		width=0.5];
-      	12 -> 14	 [arrowhead=none,
+      	14 -> 16	 [arrowhead=none,
       		penwidth=2.0];
-      	15	 [fillcolor="#FF4F4F",
+      	17	 [fillcolor="#FF4F4F",
       		fixedsize=true,
       		group=default_alt,
       		height=0.5,
-      		label=15,
+      		label=17,
       		pin=true,
-      		pos="2,15!",
+      		pos="2,17!",
       		shape=pentagon,
       		style=filled,
       		width=0.5];
-      	14 -> 15	 [arrowhead=none,
+      	16 -> 17	 [arrowhead=none,
       		penwidth=2.0];
       }
 #endif
@@ -1818,13 +1813,13 @@
       		splines=polyline
       	];
       	node [label="\N"];
-      	15	 [fillcolor="#FF4F4F",
+      	17	 [fillcolor="#FF4F4F",
       		fixedsize=true,
       		group=default_alt,
       		height=0.5,
-      		label=15,
+      		label=17,
       		pin=true,
-      		pos="1,15!",
+      		pos="1,17!",
       		shape=pentagon,
       		style=filled,
       		width=0.5];
@@ -1832,8 +1827,8 @@
 #endif
 
   $ hg evolve
-  move:[15] SPAM SPAM SPAM
-  atop:[12] bathroom stuff
+  move:[17] SPAM SPAM SPAM
+  atop:[14] bathroom stuff
   merging shopping
   working directory is now at 40aa40daeefb
 
@@ -1872,18 +1867,6 @@
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	4	 [fillcolor="#9999FF",
-      		fixedsize=true,
-      		group=default,
-      		height=0.5,
-      		label=4,
-      		pin=true,
-      		pos="1,4!",
-      		shape=circle,
-      		style=filled,
-      		width=0.5];
-      	0 -> 4	 [arrowhead=none,
-      		penwidth=2.0];
       	5	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
@@ -1894,7 +1877,7 @@
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	4 -> 5	 [arrowhead=none,
+      	0 -> 5	 [arrowhead=none,
       		penwidth=2.0];
       	6	 [fillcolor="#9999FF",
       		fixedsize=true,
@@ -1908,41 +1891,53 @@
       		width=0.5];
       	5 -> 6	 [arrowhead=none,
       		penwidth=2.0];
-      	10	 [fillcolor="#9999FF",
+      	7	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
       		height=0.5,
-      		label=10,
+      		label=7,
       		pin=true,
-      		pos="1,10!",
+      		pos="1,7!",
       		shape=circle,
       		style=filled,
       		width=0.5];
-      	6 -> 10	 [arrowhead=none,
+      	6 -> 7	 [arrowhead=none,
       		penwidth=2.0];
-      	12	 [fillcolor="#9999FF",
+      	11	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
       		height=0.5,
-      		label=12,
+      		label=11,
       		pin=true,
-      		pos="1,12!",
+      		pos="1,11!",
+      		shape=circle,
+      		style=filled,
+      		width=0.5];
+      	7 -> 11	 [arrowhead=none,
+      		penwidth=2.0];
+      	14	 [fillcolor="#9999FF",
+      		fixedsize=true,
+      		group=default,
+      		height=0.5,
+      		label=14,
+      		pin=true,
+      		pos="1,14!",
       		shape=pentagon,
       		style=filled,
       		width=0.5];
-      	10 -> 12	 [arrowhead=none,
+      	11 -> 14	 [arrowhead=none,
       		penwidth=2.0];
-      	16	 [fillcolor="#9999FF",
+      	18	 [fillcolor="#9999FF",
       		fixedsize=true,
       		group=default,
       		height=0.5,
-      		label=16,
+      		label=18,
       		pin=true,
-      		pos="1,16!",
+      		pos="1,18!",
       		shape=pentagon,
       		style=filled,
       		width=0.5];
-      	12 -> 16	 [arrowhead=none,
+      	14 -> 18	 [arrowhead=none,
       		penwidth=2.0];
       }
 #endif
--- a/tests/test-uncommit-interactive.t
+++ b/tests/test-uncommit-interactive.t
@@ -302,7 +302,7 @@
 
   $ hg amend
   $ glog
-  @  6:905eb2a23ea2@default(draft) another one
+  @  7:905eb2a23ea2@default(draft) another one
   |
   o  0:7733902a8d94@default(draft) The base commit
   
@@ -445,9 +445,9 @@
   undeleting a
 
   $ glog
-  @  10:42cc15efbec2@default(draft) Added foo
+  @  12:42cc15efbec2@default(draft) Added foo
   |
-  o  6:905eb2a23ea2@default(draft) another one
+  o  7:905eb2a23ea2@default(draft) another one
   |
   o  0:7733902a8d94@default(draft) The base commit
   
@@ -517,11 +517,11 @@
 =====================================================
 
   $ glog
-  @  16:25a080d13cb2@default(draft) Added x
+  @  18:25a080d13cb2@default(draft) Added x
   |
-  o  10:42cc15efbec2@default(draft) Added foo
+  o  12:42cc15efbec2@default(draft) Added foo
   |
-  o  6:905eb2a23ea2@default(draft) another one
+  o  7:905eb2a23ea2@default(draft) another one
   |
   o  0:7733902a8d94@default(draft) The base commit
   
@@ -597,7 +597,7 @@
   
   patching file a
   Hunk #1 succeeded at 1 with fuzz 1 (offset -1 lines).
-  2 new orphan changesets
+  2 new unstable changesets
 
   $ hg diff
   diff -r 676366511f95 a
--- a/tests/test-uncommit.t
+++ b/tests/test-uncommit.t
@@ -244,7 +244,7 @@
   (use 'hg evolve' to update to its successor: e8db4aa611f6)
   $ hg --config extensions.purge= purge
   $ hg uncommit -I 'set:added() and e'
-  2 new content-divergent changesets
+  2 new divergent changesets
   $ hg st --copies
   A e
   $ hg st --copies --change .
@@ -290,7 +290,7 @@
   (5eb72dbe0cb4 has diverged, use 'hg evolve --list --contentdivergent' to resolve the issue)
   $ hg --config extensions.purge= purge
   $ hg uncommit --all -X e
-  1 new content-divergent changesets
+  1 new divergent changesets
   $ hg st --copies
   M b
   M d
@@ -337,7 +337,7 @@
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   [8] touncommit
   $ hg uncommit aa
-  1 new orphan changesets
+  1 new unstable changesets
 
 Test uncommiting agains a different base
 
--- a/tests/test-unstable.t
+++ b/tests/test-unstable.t
@@ -42,7 +42,7 @@
   $ hg up "desc(_b)"
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ hg amend -m "bprime"
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg log -G
   @  3:36050226a9b9@default(draft) bprime
   |
@@ -86,7 +86,7 @@
   $ hg up "desc(_a)"
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ hg amend -m "aprime"
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg log -G
   @  4:47127ea62e5f@default(draft) aprime
   |
@@ -134,7 +134,7 @@
   $ hg up "desc(_a)"
   0 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ hg amend -m "aprime"
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg up "desc(_c)"
   1 files updated, 0 files merged, 1 files removed, 0 files unresolved
   $ hg amend -m "cprime"
@@ -185,7 +185,7 @@
   created new head
   $ hg prune "desc(_b)" -s "desc(bprimesplit1) + desc(bprimesplit2)" --split
   1 changesets pruned
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg log -G
   @  4:2a4ccc0bb20c@default(draft) add bprimesplit2
   |
@@ -230,14 +230,14 @@
   created new head
   $ hg prune "desc(_b)" -s "desc(bprimesplit1) + desc(bprimesplit2)" --split
   1 changesets pruned
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg up "desc(_a)"
   0 files updated, 0 files merged, 2 files removed, 0 files unresolved
   $ mkcommits bsecondsplit1 bsecondsplit2
   created new head
   $ hg prune "desc(bprimesplit1)" -s "desc(bsecondsplit2)"
   1 changesets pruned
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg prune "desc(bprimesplit2)" -s "desc(bsecondsplit1)"
   1 changesets pruned
   $ hg log -G
@@ -288,7 +288,7 @@
   created new head
   $ hg prune "desc(_b)" -s "desc(bprimesplit1) + desc(bprimesplit2)" --split
   1 changesets pruned
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg log -G
   @  4:3c69ea6aa93e@default(draft) add bprimesplit2
   |
--- a/tests/test-userguide.t
+++ b/tests/test-userguide.t
@@ -42,8 +42,10 @@
   (use --hidden to access hidden revisions; successor: 934359450037)
   [255]
   $ hg --hidden shortlog -G
-  @  2:934359450037  draft  implement feature Y
+  @  3:934359450037  draft  implement feature Y
   |
+  | x  2:6c5f78d5d467  draft  temporary amend commit for fe0ecd3bd2a4
+  | |
   | x  1:fe0ecd3bd2a4  draft  implement feature Y
   |/
   o  0:08c4b6f4efc8  draft  init
@@ -52,8 +54,10 @@
   $ hg rollback -q
   $ hg amend -u alice -d '2 0' -m 'implement feature Y'
   $ hg --hidden shortlog -G
-  @  2:934359450037  draft  implement feature Y
+  @  3:934359450037  draft  implement feature Y
   |
+  | x  2:6c5f78d5d467  draft  temporary amend commit for fe0ecd3bd2a4
+  | |
   | x  1:fe0ecd3bd2a4  draft  implement feature Y
   |/
   o  0:08c4b6f4efc8  draft  init
@@ -66,11 +70,11 @@
   working directory now at 934359450037
   1 changesets pruned
   $ hg parents --template '{rev}:{node|short}  {desc|firstline}\n'
-  2:934359450037  implement feature Y
+  3:934359450037  implement feature Y
   $ hg --hidden shortlog -G -r 934359450037:
-  x  3:a3e0ef24aaf0  draft  debug hack
+  x  4:a3e0ef24aaf0  draft  debug hack
   |
-  @  2:934359450037  draft  implement feature Y
+  @  3:934359450037  draft  implement feature Y
   |
   ~
 
@@ -82,15 +86,15 @@
   $ hg status
   M file2.c
   $ hg --hidden shortlog -G -r 'descendants(934359450037) - a3e0ef24aaf0'
-  @  5:c8defeecf7a4  draft  fix bug 234
+  @  6:c8defeecf7a4  draft  fix bug 234
   |
-  | x  4:da4331967f5f  draft  fix bug 234
+  | x  5:da4331967f5f  draft  fix bug 234
   |/
-  o  2:934359450037  draft  implement feature Y
+  o  3:934359450037  draft  implement feature Y
   |
   ~
   $ hg parents --template '{rev}:{node|short}  {desc|firstline}\n{files}\n'
-  5:c8defeecf7a4  fix bug 234
+  6:c8defeecf7a4  fix bug 234
   file1.c
   $ hg revert --no-backup file2.c
 
@@ -102,30 +106,30 @@
   $ echo step3 >> file2.c
   $ hg commit -m 'step 3'
   $ hg log --template '{rev}:{node|short}  {desc|firstline}\n' -r 05e61aab8294::
-  6:05e61aab8294  step 1
-  7:be6d5bc8e4cc  step 2
-  8:35f432d9f7c1  step 3
+  7:05e61aab8294  step 1
+  8:be6d5bc8e4cc  step 2
+  9:35f432d9f7c1  step 3
   $ hg fold -d '0 0' -m 'fix bug 64' --from -r 05e61aab8294::
   3 changesets folded
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg --hidden shortlog -G -r c8defeecf7a4::
-  @  9:171c6a79a27b  draft  fix bug 64
+  @  10:171c6a79a27b  draft  fix bug 64
   |
-  | x  8:35f432d9f7c1  draft  step 3
+  | x  9:35f432d9f7c1  draft  step 3
   | |
-  | x  7:be6d5bc8e4cc  draft  step 2
+  | x  8:be6d5bc8e4cc  draft  step 2
   | |
-  | x  6:05e61aab8294  draft  step 1
+  | x  7:05e61aab8294  draft  step 1
   |/
-  o  5:c8defeecf7a4  draft  fix bug 234
+  o  6:c8defeecf7a4  draft  fix bug 234
   |
   ~
   $ hg --hidden log -q -r 'successors(05e61aab8294) | successors(be6d5bc8e4cc) | successors(35f432d9f7c1)'
-  9:171c6a79a27b
+  10:171c6a79a27b
   $ hg --hidden log -q -r 'precursors(171c6a79a27b)'
-  6:05e61aab8294
-  7:be6d5bc8e4cc
-  8:35f432d9f7c1
+  7:05e61aab8294
+  8:be6d5bc8e4cc
+  9:35f432d9f7c1
   $ hg diff -c 171c6a79a27b -U 0
   diff -r c8defeecf7a4 -r 171c6a79a27b file1.c
   --- a/file1.c	Thu Jan 01 00:00:10 1970 +0000
@@ -147,13 +151,13 @@
   $ echo 'new feature' >> file1.c
   $ hg commit -u bob -d '5 0' -m 'feature 23'
   $ hg --hidden shortlog -G -r 171c6a79a27b::
-  @  12:dadcbba2d606  draft  feature 23
+  @  13:dadcbba2d606  draft  feature 23
   |
-  o  11:debd46bb29dc  draft  cleanup
+  o  12:debd46bb29dc  draft  cleanup
   |
-  o  10:3e1cb8f70c02  draft  fix bug 17
+  o  11:3e1cb8f70c02  draft  fix bug 17
   |
-  o  9:171c6a79a27b  draft  fix bug 64
+  o  10:171c6a79a27b  draft  fix bug 64
   |
   ~
 
@@ -161,33 +165,35 @@
   $ hg update -q -r 3e1cb8f70c02
   $ echo 'fix fix fix fix' > file2.c
   $ hg amend -u bob -d '6 0'
-  2 new orphan changesets
+  2 new unstable changesets
   $ hg shortlog -r 'obsolete()'
-  10:3e1cb8f70c02  draft  fix bug 17
+  11:3e1cb8f70c02  draft  fix bug 17
   $ hg shortlog -r "orphan()"
-  11:debd46bb29dc  draft  cleanup
-  12:dadcbba2d606  draft  feature 23
+  12:debd46bb29dc  draft  cleanup
+  13:dadcbba2d606  draft  feature 23
   $ hg --hidden shortlog -G -r 171c6a79a27b::
-  @  13:395cbeda3a06  draft  fix bug 17
+  @  15:395cbeda3a06  draft  fix bug 17
   |
-  | o  12:dadcbba2d606  draft  feature 23
+  | x  14:f7fab707e247  draft  temporary amend commit for 3e1cb8f70c02
   | |
-  | o  11:debd46bb29dc  draft  cleanup
-  | |
-  | x  10:3e1cb8f70c02  draft  fix bug 17
+  | | o  13:dadcbba2d606  draft  feature 23
+  | | |
+  | | o  12:debd46bb29dc  draft  cleanup
+  | |/
+  | x  11:3e1cb8f70c02  draft  fix bug 17
   |/
-  o  9:171c6a79a27b  draft  fix bug 64
+  o  10:171c6a79a27b  draft  fix bug 64
   |
   ~
   $ hg evolve -q --all
   $ hg shortlog -G -r 171c6a79a27b::
-  @  15:91b4b0f8b5c5  draft  feature 23
+  @  17:91b4b0f8b5c5  draft  feature 23
   |
-  o  14:fe8858bd9bc2  draft  cleanup
+  o  16:fe8858bd9bc2  draft  cleanup
   |
-  o  13:395cbeda3a06  draft  fix bug 17
+  o  15:395cbeda3a06  draft  fix bug 17
   |
-  o  9:171c6a79a27b  draft  fix bug 64
+  o  10:171c6a79a27b  draft  fix bug 64
   |
   ~
 
@@ -199,35 +205,35 @@
   $ echo 'more useful' >> file1.c
   $ hg commit -u carl -d '9 0' -m 'more work'
   $ hg shortlog -G -r 91b4b0f8b5c5::
-  @  18:ea8fafca914b  draft  more work
+  @  20:ea8fafca914b  draft  more work
   |
-  o  17:b23d06b457a8  draft  debug hack
+  o  19:b23d06b457a8  draft  debug hack
   |
-  o  16:1f33e68b18b9  draft  useful work
+  o  18:1f33e68b18b9  draft  useful work
   |
-  o  15:91b4b0f8b5c5  draft  feature 23
+  o  17:91b4b0f8b5c5  draft  feature 23
   |
   ~
 
 example 8: prune an older changeset (figures 8, 9)
   $ hg prune b23d06b457a8
   1 changesets pruned
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg --hidden shortlog -G -r b23d06b457a8::
-  @  18:ea8fafca914b  draft  more work
+  @  20:ea8fafca914b  draft  more work
   |
-  x  17:b23d06b457a8  draft  debug hack
+  x  19:b23d06b457a8  draft  debug hack
   |
   ~
   $ hg evolve -q --all --any
   $ hg --hidden shortlog -G -r 1f33e68b18b9::
-  @  19:4393e5877437  draft  more work
+  @  21:4393e5877437  draft  more work
   |
-  | x  18:ea8fafca914b  draft  more work
+  | x  20:ea8fafca914b  draft  more work
   | |
-  | x  17:b23d06b457a8  draft  debug hack
+  | x  19:b23d06b457a8  draft  debug hack
   |/
-  o  16:1f33e68b18b9  draft  useful work
+  o  18:1f33e68b18b9  draft  useful work
   |
   ~
 
@@ -241,32 +247,32 @@
   $ hg update -r f84357446753
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg shortlog -G -r 4393e5877437::
-  o  21:4db2428c8ae3  draft  fix bug 67
+  o  23:4db2428c8ae3  draft  fix bug 67
   |
-  @  20:f84357446753  draft  fix bug 53
+  @  22:f84357446753  draft  fix bug 53
   |
-  o  19:4393e5877437  draft  more work
+  o  21:4393e5877437  draft  more work
   |
   ~
   $ hg uncommit file2.c
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg status
   M file2.c
   $ hg revert file2.c
   $ hg evolve --all --any
-  move:[21] fix bug 67
-  atop:[22] fix bug 53
+  move:[23] fix bug 67
+  atop:[24] fix bug 53
   working directory is now at 0d972d6888e6
   $ hg --hidden shortlog -G -r 4393e5877437::
-  @  23:0d972d6888e6  draft  fix bug 67
+  @  25:0d972d6888e6  draft  fix bug 67
   |
-  o  22:71bb83d674c5  draft  fix bug 53
+  o  24:71bb83d674c5  draft  fix bug 53
   |
-  | x  21:4db2428c8ae3  draft  fix bug 67
+  | x  23:4db2428c8ae3  draft  fix bug 67
   | |
-  | x  20:f84357446753  draft  fix bug 53
+  | x  22:f84357446753  draft  fix bug 53
   |/
-  o  19:4393e5877437  draft  more work
+  o  21:4393e5877437  draft  more work
   |
   ~
   $ rm file2.c.orig
@@ -281,45 +287,45 @@
   $ hg update 5b31a1239ab9
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg --hidden shortlog -G -r 0d972d6888e6::
-  o  25:fbb3c6d50427  draft  new feature
+  o  27:fbb3c6d50427  draft  new feature
   |
-  @  24:5b31a1239ab9  draft  fix a bug
+  @  26:5b31a1239ab9  draft  fix a bug
   |
-  o  23:0d972d6888e6  draft  fix bug 67
+  o  25:0d972d6888e6  draft  fix bug 67
   |
   ~
   $ hg uncommit file2.c
-  1 new orphan changesets
+  1 new unstable changesets
   $ hg status
   M file2.c
   $ hg commit -m 'useful tweak'
   $ hg --hidden shortlog -G -r 0d972d6888e6::
-  @  27:51e0d8c0a922  draft  useful tweak
+  @  29:51e0d8c0a922  draft  useful tweak
   |
-  o  26:2594e98553a9  draft  fix a bug
+  o  28:2594e98553a9  draft  fix a bug
   |
-  | o  25:fbb3c6d50427  draft  new feature
+  | o  27:fbb3c6d50427  draft  new feature
   | |
-  | x  24:5b31a1239ab9  draft  fix a bug
+  | x  26:5b31a1239ab9  draft  fix a bug
   |/
-  o  23:0d972d6888e6  draft  fix bug 67
+  o  25:0d972d6888e6  draft  fix bug 67
   |
   ~
   $ hg evolve --all --any
-  move:[25] new feature
-  atop:[26] fix a bug
+  move:[27] new feature
+  atop:[28] fix a bug
   working directory is now at 166c1c368ab6
   $ hg --hidden shortlog -G -r 0d972d6888e6::
-  @  28:166c1c368ab6  draft  new feature
+  @  30:166c1c368ab6  draft  new feature
   |
-  | o  27:51e0d8c0a922  draft  useful tweak
+  | o  29:51e0d8c0a922  draft  useful tweak
   |/
-  o  26:2594e98553a9  draft  fix a bug
+  o  28:2594e98553a9  draft  fix a bug
   |
-  | x  25:fbb3c6d50427  draft  new feature
+  | x  27:fbb3c6d50427  draft  new feature
   | |
-  | x  24:5b31a1239ab9  draft  fix a bug
+  | x  26:5b31a1239ab9  draft  fix a bug
   |/
-  o  23:0d972d6888e6  draft  fix bug 67
+  o  25:0d972d6888e6  draft  fix bug 67
   |
   ~
--- a/tests/test-wireproto-bundle1.t
+++ b/tests/test-wireproto-bundle1.t
@@ -50,7 +50,6 @@
   adding manifests
   adding file changes
   added 2 changesets with 2 changes to 2 files
-  new changesets 8685c6d34325:4957bfdac07e
   (run 'hg update' to get a working copy)
   $ hg push -R ../other
   pushing to ssh://user@dummy/server
@@ -70,7 +69,7 @@
   remote: adding manifests
   remote: adding file changes
   remote: added 1 changesets with 1 changes to 1 files (+1 heads)
-  remote: 1 new obsolescence markers
+  remote: 2 new obsolescence markers
   remote: obsoleted 1 changesets
   $ hg push
   pushing to ssh://user@dummy/server
@@ -88,9 +87,8 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to [12] files \(\+1 heads\) (re)
-  1 new obsolescence markers
+  2 new obsolescence markers
   obsoleted 1 changesets
-  new changesets 9d1c114e7797
   (run 'hg heads' to see heads)
   $ hg -R ../other pull
   pulling from ssh://user@dummy/server
--- a/tests/test-wireproto.t
+++ b/tests/test-wireproto.t
@@ -53,7 +53,6 @@
   adding manifests
   adding file changes
   added 2 changesets with 2 changes to 2 files
-  new changesets 8685c6d34325:4957bfdac07e
   (run 'hg update' to get a working copy)
   $ hg push -R ../other
   pushing to ssh://user@dummy/server
@@ -73,8 +72,8 @@
   remote: adding manifests
   remote: adding file changes
   remote: added 1 changesets with 1 changes to 1 files (+1 heads)
-  remote: obsmarker-exchange: 92 bytes received
-  remote: 1 new obsolescence markers
+  remote: obsmarker-exchange: 151 bytes received
+  remote: 2 new obsolescence markers
   remote: obsoleted 1 changesets
   $ hg push
   pushing to ssh://user@dummy/server
@@ -92,10 +91,9 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to [12] files \(\+1 heads\) (re)
-  obsmarker-exchange: 92 bytes received
-  1 new obsolescence markers
+  obsmarker-exchange: 151 bytes received
+  2 new obsolescence markers
   obsoleted 1 changesets
-  new changesets 9d1c114e7797
   (run 'hg heads' to see heads)
   $ hg -R ../other pull
   pulling from ssh://user@dummy/server
@@ -117,8 +115,8 @@
   remote: adding manifests
   remote: adding file changes
   remote: added 1 changesets with 1 changes to 1 files
-  remote: obsmarker-exchange: 92 bytes received
-  remote: 1 new obsolescence markers
+  remote: obsmarker-exchange: 151 bytes received
+  remote: 2 new obsolescence markers
   $ hg -R ../other pull
   pulling from ssh://user@dummy/server
   searching for changes
@@ -126,9 +124,8 @@
   adding manifests
   adding file changes
   added 1 changesets with 1 changes to 1 files
-  obsmarker-exchange: 92 bytes received
-  1 new obsolescence markers
-  new changesets a5687ec59dd4
+  obsmarker-exchange: 151 bytes received
+  2 new obsolescence markers
   (run 'hg update' to get a working copy)
 
 some common hidden
@@ -141,7 +138,7 @@
   remote: adding manifests
   remote: adding file changes
   remote: added 1 changesets with 0 changes to 1 files (+1 heads)
-  remote: obsmarker-exchange: 167 bytes received
+  remote: obsmarker-exchange: 226 bytes received
   remote: 1 new obsolescence markers
   remote: obsoleted 1 changesets
   $ hg -R ../other pull
@@ -151,10 +148,9 @@
   adding manifests
   adding file changes
   added 1 changesets with 0 changes to 1 files (+1 heads)
-  obsmarker-exchange: 167 bytes received
+  obsmarker-exchange: 226 bytes received
   1 new obsolescence markers
   obsoleted 1 changesets
-  new changesets * (glob)
   (run 'hg heads' to see heads)
 
 test discovery avoid exchanging known markers
@@ -177,7 +173,7 @@
   (skipping discovery of obsolescence markers, will exchange everything)
   (controled by 'experimental.evolution.obsdiscovery' configuration)
   no changes found
-  remote: obsmarker-exchange: 258 bytes received
+  remote: obsmarker-exchange: 376 bytes received
   [1]
   $ hg -R ../other pull --config experimental.evolution.obsdiscovery=no
   pulling from ssh://user@dummy/server
@@ -185,6 +181,6 @@
   no changes found
   (skipping discovery of obsolescence markers, will exchange everything)
   (controled by 'experimental.evolution.obsdiscovery' configuration)
-  obsmarker-exchange: 258 bytes received
+  obsmarker-exchange: 376 bytes received
 
   $ cd ..